X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/5f57785404e671f136f8c7e325922076d16fee30..bea72a8412f99b294c00341fa16a8308bcc66f15:/LUFA/Drivers/USB/HighLevel/StdDescriptors.h diff --git a/LUFA/Drivers/USB/HighLevel/StdDescriptors.h b/LUFA/Drivers/USB/HighLevel/StdDescriptors.h index 1798365c5..00b60c3d3 100644 --- a/LUFA/Drivers/USB/HighLevel/StdDescriptors.h +++ b/LUFA/Drivers/USB/HighLevel/StdDescriptors.h @@ -52,6 +52,7 @@ /* Includes: */ #include #include + #include #include #include "../../../Common/Common.h" @@ -98,7 +99,7 @@ #define USE_INTERNAL_SERIAL NO_DESCRIPTOR #endif - /** Macro to calculate the power value for the configuration descriptor, from a given number of milliamps. */ + /** Macro to calculate the power value for the configuration descriptor, from a given number of milliamperes. */ #define USB_CONFIG_POWER_MA(mA) ((mA) >> 1) /** Macro to calculate the Unicode length of a string with a given number of Unicode characters. @@ -197,7 +198,7 @@ * \see The USB specification for more details on the possible Endpoint usage attributes. */ #define ENDPOINT_USAGE_IMPLICIT_FEEDBACK (2 << 4) - + /* Enums: */ /** Enum for the possible standard descriptor types, as given in each descriptor's header. */ enum USB_DescriptorTypes_t @@ -211,6 +212,8 @@ DTYPE_Other = 0x07, /**< Indicates that the descriptor is of other type. */ DTYPE_InterfacePower = 0x08, /**< Indicates that the descriptor is an interface power descriptor. */ DTYPE_InterfaceAssociation = 0x0B, /**< Indicates that the descriptor is an interface association descriptor. */ + DTYPE_CSInterface = 0x24, /**< Indicates that the descriptor is a class specific interface descriptor. */ + DTYPE_CSEndpoint = 0x25, /**< Indicates that the descriptor is a class specific endpoint descriptor. */ }; /* Type Defines: */ @@ -219,7 +222,7 @@ * Type define for all descriptors' standard header, indicating the descriptor's length and type. This structure * uses LUFA-specific element names to make each element's purpose clearer. * - * \see \ref USB_StdDescriptor_Header_t for the version of this define with standard element names. + * \see \ref USB_StdDescriptor_Header_t for the version of this type with standard element names. */ typedef struct { @@ -234,7 +237,7 @@ * Type define for all descriptors' standard header, indicating the descriptor's length and type. This structure * uses the relevant standard's given element names to ensure compatibility with the standard. * - * \see \ref USB_Descriptor_Header_t for the version of this define with non-standard LUFA specific element names. + * \see \ref USB_Descriptor_Header_t for the version of this type with non-standard LUFA specific element names. */ typedef struct { @@ -249,7 +252,7 @@ * Type define for a standard Device Descriptor. This structure uses LUFA-specific element names to make each * element's purpose clearer. * - * \see \ref USB_StdDescriptor_Device_t for the version of this define with standard element names. + * \see \ref USB_StdDescriptor_Device_t for the version of this type with standard element names. */ typedef struct { @@ -298,7 +301,7 @@ * Type define for a standard Device Descriptor. This structure uses the relevant standard's given element names * to ensure compatibility with the standard. * - * \see \ref USB_Descriptor_Device_t for the version of this define with non-standard LUFA specific element names. + * \see \ref USB_Descriptor_Device_t for the version of this type with non-standard LUFA specific element names. */ typedef struct { @@ -346,7 +349,7 @@ * Type define for a standard Configuration Descriptor header. This structure uses LUFA-specific element names * to make each element's purpose clearer. * - * \see \ref USB_StdDescriptor_Configuration_Header_t for the version of this define with standard element names. + * \see \ref USB_StdDescriptor_Configuration_Header_t for the version of this type with standard element names. */ typedef struct { @@ -375,7 +378,7 @@ * Type define for a standard Configuration Descriptor header. This structure uses the relevant standard's given element names * to ensure compatibility with the standard. * - * \see \ref USB_Descriptor_Device_t for the version of this define with non-standard LUFA specific element names. + * \see \ref USB_Descriptor_Device_t for the version of this type with non-standard LUFA specific element names. */ typedef struct { @@ -403,7 +406,7 @@ * Type define for a standard Interface Descriptor. This structure uses LUFA-specific element names * to make each element's purpose clearer. * - * \see \ref USB_StdDescriptor_Interface_t for the version of this define with standard element names. + * \see \ref USB_StdDescriptor_Interface_t for the version of this type with standard element names. */ typedef struct { @@ -429,7 +432,7 @@ * Type define for a standard Interface Descriptor. This structure uses the relevant standard's given element names * to ensure compatibility with the standard. * - * \see \ref USB_Descriptor_Interface_t for the version of this define with non-standard LUFA specific element names. + * \see \ref USB_Descriptor_Interface_t for the version of this type with non-standard LUFA specific element names. */ typedef struct { @@ -458,12 +461,12 @@ * to make each element's purpose clearer. * * This descriptor has been added as a supplement to the USB2.0 standard, in the ECN located at - * http://www.usb.org/developers/docs/InterfaceAssociationDescriptor_ecn.pdf. It allows compound + * http://www.usb.org/developers/docs/InterfaceAssociationDescriptor_ecn.pdf. It allows composite * devices with multiple interfaces related to the same function to have the multiple interfaces bound * together at the point of enumeration, loading one generic driver for all the interfaces in the single * function. Read the ECN for more information. * - * \see \ref USB_StdDescriptor_Interface_Association_t for the version of this define with standard element names. + * \see \ref USB_StdDescriptor_Interface_Association_t for the version of this type with standard element names. */ typedef struct { @@ -487,12 +490,12 @@ * element names to ensure compatibility with the standard. * * This descriptor has been added as a supplement to the USB2.0 standard, in the ECN located at - * http://www.usb.org/developers/docs/InterfaceAssociationDescriptor_ecn.pdf. It allows compound + * http://www.usb.org/developers/docs/InterfaceAssociationDescriptor_ecn.pdf. It allows composite * devices with multiple interfaces related to the same function to have the multiple interfaces bound * together at the point of enumeration, loading one generic driver for all the interfaces in the single * function. Read the ECN for more information. * - * \see \ref USB_Descriptor_Interface_Association_t for the version of this define with non-standard LUFA specific + * \see \ref USB_Descriptor_Interface_Association_t for the version of this type with non-standard LUFA specific * element names. */ typedef struct @@ -516,7 +519,7 @@ * Type define for a standard Endpoint Descriptor. This structure uses LUFA-specific element names * to make each element's purpose clearer. * - * \see \ref USB_StdDescriptor_Endpoint_t for the version of this define with standard element names. + * \see \ref USB_StdDescriptor_Endpoint_t for the version of this type with standard element names. */ typedef struct { @@ -541,7 +544,7 @@ * Type define for a standard Endpoint Descriptor. This structure uses the relevant standard's given * element names to ensure compatibility with the standard. * - * \see \ref USB_Descriptor_Endpoint_t for the version of this define with non-standard LUFA specific + * \see \ref USB_Descriptor_Endpoint_t for the version of this type with non-standard LUFA specific * element names. */ typedef struct @@ -575,7 +578,7 @@ * * This structure uses LUFA-specific element names to make each element's purpose clearer. * - * \see \ref USB_StdDescriptor_String_t for the version of this define with standard element names. + * \see \ref USB_StdDescriptor_String_t for the version of this type with standard element names. */ typedef struct { @@ -605,7 +608,7 @@ * * This structure uses the relevant standard's given element names to ensure compatibility with the standard. * - * \see \ref USB_Descriptor_String_t for the version of this define with with non-standard LUFA specific + * \see \ref USB_Descriptor_String_t for the version of this type with with non-standard LUFA specific * element names. */ typedef struct