Added Device Qualifier standard descriptor structure definitions USB_StdDescriptor_De...
authorDean Camera <dean@fourwalledcubicle.com>
Thu, 14 Jul 2011 03:18:30 +0000 (03:18 +0000)
committerDean Camera <dean@fourwalledcubicle.com>
Thu, 14 Jul 2011 03:18:30 +0000 (03:18 +0000)
LUFA/Drivers/USB/Core/StdDescriptors.h
LUFA/ManPages/ChangeLog.txt

index 0399302..1cb85d5 100644 (file)
                                                              */
                        } ATTR_PACKED USB_StdDescriptor_Device_t;
 
                                                              */
                        } ATTR_PACKED USB_StdDescriptor_Device_t;
 
+                       /** \brief Standard USB Device Qualifier Descriptor (LUFA naming conventions).
+                        *
+                        *  Type define for a standard Device Qualifier Descriptor. This structure uses LUFA-specific element names
+                        *  to make each element's purpose clearer.
+                        *
+                        *  \see \ref USB_StdDescriptor_DeviceQualifier_t for the version of this type with standard element names.
+                        */
+                       typedef struct
+                       {
+                               USB_Descriptor_Header_t Header; /**< Descriptor header, including type and size. */
+
+                               uint16_t USBSpecification; /**< BCD of the supported USB specification. */
+                               uint8_t  Class; /**< USB device class. */
+                               uint8_t  SubClass; /**< USB device subclass. */
+                               uint8_t  Protocol; /**< USB device protocol. */
+
+                               uint8_t  Endpoint0Size; /**< Size of the control (address 0) endpoint's bank in bytes. */
+                               uint8_t  NumberOfConfigurations; /**< Total number of configurations supported by
+                                                                 *   the device.
+                                                                 */
+                               uint8_t  Reserved; /**< Reserved for future use, must be 0. */
+                       } ATTR_PACKED USB_Descriptor_DeviceQualifier_t;
+
+                       /** \brief Standard USB Device Qualifier Descriptor (USB-IF naming conventions).
+                        *
+                        *  Type define for a standard Device Qualifier Descriptor. This structure uses the relevant standard's given element names
+                        *  to ensure compatibility with the standard.
+                        *
+                        *  \see \ref USB_Descriptor_DeviceQualifier_t for the version of this type with non-standard LUFA specific element names.
+                        */
+                       typedef struct
+                       {
+                               uint8_t  bLength; /**< Size of the descriptor, in bytes. */
+                               uint8_t  bDescriptorType; /**< Type of the descriptor, either a value in \ref USB_DescriptorTypes_t or a value
+                                                             *   given by the specific class.
+                                                             */
+                               uint16_t bcdUSB; /**< BCD of the supported USB specification. */
+                               uint8_t  bDeviceClass; /**< USB device class. */
+                               uint8_t  bDeviceSubClass; /**< USB device subclass. */
+                               uint8_t  bDeviceProtocol; /**< USB device protocol. */
+                               uint8_t  bMaxPacketSize0; /**< Size of the control (address 0) endpoint's bank in bytes. */
+                               uint8_t  bNumConfigurations; /**< Total number of configurations supported by
+                                                             *   the device.
+                                                             */
+                               uint8_t  bReserved; /**< Reserved for future use, must be 0. */
+                       } ATTR_PACKED USB_StdDescriptor_DeviceQualifier_t;
+
                        /** \brief Standard USB Configuration Descriptor (LUFA naming conventions).
                         *
                         *  Type define for a standard Configuration Descriptor header. This structure uses LUFA-specific element names
                        /** \brief Standard USB Configuration Descriptor (LUFA naming conventions).
                         *
                         *  Type define for a standard Configuration Descriptor header. This structure uses LUFA-specific element names
index 3b01ffe..b46ab4d 100644 (file)
@@ -28,6 +28,7 @@
   *   - Added new USB_Host_GetDeviceStatus() function to the host standard request function set
   *   - Added AVR USB XMEGA architecture port (currently incomplete/experimental)
   *   - Added new STRINGIFY() and STRINGIFY_EXPANDED() convenience macros
   *   - Added new USB_Host_GetDeviceStatus() function to the host standard request function set
   *   - Added AVR USB XMEGA architecture port (currently incomplete/experimental)
   *   - Added new STRINGIFY() and STRINGIFY_EXPANDED() convenience macros
+  *   - Added Device Qualifier standard descriptor structure definitions USB_StdDescriptor_DeviceQualifier_t and USB_Descriptor_DeviceQualifier_t
   *  - Library Applications:
   *   - Added RNDIS device mode to the Webserver project
   *   - Added new incomplete AndroidAccessoryHost Host LowLevel demo
   *  - Library Applications:
   *   - Added RNDIS device mode to the Webserver project
   *   - Added new incomplete AndroidAccessoryHost Host LowLevel demo