Replace CDC interface numbers with enums.
authorLászló Monda <laci@monda.hu>
Wed, 9 Oct 2013 22:32:35 +0000 (00:32 +0200)
committerLászló Monda <laci@monda.hu>
Wed, 9 Oct 2013 22:32:35 +0000 (00:32 +0200)
25 files changed:
Bootloaders/CDC/Descriptors.c
Bootloaders/HID/Descriptors.c
Bootloaders/Printer/Descriptors.h
Demos/Device/ClassDriver/DualVirtualSerial/Descriptors.c
Demos/Device/ClassDriver/Keyboard/Descriptors.h
Demos/Device/ClassDriver/Keyboard/Keyboard.c
Demos/Device/ClassDriver/KeyboardMouseMultiReport/Descriptors.c
Demos/Device/ClassDriver/KeyboardMouseMultiReport/KeyboardMouseMultiReport.c
Demos/Device/ClassDriver/RNDISEthernet/Descriptors.c
Demos/Device/ClassDriver/VirtualSerial/Descriptors.c
Demos/Device/ClassDriver/VirtualSerialMassStorage/Descriptors.c
Demos/Device/ClassDriver/VirtualSerialMouse/Descriptors.c
Demos/Device/LowLevel/DualVirtualSerial/Descriptors.c
Demos/Device/LowLevel/Joystick/Descriptors.c
Demos/Device/LowLevel/Keyboard/Descriptors.c
Demos/Device/LowLevel/KeyboardMouse/Descriptors.c
Demos/Device/LowLevel/Mouse/Descriptors.c
Demos/Device/LowLevel/RNDISEthernet/Descriptors.c
Demos/Device/LowLevel/VirtualSerial/Descriptors.c
Projects/Benito/Descriptors.c
Projects/LEDNotifier/Descriptors.c
Projects/SerialToLCD/Descriptors.c
Projects/USBtoSerial/Descriptors.c
Projects/Webserver/Descriptors.c
Projects/XPLAINBridge/USARTDescriptors.c

index 2b85b01..5bcc4e7 100644 (file)
@@ -123,8 +123,8 @@ const USB_Descriptor_Configuration_t ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = 0x06,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = 0x06,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index 6754d81..a243d8d 100644 (file)
@@ -48,12 +48,12 @@ const USB_Descriptor_HIDReport_Datatype_t HIDReport[] =
        HID_RI_USAGE_PAGE(16, 0xFFDC), /* Vendor Page 0xDC */
        HID_RI_USAGE(8, 0xFB), /* Vendor Usage 0xFB */
        HID_RI_COLLECTION(8, 0x01), /* Vendor Usage 1 */
        HID_RI_USAGE_PAGE(16, 0xFFDC), /* Vendor Page 0xDC */
        HID_RI_USAGE(8, 0xFB), /* Vendor Usage 0xFB */
        HID_RI_COLLECTION(8, 0x01), /* Vendor Usage 1 */
-           HID_RI_USAGE(8, 0x02), /* Vendor Usage 2 */
-           HID_RI_LOGICAL_MINIMUM(8, 0x00),
-           HID_RI_LOGICAL_MAXIMUM(8, 0xFF),
-           HID_RI_REPORT_SIZE(8, 0x08),
-           HID_RI_REPORT_COUNT(16, (sizeof(uint16_t) + SPM_PAGESIZE)),
-           HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+               HID_RI_USAGE(8, 0x02), /* Vendor Usage 2 */
+               HID_RI_LOGICAL_MINIMUM(8, 0x00),
+               HID_RI_LOGICAL_MAXIMUM(8, 0xFF),
+               HID_RI_REPORT_SIZE(8, 0x08),
+               HID_RI_REPORT_COUNT(16, (sizeof(uint16_t) + SPM_PAGESIZE)),
+               HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
        HID_RI_END_COLLECTION(0),
 };
 
        HID_RI_END_COLLECTION(0),
 };
 
index d5c9b71..24710bf 100644 (file)
@@ -72,7 +72,7 @@
                 */
                enum InterfaceDescriptors_t
                {
                 */
                enum InterfaceDescriptors_t
                {
-                       INTERFACE_ID_Printer      = 0, /**< Printer interface descriptor ID */
+                       INTERFACE_ID_Printer = 0, /**< Printer interface descriptor ID */
                };
 
                /** Enum for the device string descriptor IDs within the device. Each string descriptor should
                };
 
                /** Enum for the device string descriptor IDs within the device. Each string descriptor should
index 2452318..827b983 100644 (file)
@@ -91,7 +91,7 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
-                       .FirstInterfaceIndex    = 0,
+                       .FirstInterfaceIndex    = INTERFACE_ID_CDC1_CCI,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
@@ -138,8 +138,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC1_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC1_DCI,
                },
 
        .CDC1_ManagementEndpoint =
                },
 
        .CDC1_ManagementEndpoint =
@@ -192,7 +192,7 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
-                       .FirstInterfaceIndex    = 2,
+                       .FirstInterfaceIndex    = INTERFACE_ID_CDC2_CCI,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
@@ -239,8 +239,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 2,
-                       .SlaveInterfaceNumber   = 3,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC2_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC2_DCI,
                },
 
        .CDC2_ManagementEndpoint =
                },
 
        .CDC2_ManagementEndpoint =
index ce029bb..21c9e5d 100644 (file)
@@ -53,7 +53,7 @@
                        // Keyboard HID Interface
                        USB_Descriptor_Interface_t            HID_Interface;
                        USB_HID_Descriptor_HID_t              HID_KeyboardHID;
                        // Keyboard HID Interface
                        USB_Descriptor_Interface_t            HID_Interface;
                        USB_HID_Descriptor_HID_t              HID_KeyboardHID;
-               USB_Descriptor_Endpoint_t             HID_ReportINEndpoint;
+                       USB_Descriptor_Endpoint_t             HID_ReportINEndpoint;
                } USB_Descriptor_Configuration_t;
 
                /** Enum for the device interface descriptor IDs within the device. Each interface descriptor
                } USB_Descriptor_Configuration_t;
 
                /** Enum for the device interface descriptor IDs within the device. Each interface descriptor
index 68e3fbe..7acd0d6 100644 (file)
@@ -44,7 +44,7 @@ static uint8_t PrevKeyboardHIDReportBuffer[sizeof(USB_KeyboardReport_Data_t)];
  *  within a device can be differentiated from one another.
  */
 USB_ClassInfo_HID_Device_t Keyboard_HID_Interface =
  *  within a device can be differentiated from one another.
  */
 USB_ClassInfo_HID_Device_t Keyboard_HID_Interface =
-       {
+       {
                .Config =
                        {
                                .InterfaceNumber              = INTERFACE_ID_Keyboard,
                .Config =
                        {
                                .InterfaceNumber              = INTERFACE_ID_Keyboard,
@@ -57,7 +57,7 @@ USB_ClassInfo_HID_Device_t Keyboard_HID_Interface =
                                .PrevReportINBuffer           = PrevKeyboardHIDReportBuffer,
                                .PrevReportINBufferSize       = sizeof(PrevKeyboardHIDReportBuffer),
                        },
                                .PrevReportINBuffer           = PrevKeyboardHIDReportBuffer,
                                .PrevReportINBufferSize       = sizeof(PrevKeyboardHIDReportBuffer),
                        },
-    };
+       };
 
 
 /** Main program entry point. This routine contains the overall program flow, including initial
 
 
 /** Main program entry point. This routine contains the overall program flow, including initial
index 477cad0..32b6b4b 100644 (file)
@@ -52,30 +52,30 @@ const USB_Descriptor_HIDReport_Datatype_t PROGMEM HIDReport[] =
        HID_RI_USAGE(8, 0x02), /* Mouse */
        HID_RI_COLLECTION(8, 0x01), /* Application */
                HID_RI_REPORT_ID(8, HID_REPORTID_MouseReport),
        HID_RI_USAGE(8, 0x02), /* Mouse */
        HID_RI_COLLECTION(8, 0x01), /* Application */
                HID_RI_REPORT_ID(8, HID_REPORTID_MouseReport),
-           HID_RI_USAGE(8, 0x01), /* Pointer */
-           HID_RI_COLLECTION(8, 0x00), /* Physical */
-               HID_RI_USAGE_PAGE(8, 0x09), /* Button */
-               HID_RI_USAGE_MINIMUM(8, 0x01),
-               HID_RI_USAGE_MAXIMUM(8, 0x03),
-               HID_RI_LOGICAL_MINIMUM(8, 0x00),
-               HID_RI_LOGICAL_MAXIMUM(8, 0x01),
-               HID_RI_REPORT_COUNT(8, 0x03),
-               HID_RI_REPORT_SIZE(8, 0x01),
-               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
-               HID_RI_REPORT_COUNT(8, 0x01),
-               HID_RI_REPORT_SIZE(8, 0x05),
-               HID_RI_INPUT(8, HID_IOF_CONSTANT),
-               HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
-               HID_RI_USAGE(8, 0x30), /* Usage X */
-               HID_RI_USAGE(8, 0x31), /* Usage Y */
-               HID_RI_LOGICAL_MINIMUM(8, -1),
-               HID_RI_LOGICAL_MAXIMUM(8, 1),
-               HID_RI_PHYSICAL_MINIMUM(8, -1),
-               HID_RI_PHYSICAL_MAXIMUM(8, 1),
-               HID_RI_REPORT_COUNT(8, 0x02),
-               HID_RI_REPORT_SIZE(8, 0x08),
-               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE),
-           HID_RI_END_COLLECTION(0),
+               HID_RI_USAGE(8, 0x01), /* Pointer */
+               HID_RI_COLLECTION(8, 0x00), /* Physical */
+                       HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+                       HID_RI_USAGE_MINIMUM(8, 0x01),
+                       HID_RI_USAGE_MAXIMUM(8, 0x03),
+                       HID_RI_LOGICAL_MINIMUM(8, 0x00),
+                       HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+                       HID_RI_REPORT_COUNT(8, 0x03),
+                       HID_RI_REPORT_SIZE(8, 0x01),
+                       HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
+                       HID_RI_REPORT_COUNT(8, 0x01),
+                       HID_RI_REPORT_SIZE(8, 0x05),
+                       HID_RI_INPUT(8, HID_IOF_CONSTANT),
+                       HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+                       HID_RI_USAGE(8, 0x30), /* Usage X */
+                       HID_RI_USAGE(8, 0x31), /* Usage Y */
+                       HID_RI_LOGICAL_MINIMUM(8, -1),
+                       HID_RI_LOGICAL_MAXIMUM(8, 1),
+                       HID_RI_PHYSICAL_MINIMUM(8, -1),
+                       HID_RI_PHYSICAL_MAXIMUM(8, 1),
+                       HID_RI_REPORT_COUNT(8, 0x02),
+                       HID_RI_REPORT_SIZE(8, 0x08),
+                       HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE),
+               HID_RI_END_COLLECTION(0),
        HID_RI_END_COLLECTION(0),
 
        /* Keyboard Report */
        HID_RI_END_COLLECTION(0),
 
        /* Keyboard Report */
@@ -83,34 +83,34 @@ const USB_Descriptor_HIDReport_Datatype_t PROGMEM HIDReport[] =
        HID_RI_USAGE(8, 0x06), /* Keyboard */
        HID_RI_COLLECTION(8, 0x01), /* Application */
                HID_RI_REPORT_ID(8, HID_REPORTID_KeyboardReport),
        HID_RI_USAGE(8, 0x06), /* Keyboard */
        HID_RI_COLLECTION(8, 0x01), /* Application */
                HID_RI_REPORT_ID(8, HID_REPORTID_KeyboardReport),
-           HID_RI_USAGE_PAGE(8, 0x07), /* Key Codes */
-           HID_RI_USAGE_MINIMUM(8, 0xE0), /* Keyboard Left Control */
-           HID_RI_USAGE_MAXIMUM(8, 0xE7), /* Keyboard Right GUI */
-           HID_RI_LOGICAL_MINIMUM(8, 0x00),
-           HID_RI_LOGICAL_MAXIMUM(8, 0x01),
-           HID_RI_REPORT_SIZE(8, 0x01),
-           HID_RI_REPORT_COUNT(8, 0x08),
-           HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
-           HID_RI_REPORT_COUNT(8, 0x01),
-           HID_RI_REPORT_SIZE(8, 0x08),
-           HID_RI_INPUT(8, HID_IOF_CONSTANT),
-           HID_RI_USAGE_PAGE(8, 0x08), /* LEDs */
-           HID_RI_USAGE_MINIMUM(8, 0x01), /* Num Lock */
-           HID_RI_USAGE_MAXIMUM(8, 0x05), /* Kana */
-           HID_RI_REPORT_COUNT(8, 0x05),
-           HID_RI_REPORT_SIZE(8, 0x01),
-           HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
-           HID_RI_REPORT_COUNT(8, 0x01),
-           HID_RI_REPORT_SIZE(8, 0x03),
-           HID_RI_OUTPUT(8, HID_IOF_CONSTANT),
-           HID_RI_LOGICAL_MINIMUM(8, 0x00),
-           HID_RI_LOGICAL_MAXIMUM(8, 0x65),
-           HID_RI_USAGE_PAGE(8, 0x07), /* Keyboard */
-           HID_RI_USAGE_MINIMUM(8, 0x00), /* Reserved (no event indicated) */
-           HID_RI_USAGE_MAXIMUM(8, 0x65), /* Keyboard Application */
-           HID_RI_REPORT_COUNT(8, 0x06),
-           HID_RI_REPORT_SIZE(8, 0x08),
-           HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE),
+               HID_RI_USAGE_PAGE(8, 0x07), /* Key Codes */
+               HID_RI_USAGE_MINIMUM(8, 0xE0), /* Keyboard Left Control */
+               HID_RI_USAGE_MAXIMUM(8, 0xE7), /* Keyboard Right GUI */
+               HID_RI_LOGICAL_MINIMUM(8, 0x00),
+               HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+               HID_RI_REPORT_SIZE(8, 0x01),
+               HID_RI_REPORT_COUNT(8, 0x08),
+               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
+               HID_RI_REPORT_COUNT(8, 0x01),
+               HID_RI_REPORT_SIZE(8, 0x08),
+               HID_RI_INPUT(8, HID_IOF_CONSTANT),
+               HID_RI_USAGE_PAGE(8, 0x08), /* LEDs */
+               HID_RI_USAGE_MINIMUM(8, 0x01), /* Num Lock */
+               HID_RI_USAGE_MAXIMUM(8, 0x05), /* Kana */
+               HID_RI_REPORT_COUNT(8, 0x05),
+               HID_RI_REPORT_SIZE(8, 0x01),
+               HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+               HID_RI_REPORT_COUNT(8, 0x01),
+               HID_RI_REPORT_SIZE(8, 0x03),
+               HID_RI_OUTPUT(8, HID_IOF_CONSTANT),
+               HID_RI_LOGICAL_MINIMUM(8, 0x00),
+               HID_RI_LOGICAL_MAXIMUM(8, 0x65),
+               HID_RI_USAGE_PAGE(8, 0x07), /* Keyboard */
+               HID_RI_USAGE_MINIMUM(8, 0x00), /* Reserved (no event indicated) */
+               HID_RI_USAGE_MAXIMUM(8, 0x65), /* Keyboard Application */
+               HID_RI_REPORT_COUNT(8, 0x06),
+               HID_RI_REPORT_SIZE(8, 0x08),
+               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE),
        HID_RI_END_COLLECTION(0),
 };
 
        HID_RI_END_COLLECTION(0),
 };
 
index 0ec8788..2be1e94 100644 (file)
@@ -108,13 +108,13 @@ void SetupHardware()
 /** Event handler for the library USB Connection event. */
 void EVENT_USB_Device_Connect(void)
 {
 /** Event handler for the library USB Connection event. */
 void EVENT_USB_Device_Connect(void)
 {
-    LEDs_SetAllLEDs(LEDMASK_USB_ENUMERATING);
+       LEDs_SetAllLEDs(LEDMASK_USB_ENUMERATING);
 }
 
 /** Event handler for the library USB Disconnection event. */
 void EVENT_USB_Device_Disconnect(void)
 {
 }
 
 /** Event handler for the library USB Disconnection event. */
 void EVENT_USB_Device_Disconnect(void)
 {
-    LEDs_SetAllLEDs(LEDMASK_USB_NOTREADY);
+       LEDs_SetAllLEDs(LEDMASK_USB_NOTREADY);
 }
 
 /** Event handler for the library USB Configuration Changed event. */
 }
 
 /** Event handler for the library USB Configuration Changed event. */
index 7474e54..9bb2c3e 100644 (file)
@@ -123,8 +123,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index 33f6337..337cb5f 100644 (file)
@@ -124,8 +124,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index b8a07f4..40f9439 100644 (file)
@@ -91,7 +91,7 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
-                       .FirstInterfaceIndex    = 0,
+                       .FirstInterfaceIndex    = INTERFACE_ID_CDC_CCI,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
@@ -138,8 +138,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index 43c849b..b2e7c8d 100644 (file)
@@ -110,7 +110,7 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
-                       .FirstInterfaceIndex    = 0,
+                       .FirstInterfaceIndex    = INTERFACE_ID_CDC_CCI,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
@@ -157,8 +157,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index 2452318..827b983 100644 (file)
@@ -91,7 +91,7 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
-                       .FirstInterfaceIndex    = 0,
+                       .FirstInterfaceIndex    = INTERFACE_ID_CDC1_CCI,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
@@ -138,8 +138,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC1_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC1_DCI,
                },
 
        .CDC1_ManagementEndpoint =
                },
 
        .CDC1_ManagementEndpoint =
@@ -192,7 +192,7 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
-                       .FirstInterfaceIndex    = 2,
+                       .FirstInterfaceIndex    = INTERFACE_ID_CDC2_CCI,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
@@ -239,8 +239,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 2,
-                       .SlaveInterfaceNumber   = 3,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC2_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC2_DCI,
                },
 
        .CDC2_ManagementEndpoint =
                },
 
        .CDC2_ManagementEndpoint =
index 2f9eb00..adb2cc5 100644 (file)
@@ -48,30 +48,30 @@ const USB_Descriptor_HIDReport_Datatype_t PROGMEM JoystickReport[] =
        HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
        HID_RI_USAGE(8, 0x04), /* Joystick */
        HID_RI_COLLECTION(8, 0x01), /* Application */
        HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
        HID_RI_USAGE(8, 0x04), /* Joystick */
        HID_RI_COLLECTION(8, 0x01), /* Application */
-           HID_RI_USAGE(8, 0x01), /* Pointer */
-           HID_RI_COLLECTION(8, 0x00), /* Physical */
-               HID_RI_USAGE(8, 0x30), /* Usage X */
-               HID_RI_USAGE(8, 0x31), /* Usage Y */
-               HID_RI_USAGE(8, 0x32), /* Usage Z */
-               HID_RI_LOGICAL_MINIMUM(8, -100),
-               HID_RI_LOGICAL_MAXIMUM(8, 100),
-               HID_RI_PHYSICAL_MINIMUM(8, -1),
-               HID_RI_PHYSICAL_MAXIMUM(8, 1),
-               HID_RI_REPORT_COUNT(8, 0x03),
-               HID_RI_REPORT_SIZE(8, 0x08),
-               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
-           HID_RI_END_COLLECTION(0),
-           HID_RI_USAGE_PAGE(8, 0x09), /* Button */
-           HID_RI_USAGE_MINIMUM(8, 0x01),
-           HID_RI_USAGE_MAXIMUM(8, 0x02),
-           HID_RI_LOGICAL_MINIMUM(8, 0x00),
-           HID_RI_LOGICAL_MAXIMUM(8, 0x01),
-           HID_RI_REPORT_SIZE(8, 0x01),
-           HID_RI_REPORT_COUNT(8, 0x02),
-           HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
-           HID_RI_REPORT_SIZE(8, 0x06),
-           HID_RI_REPORT_COUNT(8, 0x01),
-           HID_RI_INPUT(8, HID_IOF_CONSTANT),
+               HID_RI_USAGE(8, 0x01), /* Pointer */
+               HID_RI_COLLECTION(8, 0x00), /* Physical */
+                       HID_RI_USAGE(8, 0x30), /* Usage X */
+                       HID_RI_USAGE(8, 0x31), /* Usage Y */
+                       HID_RI_USAGE(8, 0x32), /* Usage Z */
+                       HID_RI_LOGICAL_MINIMUM(8, -100),
+                       HID_RI_LOGICAL_MAXIMUM(8, 100),
+                       HID_RI_PHYSICAL_MINIMUM(8, -1),
+                       HID_RI_PHYSICAL_MAXIMUM(8, 1),
+                       HID_RI_REPORT_COUNT(8, 0x03),
+                       HID_RI_REPORT_SIZE(8, 0x08),
+                       HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
+               HID_RI_END_COLLECTION(0),
+               HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+               HID_RI_USAGE_MINIMUM(8, 0x01),
+               HID_RI_USAGE_MAXIMUM(8, 0x02),
+               HID_RI_LOGICAL_MINIMUM(8, 0x00),
+               HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+               HID_RI_REPORT_SIZE(8, 0x01),
+               HID_RI_REPORT_COUNT(8, 0x02),
+               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
+               HID_RI_REPORT_SIZE(8, 0x06),
+               HID_RI_REPORT_COUNT(8, 0x01),
+               HID_RI_INPUT(8, HID_IOF_CONSTANT),
        HID_RI_END_COLLECTION(0),
 };
 
        HID_RI_END_COLLECTION(0),
 };
 
index 6a644d8..5817519 100644 (file)
@@ -49,34 +49,34 @@ const USB_Descriptor_HIDReport_Datatype_t PROGMEM KeyboardReport[] =
        HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
        HID_RI_USAGE(8, 0x06), /* Keyboard */
        HID_RI_COLLECTION(8, 0x01), /* Application */
        HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
        HID_RI_USAGE(8, 0x06), /* Keyboard */
        HID_RI_COLLECTION(8, 0x01), /* Application */
-           HID_RI_USAGE_PAGE(8, 0x07), /* Key Codes */
-           HID_RI_USAGE_MINIMUM(8, 0xE0), /* Keyboard Left Control */
-           HID_RI_USAGE_MAXIMUM(8, 0xE7), /* Keyboard Right GUI */
-           HID_RI_LOGICAL_MINIMUM(8, 0x00),
-           HID_RI_LOGICAL_MAXIMUM(8, 0x01),
-           HID_RI_REPORT_SIZE(8, 0x01),
-           HID_RI_REPORT_COUNT(8, 0x08),
-           HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
-           HID_RI_REPORT_COUNT(8, 0x01),
-           HID_RI_REPORT_SIZE(8, 0x08),
-           HID_RI_INPUT(8, HID_IOF_CONSTANT),
-           HID_RI_USAGE_PAGE(8, 0x08), /* LEDs */
-           HID_RI_USAGE_MINIMUM(8, 0x01), /* Num Lock */
-           HID_RI_USAGE_MAXIMUM(8, 0x05), /* Kana */
-           HID_RI_REPORT_COUNT(8, 0x05),
-           HID_RI_REPORT_SIZE(8, 0x01),
-           HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
-           HID_RI_REPORT_COUNT(8, 0x01),
-           HID_RI_REPORT_SIZE(8, 0x03),
-           HID_RI_OUTPUT(8, HID_IOF_CONSTANT),
-           HID_RI_LOGICAL_MINIMUM(8, 0x00),
-           HID_RI_LOGICAL_MAXIMUM(8, 0x65),
-           HID_RI_USAGE_PAGE(8, 0x07), /* Keyboard */
-           HID_RI_USAGE_MINIMUM(8, 0x00), /* Reserved (no event indicated) */
-           HID_RI_USAGE_MAXIMUM(8, 0x65), /* Keyboard Application */
-           HID_RI_REPORT_COUNT(8, 0x06),
-           HID_RI_REPORT_SIZE(8, 0x08),
-           HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE),
+               HID_RI_USAGE_PAGE(8, 0x07), /* Key Codes */
+               HID_RI_USAGE_MINIMUM(8, 0xE0), /* Keyboard Left Control */
+               HID_RI_USAGE_MAXIMUM(8, 0xE7), /* Keyboard Right GUI */
+               HID_RI_LOGICAL_MINIMUM(8, 0x00),
+               HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+               HID_RI_REPORT_SIZE(8, 0x01),
+               HID_RI_REPORT_COUNT(8, 0x08),
+               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
+               HID_RI_REPORT_COUNT(8, 0x01),
+               HID_RI_REPORT_SIZE(8, 0x08),
+               HID_RI_INPUT(8, HID_IOF_CONSTANT),
+               HID_RI_USAGE_PAGE(8, 0x08), /* LEDs */
+               HID_RI_USAGE_MINIMUM(8, 0x01), /* Num Lock */
+               HID_RI_USAGE_MAXIMUM(8, 0x05), /* Kana */
+               HID_RI_REPORT_COUNT(8, 0x05),
+               HID_RI_REPORT_SIZE(8, 0x01),
+               HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+               HID_RI_REPORT_COUNT(8, 0x01),
+               HID_RI_REPORT_SIZE(8, 0x03),
+               HID_RI_OUTPUT(8, HID_IOF_CONSTANT),
+               HID_RI_LOGICAL_MINIMUM(8, 0x00),
+               HID_RI_LOGICAL_MAXIMUM(8, 0x65),
+               HID_RI_USAGE_PAGE(8, 0x07), /* Keyboard */
+               HID_RI_USAGE_MINIMUM(8, 0x00), /* Reserved (no event indicated) */
+               HID_RI_USAGE_MAXIMUM(8, 0x65), /* Keyboard Application */
+               HID_RI_REPORT_COUNT(8, 0x06),
+               HID_RI_REPORT_SIZE(8, 0x08),
+               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE),
        HID_RI_END_COLLECTION(0),
 };
 
        HID_RI_END_COLLECTION(0),
 };
 
index 4a339f4..92fc063 100644 (file)
@@ -51,30 +51,30 @@ const USB_Descriptor_HIDReport_Datatype_t PROGMEM MouseReport[] =
        HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
        HID_RI_USAGE(8, 0x02), /* Mouse */
        HID_RI_COLLECTION(8, 0x01), /* Application */
        HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
        HID_RI_USAGE(8, 0x02), /* Mouse */
        HID_RI_COLLECTION(8, 0x01), /* Application */
-           HID_RI_USAGE(8, 0x01), /* Pointer */
-           HID_RI_COLLECTION(8, 0x00), /* Physical */
-               HID_RI_USAGE_PAGE(8, 0x09), /* Button */
-               HID_RI_USAGE_MINIMUM(8, 0x01),
-               HID_RI_USAGE_MAXIMUM(8, 0x03),
-               HID_RI_LOGICAL_MINIMUM(8, 0x00),
-               HID_RI_LOGICAL_MAXIMUM(8, 0x01),
-               HID_RI_REPORT_COUNT(8, 0x03),
-               HID_RI_REPORT_SIZE(8, 0x01),
-               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
-               HID_RI_REPORT_COUNT(8, 0x01),
-               HID_RI_REPORT_SIZE(8, 0x05),
-               HID_RI_INPUT(8, HID_IOF_CONSTANT),
-               HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
-               HID_RI_USAGE(8, 0x30), /* Usage X */
-               HID_RI_USAGE(8, 0x31), /* Usage Y */
-               HID_RI_LOGICAL_MINIMUM(8, -1),
-               HID_RI_LOGICAL_MAXIMUM(8, 1),
-               HID_RI_PHYSICAL_MINIMUM(8, -1),
-               HID_RI_PHYSICAL_MAXIMUM(8, 1),
-               HID_RI_REPORT_COUNT(8, 0x02),
-               HID_RI_REPORT_SIZE(8, 0x08),
-               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE),
-           HID_RI_END_COLLECTION(0),
+               HID_RI_USAGE(8, 0x01), /* Pointer */
+               HID_RI_COLLECTION(8, 0x00), /* Physical */
+                       HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+                       HID_RI_USAGE_MINIMUM(8, 0x01),
+                       HID_RI_USAGE_MAXIMUM(8, 0x03),
+                       HID_RI_LOGICAL_MINIMUM(8, 0x00),
+                       HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+                       HID_RI_REPORT_COUNT(8, 0x03),
+                       HID_RI_REPORT_SIZE(8, 0x01),
+                       HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
+                       HID_RI_REPORT_COUNT(8, 0x01),
+                       HID_RI_REPORT_SIZE(8, 0x05),
+                       HID_RI_INPUT(8, HID_IOF_CONSTANT),
+                       HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+                       HID_RI_USAGE(8, 0x30), /* Usage X */
+                       HID_RI_USAGE(8, 0x31), /* Usage Y */
+                       HID_RI_LOGICAL_MINIMUM(8, -1),
+                       HID_RI_LOGICAL_MAXIMUM(8, 1),
+                       HID_RI_PHYSICAL_MINIMUM(8, -1),
+                       HID_RI_PHYSICAL_MAXIMUM(8, 1),
+                       HID_RI_REPORT_COUNT(8, 0x02),
+                       HID_RI_REPORT_SIZE(8, 0x08),
+                       HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE),
+               HID_RI_END_COLLECTION(0),
        HID_RI_END_COLLECTION(0),
 };
 
        HID_RI_END_COLLECTION(0),
 };
 
@@ -84,34 +84,34 @@ const USB_Descriptor_HIDReport_Datatype_t PROGMEM KeyboardReport[] =
        HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
        HID_RI_USAGE(8, 0x06), /* Keyboard */
        HID_RI_COLLECTION(8, 0x01), /* Application */
        HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
        HID_RI_USAGE(8, 0x06), /* Keyboard */
        HID_RI_COLLECTION(8, 0x01), /* Application */
-           HID_RI_USAGE_PAGE(8, 0x07), /* Key Codes */
-           HID_RI_USAGE_MINIMUM(8, 0xE0), /* Keyboard Left Control */
-           HID_RI_USAGE_MAXIMUM(8, 0xE7), /* Keyboard Right GUI */
-           HID_RI_LOGICAL_MINIMUM(8, 0x00),
-           HID_RI_LOGICAL_MAXIMUM(8, 0x01),
-           HID_RI_REPORT_SIZE(8, 0x01),
-           HID_RI_REPORT_COUNT(8, 0x08),
-           HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
-           HID_RI_REPORT_COUNT(8, 0x01),
-           HID_RI_REPORT_SIZE(8, 0x08),
-           HID_RI_INPUT(8, HID_IOF_CONSTANT),
-           HID_RI_USAGE_PAGE(8, 0x08), /* LEDs */
-           HID_RI_USAGE_MINIMUM(8, 0x01), /* Num Lock */
-           HID_RI_USAGE_MAXIMUM(8, 0x05), /* Kana */
-           HID_RI_REPORT_COUNT(8, 0x05),
-           HID_RI_REPORT_SIZE(8, 0x01),
-           HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
-           HID_RI_REPORT_COUNT(8, 0x01),
-           HID_RI_REPORT_SIZE(8, 0x03),
-           HID_RI_OUTPUT(8, HID_IOF_CONSTANT),
-           HID_RI_LOGICAL_MINIMUM(8, 0x00),
-           HID_RI_LOGICAL_MAXIMUM(8, 0x65),
-           HID_RI_USAGE_PAGE(8, 0x07), /* Keyboard */
-           HID_RI_USAGE_MINIMUM(8, 0x00), /* Reserved (no event indicated) */
-           HID_RI_USAGE_MAXIMUM(8, 0x65), /* Keyboard Application */
-           HID_RI_REPORT_COUNT(8, 0x06),
-           HID_RI_REPORT_SIZE(8, 0x08),
-           HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE),
+               HID_RI_USAGE_PAGE(8, 0x07), /* Key Codes */
+               HID_RI_USAGE_MINIMUM(8, 0xE0), /* Keyboard Left Control */
+               HID_RI_USAGE_MAXIMUM(8, 0xE7), /* Keyboard Right GUI */
+               HID_RI_LOGICAL_MINIMUM(8, 0x00),
+               HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+               HID_RI_REPORT_SIZE(8, 0x01),
+               HID_RI_REPORT_COUNT(8, 0x08),
+               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
+               HID_RI_REPORT_COUNT(8, 0x01),
+               HID_RI_REPORT_SIZE(8, 0x08),
+               HID_RI_INPUT(8, HID_IOF_CONSTANT),
+               HID_RI_USAGE_PAGE(8, 0x08), /* LEDs */
+               HID_RI_USAGE_MINIMUM(8, 0x01), /* Num Lock */
+               HID_RI_USAGE_MAXIMUM(8, 0x05), /* Kana */
+               HID_RI_REPORT_COUNT(8, 0x05),
+               HID_RI_REPORT_SIZE(8, 0x01),
+               HID_RI_OUTPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE | HID_IOF_NON_VOLATILE),
+               HID_RI_REPORT_COUNT(8, 0x01),
+               HID_RI_REPORT_SIZE(8, 0x03),
+               HID_RI_OUTPUT(8, HID_IOF_CONSTANT),
+               HID_RI_LOGICAL_MINIMUM(8, 0x00),
+               HID_RI_LOGICAL_MAXIMUM(8, 0x65),
+               HID_RI_USAGE_PAGE(8, 0x07), /* Keyboard */
+               HID_RI_USAGE_MINIMUM(8, 0x00), /* Reserved (no event indicated) */
+               HID_RI_USAGE_MAXIMUM(8, 0x65), /* Keyboard Application */
+               HID_RI_REPORT_COUNT(8, 0x06),
+               HID_RI_REPORT_SIZE(8, 0x08),
+               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_ARRAY | HID_IOF_ABSOLUTE),
        HID_RI_END_COLLECTION(0),
 };
 
        HID_RI_END_COLLECTION(0),
 };
 
index 23e8d7f..01ffe2b 100644 (file)
@@ -48,30 +48,30 @@ const USB_Descriptor_HIDReport_Datatype_t PROGMEM MouseReport[] =
        HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
        HID_RI_USAGE(8, 0x02), /* Mouse */
        HID_RI_COLLECTION(8, 0x01), /* Application */
        HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
        HID_RI_USAGE(8, 0x02), /* Mouse */
        HID_RI_COLLECTION(8, 0x01), /* Application */
-           HID_RI_USAGE(8, 0x01), /* Pointer */
-           HID_RI_COLLECTION(8, 0x00), /* Physical */
-               HID_RI_USAGE_PAGE(8, 0x09), /* Button */
-               HID_RI_USAGE_MINIMUM(8, 0x01),
-               HID_RI_USAGE_MAXIMUM(8, 0x03),
-               HID_RI_LOGICAL_MINIMUM(8, 0x00),
-               HID_RI_LOGICAL_MAXIMUM(8, 0x01),
-               HID_RI_REPORT_COUNT(8, 0x03),
-               HID_RI_REPORT_SIZE(8, 0x01),
-               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
-               HID_RI_REPORT_COUNT(8, 0x01),
-               HID_RI_REPORT_SIZE(8, 0x05),
-               HID_RI_INPUT(8, HID_IOF_CONSTANT),
-               HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
-               HID_RI_USAGE(8, 0x30), /* Usage X */
-               HID_RI_USAGE(8, 0x31), /* Usage Y */
-               HID_RI_LOGICAL_MINIMUM(8, -1),
-               HID_RI_LOGICAL_MAXIMUM(8, 1),
-               HID_RI_PHYSICAL_MINIMUM(8, -1),
-               HID_RI_PHYSICAL_MAXIMUM(8, 1),
-               HID_RI_REPORT_COUNT(8, 0x02),
-               HID_RI_REPORT_SIZE(8, 0x08),
-               HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE),
-           HID_RI_END_COLLECTION(0),
+               HID_RI_USAGE(8, 0x01), /* Pointer */
+               HID_RI_COLLECTION(8, 0x00), /* Physical */
+                       HID_RI_USAGE_PAGE(8, 0x09), /* Button */
+                       HID_RI_USAGE_MINIMUM(8, 0x01),
+                       HID_RI_USAGE_MAXIMUM(8, 0x03),
+                       HID_RI_LOGICAL_MINIMUM(8, 0x00),
+                       HID_RI_LOGICAL_MAXIMUM(8, 0x01),
+                       HID_RI_REPORT_COUNT(8, 0x03),
+                       HID_RI_REPORT_SIZE(8, 0x01),
+                       HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE),
+                       HID_RI_REPORT_COUNT(8, 0x01),
+                       HID_RI_REPORT_SIZE(8, 0x05),
+                       HID_RI_INPUT(8, HID_IOF_CONSTANT),
+                       HID_RI_USAGE_PAGE(8, 0x01), /* Generic Desktop */
+                       HID_RI_USAGE(8, 0x30), /* Usage X */
+                       HID_RI_USAGE(8, 0x31), /* Usage Y */
+                       HID_RI_LOGICAL_MINIMUM(8, -1),
+                       HID_RI_LOGICAL_MAXIMUM(8, 1),
+                       HID_RI_PHYSICAL_MINIMUM(8, -1),
+                       HID_RI_PHYSICAL_MAXIMUM(8, 1),
+                       HID_RI_REPORT_COUNT(8, 0x02),
+                       HID_RI_REPORT_SIZE(8, 0x08),
+                       HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_RELATIVE),
+               HID_RI_END_COLLECTION(0),
        HID_RI_END_COLLECTION(0),
 };
 
        HID_RI_END_COLLECTION(0),
 };
 
index 7474e54..9bb2c3e 100644 (file)
@@ -123,8 +123,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index 33f6337..337cb5f 100644 (file)
@@ -124,8 +124,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index 8bd0907..a7c07bf 100644 (file)
@@ -123,8 +123,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index f228c69..bf72c6d 100644 (file)
@@ -124,8 +124,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index baf33c0..a2f11ab 100644 (file)
@@ -136,8 +136,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index ea0a84a..fd3d439 100644 (file)
@@ -124,8 +124,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index b8acf42..ea87ab8 100644 (file)
@@ -91,7 +91,7 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
                {
                        .Header                 = {.Size = sizeof(USB_Descriptor_Interface_Association_t), .Type = DTYPE_InterfaceAssociation},
 
-                       .FirstInterfaceIndex    = 0,
+                       .FirstInterfaceIndex    = INTERFACE_ID_CDC_CCI,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
                        .TotalInterfaces        = 2,
 
                        .Class                  = CDC_CSCP_CDCClass,
@@ -138,8 +138,8 @@ const USB_Descriptor_Configuration_t PROGMEM ConfigurationDescriptor =
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =
index b1bfd4e..f14bac0 100644 (file)
@@ -124,8 +124,8 @@ const USART_USB_Descriptor_Configuration_t PROGMEM USART_ConfigurationDescriptor
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
                        .Header                 = {.Size = sizeof(USB_CDC_Descriptor_FunctionalUnion_t), .Type = DTYPE_CSInterface},
                        .Subtype                = CDC_DSUBTYPE_CSInterface_Union,
 
-                       .MasterInterfaceNumber  = 0,
-                       .SlaveInterfaceNumber   = 1,
+                       .MasterInterfaceNumber  = INTERFACE_ID_CDC_CCI,
+                       .SlaveInterfaceNumber   = INTERFACE_ID_CDC_DCI,
                },
 
        .CDC_NotificationEndpoint =
                },
 
        .CDC_NotificationEndpoint =