USB设备---URB请求快】的更多相关文章

1.urb 结构体USB 请求块(USB request block,urb)是USB 设备驱动中用来描述与USB 设备通信所用的基本载体和核心数据结构,非常类似于网络设备驱动中的sk_buff 结构体. struct urb { /* 私有的:只能由USB 核心和主机控制器访问的字段 */ struct kref kref; /*urb 引用计数 */ void *hcpriv; /* 主机控制器私有数据 */ atomic_t use_count; /* 并发传输计数 */ u8 rejec…
1.urb 结构体 USB 请求块(USB request block,urb)是USB 设备驱动中用来描述与USB 设备通信所用的基本载体和核心数据结构,非常类似于网络设备驱动中的sk_buff 结构体. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 struct urb { /* 私有的:只能由USB 核心和主机控制器访问的字段 */ struct kref kref; …
USB设备请求命令 :bmRequestType + bRequest + wValue + wIndex + wLength 编号 值  名称 (0) 0  GET_STATUS:用来返回特定接收者的状态(1) 1  CLEAR_FEATURE:用来清除或禁止接收者的某些特性 (x) 2 为将来保留(2) 3  SET_FEATURE:用来启用或激活命令接收者的某些特性 (x) 2 为将来保留(3) 5  SET_ADDRESS:用来给设备分配地址(4) 6  GET_DESCRIPTOR:用…
在Linux 内核中,使用usb_driver 结构体描述一个USB 设备驱动,usb_driver 结构体的定义如代码清单20.11 所示.代码清单20.11 usb_driver 结构体 struct usb_driver { const char *name; /* 驱动名称 */ int (*probe) (struct usb_interface *intf, const struct usb_device_id *id); /*探测函数*/ void (*disconnect) (s…
usb驱动分为通过usbfs操作设备的用户空间驱动,内核空间的内核驱动.两者不能同时进行,否则容易引发对共享资源访问的问题,死锁!使用了内核驱动,就不能在usbfs里驱动该设备. 下面转载的一篇分析usb-skeleton.c文章. 初次接触与OS相关的设备驱动编写,感觉还挺有意思的,为了不至于忘掉看过的东西,笔记跟总结当然不可缺,更何况我决定为嵌入式卖命了.好,言归正传,我说一说这段时间的收获,跟大家分享一下Linux的驱动开发.但这次只先针对Linux的USB子系统作分析,因为周五研讨老板催…
在前面的文章中,我们已经给出了USB协议的链接地址,从这篇文章起,我们会涉及到许多USB 1.1的内容,我们的指导思想是先从熟悉USB 1.1协议入手,先使用现成的HCD和USBD,直接面对客户端驱动编程,尽快看到成果,使读者对USB的开发充满信心,进而去研究USBD和HCD的编程方法.请读者自行阅读协议,文章中有关协议的详细情况,由于会涉及非常多的文字,恕不能过多解释. 1.USB系统主机端的软件结构  一般来说,教科书或者协议上都会把USB主机端的软件说成有三层,第一层叫主机控制器驱动程序H…
USB设备驱动 ·  )USB Hub:每个USBHost控制器都会自带一个USB Hub,被称为根(Root)Hub.这个根Hub可以接子(Sub)Hub,每个Hub上挂载USB设备.一般PC有8个USB口,通过外接USB Hub,可以插更多的USB设备.当USB设备插入到USBHub或从上面拔出时,都会发出电信号通知系统.这样可以枚举USB设备,例如当被插入的时候,系统就会创建一个USB物理总线,并询问用户安装设备驱动.如图17-4所示为一个典型的USB Hub的示意图. 是控制管道,管道1…
USB 设备驱动: 一.USB 描述符:(存在于USB 的E2PROM里面) 1.  设备描述符:struct usb_device_descriptor 2.  配置描述符:struct usb_config_descriptor 3.  接口描述符:struct usb_interface_descriptor 4.  端点描述符:struct usb_endpoint_descriptor 通过命令lsusb 列出系统中所有的USB设备: 通过命令lsusb -v 列出系统中所有的USB设…
症状: 当你发现"移动硬盘图标"经常无故消失,又自己出现时. 你可以把这个现象称之为"掉电" or "掉驱动". 遇到这种情况,相当不爽. 比如"拷贝大文件"快完成的时候,掉之,那就真的是"我去...". 这种现象在笔记本上尤为常见,台式机相对比较少. 怎么解决呢? 解决方案: 1.取消勾选"允许计算机关闭此设备以节约电源(A)". 从"我的电脑" or "…
USB在接入系统的时候,以0的设备ID和主机通信,然后由主机为其分配新的ID. 在主机端,D+和D-都是下拉接地的.而设备端的D-接上拉时,表明此设备为高速设备:12M/s. D+接上拉时则是全速设备:480M/S. PC的USB口中的D+D-有15K的下拉电阻,未接USB设备时,皆为低电平. 而设备中的D+D-则是1.5K的上拉电阻.一旦接入PC中,电脑就会知道有设备接入. USB是主从结构.所有的传输都是由主机发起的,即USB设备没有主动通知USB主机的能力. USB的传输类型: 控制传输.…