Linux gadget驱动分析3——复合设备驱动

windows上面对usb复合设备的识别需要下面条件。

如果设备满足下列要求,,则总线驱动程序还会报告 USB\COMPOSITE 的兼容标识符:

设备描述符的设备类字段 (bDeviceClass) 必须包含一个零值,或者设备描述符的类 (bDeviceClass)、子类 (bDeviceSubClass) 和协议 (bDeviceProtocol) 字段必须分别具有值 0xEF、0x02 和 0x01,如 USB 接口关联描述符中所述。

设备必须具有多个接口。

设备必须具有一个配置。“

引用自:

下面是linux /driver/usb/gadget/mass_storage.c 中定义的设备描述符:

usb_device_descriptor msg_device_desc = { 2.bLength =sizeof msg_device_desc, 3.bDescriptorType = USB_DT_DEVICE, 4 5.bcdUSB =cpu_to_le16(0x0200), 6.bDeviceClass =USB_CLASS_PER_INTERFACE,.idVendor =cpu_to_le16(FSG_VENDOR_ID),10.idProduct =cpu_to_le16(FSG_PRODUCT_ID),.bNumConfigurations = 1,16 };记录沿途的心情。那样的生活才是我想要的。

Linux gadget驱动分析3——复合设备驱动

相关文章:

你感兴趣的文章:

标签云: