\r
#include "Descriptors.h"\r
\r
+#if defined(USB_CAN_BE_DEVICE)\r
+\r
/* On some devices, there is a factory set internal serial number which can be automatically sent to the host as\r
* the device's serial number when the Device Descriptor's .SerialNumStrIndex entry is set to USE_INTERNAL_SERIAL.\r
* This allows the host to track a device across insertions on different ports, allowing them to retain allocated\r
\r
.VendorID = 0x03EB,\r
.ProductID = 0x2063,\r
- .ReleaseNumber = 0x0000,\r
+ .ReleaseNumber = 0x0001,\r
\r
.ManufacturerStrIndex = 0x01,\r
.ProductStrIndex = 0x02,\r
.Header = {.Size = sizeof(USB_Descriptor_Configuration_Header_t), .Type = DTYPE_Configuration},\r
\r
.TotalConfigurationSize = sizeof(USB_Descriptor_Configuration_t),\r
- .TotalInterfaces = 3,\r
+ .TotalInterfaces = 1,\r
\r
.ConfigurationNumber = 1,\r
.ConfigurationStrIndex = NO_DESCRIPTOR,\r
\r
.MaxPowerConsumption = USB_CONFIG_POWER_MA(100)\r
},\r
- \r
- .CDC_IAD = \r
- {\r
- .Header = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},\r
-\r
- .FirstInterfaceIndex = 0,\r
- .TotalInterfaces = 2,\r
-\r
- .Class = 0x02,\r
- .SubClass = 0x02,\r
- .Protocol = 0x01,\r
-\r
- .IADStrIndex = NO_DESCRIPTOR\r
- },\r
-\r
- .CCI_Interface = \r
- {\r
- .Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
-\r
- .InterfaceNumber = 0,\r
- .AlternateSetting = 0,\r
- \r
- .TotalEndpoints = 1,\r
- \r
- .Class = 0x02,\r
- .SubClass = 0x02,\r
- .Protocol = 0x01,\r
- \r
- .InterfaceStrIndex = NO_DESCRIPTOR\r
- },\r
-\r
- .CDC_Functional_IntHeader = \r
- {\r
- .Header = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
- .SubType = 0x00,\r
- \r
- .Data = {0x01, 0x10}\r
- },\r
-\r
- .CDC_Functional_CallManagement = \r
- {\r
- .Header = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
- .SubType = 0x01,\r
- \r
- .Data = {0x03, 0x01}\r
- },\r
-\r
- .CDC_Functional_AbstractControlManagement = \r
- {\r
- .Header = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(1)), .Type = 0x24},\r
- .SubType = 0x02,\r
- \r
- .Data = {0x06}\r
- },\r
- \r
- .CDC_Functional_Union = \r
- {\r
- .Header = {.Size = sizeof(CDC_FUNCTIONAL_DESCRIPTOR(2)), .Type = 0x24},\r
- .SubType = 0x06,\r
- \r
- .Data = {0x00, 0x01}\r
- },\r
-\r
- .ManagementEndpoint = \r
- {\r
- .Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
- \r
- .EndpointAddress = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_NOTIFICATION_EPNUM),\r
- .Attributes = (EP_TYPE_INTERRUPT | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA),\r
- .EndpointSize = CDC_NOTIFICATION_EPSIZE,\r
- .PollingIntervalMS = 0xFF\r
- },\r
-\r
- .DCI_Interface = \r
- {\r
- .Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
-\r
- .InterfaceNumber = 1,\r
- .AlternateSetting = 0,\r
- \r
- .TotalEndpoints = 2,\r
- \r
- .Class = 0x0A,\r
- .SubClass = 0x00,\r
- .Protocol = 0x00,\r
- \r
- .InterfaceStrIndex = NO_DESCRIPTOR\r
- },\r
-\r
- .DataOutEndpoint = \r
- {\r
- .Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
- \r
- .EndpointAddress = (ENDPOINT_DESCRIPTOR_DIR_OUT | CDC_RX_EPNUM),\r
- .Attributes = (EP_TYPE_BULK | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA),\r
- .EndpointSize = CDC_TXRX_EPSIZE,\r
- .PollingIntervalMS = 0x00\r
- },\r
- \r
- .DataInEndpoint = \r
- {\r
- .Header = {.Size = sizeof(USB_Descriptor_Endpoint_t), .Type = DTYPE_Endpoint},\r
- \r
- .EndpointAddress = (ENDPOINT_DESCRIPTOR_DIR_IN | CDC_TX_EPNUM),\r
- .Attributes = (EP_TYPE_BULK | ENDPOINT_ATTR_NO_SYNC | ENDPOINT_USAGE_DATA),\r
- .EndpointSize = CDC_TXRX_EPSIZE,\r
- .PollingIntervalMS = 0x00\r
- },\r
\r
.MSInterface = \r
{\r
.Header = {.Size = sizeof(USB_Descriptor_Interface_t), .Type = DTYPE_Interface},\r
\r
- .InterfaceNumber = 2,\r
+ .InterfaceNumber = 0,\r
.AlternateSetting = 0,\r
\r
.TotalEndpoints = 2,\r
*DescriptorAddress = Address;\r
return Size;\r
}\r
+\r
+#endif\r