Standard Audio Control Interface Descriptor
struct usb_ac_interface_descriptor
{
U8 bLength; /* Size of this descriptor in bytes */
U8 bDescriptorType; /* INTERFACE descriptor type */
U8 bInterfaceNumber; /* Number of the interface (0 based) */
U8 bAlternateSetting;
U8 bNumEndpoints; /* Number of endpoints in this interface */
U8 bInterfaceClass; /* AUDIO Interface class code */
U8 bInterfaceSubclass; /* AUDIO_STREAMING Interface subclass code */
U8 bInterfaceProtocol; /* IP_VERSION_02_00 Interface protocol code */
U8 iInterface; /* String descriptor of this Interface */
};
bLength = 0x09; struct size,固定0x09;
bDescriptorType = 0x04; 表明此数据是Interface描述符;
bInterfaceClass = 0x01; 说明这是一个Audio device;
bInterfaceSubclass = 0x01; 说明这是一个audio control interface; 0x02 是audio streaming interface; 0x03 是midi streaming interface;
bInterfaceNumber : 同配置的Interface index,以0开始;
bAlternateSetting: 可替换的Interface index;
bNumEndpoints: 除0端点外,此Interface所使用的端点数量,如果有可替换的端点,则为1,否则是0;
bInterfaceProtocol: 未使用,必须设为0;
iInterface: 如果有字符串描述符,则描述此Interface的字符串描述符索引。