USB_Descriptor_Device_t PROGMEM DeviceDescriptor =\r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Device_t), .Type = DTYPE_Device},\r
- \r
+ \r
.USBSpecification = VERSION_BCD(01.10),\r
.Class = 0xEF,\r
.SubClass = 0x02,\r
.Protocol = 0x01,\r
- \r
+ \r
.Endpoint0Size = FIXED_CONTROL_ENDPOINT_SIZE,\r
- \r
+ \r
.VendorID = 0x03EB,\r
.ProductID = 0x204E,\r
.ReleaseNumber = 0x0000,\r
- \r
+ \r
.ManufacturerStrIndex = 0x01,\r
.ProductStrIndex = 0x02,\r
.SerialNumStrIndex = NO_DESCRIPTOR,\r
- \r
+ \r
.NumberOfConfigurations = 1\r
};\r
\r
\r
.TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
.TotalInterfaces = 4,\r
- \r
+ \r
.ConfigurationNumber = 1,\r
.ConfigurationStrIndex = NO_DESCRIPTOR,\r
- \r
+ \r
.ConfigAttributes = (USB_CONFIG_ATTR_BUSPOWERED | USB_CONFIG_ATTR_SELFPOWERED),\r
\r
.MaxPowerConsumption = USB_CONFIG_POWER_MA(100)\r
.AlternateSetting = 0,\r
\r
.TotalEndpoints = 1,\r
- \r
+ \r
.Class = 0x02,\r
.SubClass = 0x02,\r
.Protocol = 0x01,\r
- \r
+ \r
.InterfaceStrIndex = NO_DESCRIPTOR\r
},\r
\r
.CDC1_ManagementEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
- \r
+ \r
.EndpointAddress = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC1_NOTIFICATION_EPNUM),\r
.Attributes = EP_TYPE_INTERRUPT,\r
.EndpointSize = CDC_NOTIFICATION_EPSIZE,\r
.AlternateSetting = 0,\r
\r
.TotalEndpoints = 2,\r
- \r
+ \r
.Class = 0x0A,\r
.SubClass = 0x00,\r
.Protocol = 0x00,\r
- \r
+ \r
.InterfaceStrIndex = NO_DESCRIPTOR\r
},\r
\r
.CDC1_DataOutEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
- \r
+ \r
.EndpointAddress = (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC1_RX_EPNUM),\r
.Attributes = EP_TYPE_BULK,\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
.CDC1_DataInEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
- \r
+ \r
.EndpointAddress = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC1_TX_EPNUM),\r
.Attributes = EP_TYPE_BULK,\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
.AlternateSetting = 0,\r
\r
.TotalEndpoints = 1,\r
- \r
+ \r
.Class = 0x02,\r
.SubClass = 0x02,\r
.Protocol = 0x01,\r
- \r
+ \r
.InterfaceStrIndex = NO_DESCRIPTOR\r
},\r
\r
.CDC2_ManagementEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
- \r
+ \r
.EndpointAddress = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC2_NOTIFICATION_EPNUM),\r
.Attributes = EP_TYPE_INTERRUPT,\r
.EndpointSize = CDC_NOTIFICATION_EPSIZE,\r
.CDC2_DataOutEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
- \r
+ \r
.EndpointAddress = (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC2_RX_EPNUM),\r
.Attributes = EP_TYPE_BULK,\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
.CDC2_DataInEndpoint = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
- \r
+ \r
.EndpointAddress = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC2_TX_EPNUM),\r
.Attributes = EP_TYPE_BULK,\r
.EndpointSize = CDC_TXRX_EPSIZE,\r
USB_Descriptor_String_t PROGMEM LanguageString =\r
{\r
.Header = {.Size = USB_STRING_LEN(1), .Type = DTYPE_String},\r
- \r
+\r
.UnicodeString = {LANGUAGE_ID_ENG}\r
};\r
\r
USB_Descriptor_String_t PROGMEM ManufacturerString =\r
{\r
.Header = {.Size = USB_STRING_LEN(11), .Type = DTYPE_String},\r
- \r
+\r
.UnicodeString = L"Dean Camera"\r
};\r
\r
USB_Descriptor_String_t PROGMEM ProductString =\r
{\r
.Header = {.Size = USB_STRING_LEN(13), .Type = DTYPE_String},\r
- \r
+\r
.UnicodeString = L"LUFA Dual CDC Demo"\r
};\r
\r
break;\r
}\r
\r
- *DescriptorAddress = Address; \r
+ *DescriptorAddress = Address;\r
return Size;\r
}\r