usb 结构体(USB structure).docVIP

  • 21
  • 0
  • 约1.13万字
  • 约 25页
  • 2017-08-15 发布于河南
  • 举报
usb 结构体(USB structure)

usb 结构体(USB structure) 结构usb_device_id来自include/linux/h mod_devicetable。 结构usb_device_id { 98 / *这场比赛吗?* / 99 __u16 match_flags; 一百 101 *用于特定于产品的匹配;范围是包含* 102 __u16 idvendor; 103 __u16 idproduct; 104 __u16 bcddevice_lo; 105 __u16 bcddevice_hi; 一百零六 107 / * * /用于设备类比赛 108 __u8 bdeviceclass; 109 __u8 bdevicesubclass; 110 __u8 bdeviceprotocol; 一百一十一 112 / * * /用于接口类比赛 113 __u8 binterfaceclass; 114 __u8 binterfacesubclass; 115 __u8 binterfaceprotocol; 一百一十六 117 / * * /不匹配 118 kernel_ulong_t driver_info; 119 }; 上节我们注意到id_index = id-storage_usb_ids,ID我们知道,storage_probe函数的两个形参之一,而 storage_usb_ids,不是别人,正是我们曾经赋给usb_storage_driver的成员id_table的值。忘记了 id_table的可以回去看。它实际上就是一张表格,告诉全世界我这个司机支持怎样的一些设 备。storage_usb_ids同样来自司机/ USB /存储/ C中USB, 111 *本表中的条目,除了最后的表外 112 *(usb_mass_storage_class和空项),对应, 113 *线与us_unsuaul_dev_list [ ]的条目。 114 * / 一百一十五 116 #定义unusual_dev(id_vendor,id_product,bcddevicemin,bcddevicemax,\ 117 vendorname,产品名称,useprotocol,usetransport,\ 118 initfunction、旗)\ 119 { usb_device_ver(id_vendor,id_product,bcddevicemin,bcddevicemax)} 一百二十 121静态结构usb_device_id storage_usb_ids [ ] = { 一百二十二 123 #包括“unusual_devs。” 124 # undef unusual_dev 125 *所有子类值的控制/批量传输* 126 { usb_interface_info(usb_class_mass_storage,us_sc_rbc, us_pr_cb)}, 127 { usb_interface_info(usb_class_mass_storage,us_sc_8020, us_pr_cb)}, usb_interface_info这个咚咚,很显 然这是一个宏,来自include/linux/h的USB, 482 #定义usb_interface_info(Cl,SC,PR)\ 483。match_flags = usb_device_id_match_int_info,binterfaceclass =。 (CL),。 binterfacesubclass = (sc),.binterfaceprotocol = (pr) 每一个usb _ interface _ info就是构造一个struct usb _ device _ id的结构体变量, 回顾一下我们之前 给出的struct usb _ device _ id的定义, 这里实际上就是为其中的四个元素赋了值, 它们是 match _ flags, binterfaceclass, binterfacesubclass, binterfaceprotocol. match _ flag, 它又是表示什么意思? usb interface _ info这个宏貌似把所有的设 _ 备的match _ flag都给设成了usb _ device _ id _ match _ int _ info, 这是为啥? 这个宏来自 include / linux / usb.h, 435 # define usb _ device _ id _ match _ int _ info \ 436 (usb _ device _ id _ match _ int _ class | usb _ device _ i

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档