从skel_driver结构可以知道usb-skel设备的初始化函数是skel_probe()函数,设备初始化主要是探测设备类型,分配USB设备用到的urb资源,注册USB设备操作函数等。 skel_class结构变量记录了usb-skel设备信息,定义如下: name变量使用%d通配符表示一个整型变量,当一个usb-skel类型的设备连接到USB总先后会2按照子设备编号自动设...
使用USB View 采集到的数据: Device Descriptor: bcdUSB: 0x0100 bDeviceClass: 0xDC bDeviceSubClass: 0x00 bDeviceProtocol: 0x00 bMaxPacketSize0: 0x10 (16) idVendor: 0x0471 idProduct: 0x0666 bcdDevice: 0x0100 iManufacturer: 0x00 iProduct: 0x00 iSerialNumber: 0x00 bNumConfigurations: 0x01 ...
AI代码解释 struct bus_type usb_bus_type={.name="usb",//总线名称,存在/sys/bus下.match=usb_device_match,//匹配函数,匹配成功就会调用usb_driver驱动的probe函数成员.uevent=usb_uevent,//事件函数.suspend=usb_suspend,//休眠函数.resume=usb_resume,//唤醒函数}; 6.我们进入hub_port_connect_change()...
这里补充一些我个人的估计:因为usb设备可以有多个interface,每个interface所定义的IO操作可能不一样,所以向系统注册的usb_class_driver要求注册到某一个interface,而不是device,因此,usb_register_dev的第一个参数才是interface,而第二个参数就是某一个usb_class_driver。通常情况下,linux系统用主设备号来识别某类设备...
The USB Video Class (UVC) driver is a Microsoft-provided AVStream minidriver that provides driver support for USB Video Class devices. When your device uses UVC, you don't need to supply your own driver. Instead, the device works automatically with the system-supplied driver....
USB\Class_02USB\Class_02&SubClass_02如果您想要自動載入Usbser.sys,請將類別代碼設定為02,並將裝置描述元中的子類別代碼設定為02。 使用此方法時,您不需要發佈裝置的 INF 檔案,因為系統使用 Usbser.inf。 如需詳細資訊,請參閱 通訊裝置 1.2 的類別定義。 如果您的裝置指定類別代碼 02,但 02 ...
usb_driver结构体中的id_table成员描述了这个USB驱动所支持的USB设备列表,它指向一个 usb_device_id数组,usb_device_id结构体包含有USB设备的制造商ID、产品ID、产品版本、设备类、接口类等信息及其要匹配标志成员match_flags(标明要与哪些成员匹配,包含DEV_LO、DEV_HI、 DEV_CLASS、DEV_SUBCLASS、DEV_PROTOCOL、IN...
GenericDriverInstalled,,,1 内置驱动程序将使用 usbaudio2.inf 注册以下兼容 ID。 INF USB\Class_01&SubClass_00&Prot_20 USB\Class_01&SubClass_01&Prot_20 USB\Class_01&SubClass_02&Prot_20 USB\Class_01&SubClass_03&Prot_20 请参阅子类类型的 USB 音频 2.0 规范。 带...
USB IF(USB Implementers Forum)是 USB 标准的制定者,它制定了 USB 标准,包括 USB 1.1、USB 2.0、USB 3.0 等,定义了 USB 接口的物理层、数据链路层、传输层、会话层、表示层等协议,以及 USB 设备类(Device Class)标准,常见的设备类包括 HID(Human Interface Device,人机接口设备)、MSC(Mass Storage Class,大...