USB
asmxpl
这个作者很懒,什么都没留下…
展开
-
USB详解
USB详解usb作为一种串行接口,应用日益广泛。如同每个工程设计人员必须掌握I2C,RS232这些接口一样,我们也必须掌握usb.但是usb的接口协议实在有点费解,linux uhci驱动作者之一Alan Stern曾经就说过“The USB documentation is downright evil. Most of it is just crap, written b转载 2014-03-14 07:33:35 · 583 阅读 · 0 评论 -
关于f_mass_storage.c的文章
原文地址:http://blog.csdn.net/HellDevil/archive/2010/05/18/5604421.aspxhttp://blog.csdn.net/HellDevil/archive/2010/05/06/5561918.aspxhttp://blog.csdn.net/HellDevil/archive/2010/01/19/5213888.aspxhtt转载 2014-03-24 20:28:27 · 795 阅读 · 0 评论 -
USB设备驱动开发-USB协议相关(三)
一、USB设备标准请求USB设备标准请求是为所有USB设备定义的操作,即使设备还没有被分配地址或还没有被配置都必须相应设备标准请求。标准特性选择子特性选择子用于对特性使能或设置特性,若一个不支持或非法的请求发送给USB设备,设备将在数据或状态传输阶段返回STALL作为响应。若设备的默认控制通道由于错误不能通信,则设备将被reset来清除错误状态并重启默认控制通道转载 2014-03-23 07:39:07 · 406 阅读 · 0 评论 -
USB设备驱动开发-USB协议相关(一)
一、USB设备模型 USB设备模型从物理上分为两个部分:主机(host)控制端作为主机端,驱动的设备是USB Host Controller;外设端被称为设备端,驱动的设备是USB Device Controller。因此,USB设备驱动应该分为主机端驱动和设备端驱动两部分,只是由于USB协议的主从定位思想,从设备只需要响应主机控制器的请求,不能主动发起请求,通常所说的USB驱转载 2014-03-23 07:37:40 · 577 阅读 · 0 评论 -
USB设备驱动开发-USB协议相关(二)
一、USB设备通用操作 1. 热插拔在热插拔中,USB HUB扮演着很重要的角色,HUB向主机报告端口的状态改变,主机才能对相应的动作采取相应的操作; 2. 地址分派当USB设备插入后,主机会对USB设备分配一个独一无二的地址,同时resetUSB设备并对HUB的相应端口使能; 3. 配置(Configurati转载 2014-03-23 07:38:17 · 406 阅读 · 0 评论 -
USB设备驱动程序-USB Gadget Driver(四)
Gadget 功能层Gadget功能层完成USB设备的具体功能,其表现的形式各不相同,如键盘、鼠标、存储和网卡等等。功能层不仅涉及到Gadget驱动相关的内容,还涉及到其功能相关的内核子系统。如存储还涉及到内核存储子系统,网卡还涉及到网络驱动子系统。因此,Gadget功能的代码非常复杂。这里以zero.c为例,这个模块只是简单地将接收的数据回显回去。一、数据结构首先需要转载 2014-03-23 07:35:18 · 1087 阅读 · 0 评论 -
USB设备驱动程序-USB Gadget Driver(三)
Gadget设备层 这一层是可选的,介于UDC驱动层和Gadget功能层之间。主要源码在composite.c和composite.h文件中,设备层其实和硬件无关,主要实现一些通用性的代码,减少gadget功能层的代码重复工作。Gadget设备层其中承上启下的作用,联系Gadget功能层和UDC驱动层。 将composite源码独立出来,还为复合设备的实现提供了一个转载 2014-03-23 07:33:28 · 1800 阅读 · 0 评论 -
USB设备驱动程序-USB Gadget Driver(二)
1. UDC驱动是作为platform driver向platform子系统注册的,因此UDC驱动首先就需要实现struct platform_driver结构中的函数成员:struct platform_driver { int (*probe)(struct platform_device *); //驱动和设备绑定转载 2014-03-23 07:18:49 · 1122 阅读 · 0 评论 -
USB设备驱动开发-USB Gadget Driver(一)
转自:http://blog.chinaunix.net/uid-14518381-id-3904999.html一、Linux USB Gadget Driver功能 为了与主机端驱动设备的USB Device Driver概念进行区别,将在外围器件中运行的驱动程序称为USB Gadget Driver。其中,Host端驱动设备的驱动程序是master或者client转载 2014-03-23 07:18:04 · 678 阅读 · 0 评论 -
Linux下USB MASS STORAGE驱动的分析和改造
From:http://www.csksoft.net/blog/post/linux_storage_mod.html这原本是我这学期OS课程设计最后一次的作业,因为比较有意思,所以就把它公布出来吧。作业要求:开发Linux下的usb存储设备的驱动,仅需支持自己的u盘即可。下面是我写的驱动,他基于linux下自带的usb-storage驱动(/driver/usb/s转载 2014-03-21 18:10:21 · 3099 阅读 · 0 评论 -
Linux-USB Gadget : Part 4: 最简单的 gadget驱动:g_zero
Linux-USB Gadget : Part 4: 最简单的 gadget驱动:g_zero作者: zjujoe 转载请注明出处Email:zjujoe@yahoo.comBLOG:http://blog.csdn.net/zjujoe前言前面讲过,gadgetapi 提供了usb devicecontroller 驱动和上层gadget驱动交互的接口。 UDC 驱动是服务提转载 2014-03-21 10:58:39 · 1206 阅读 · 0 评论 -
USB基础书籍资料推荐
中文参考书籍:1. USB系统架构图解,陈乃塘,陆克文化事业有限公司。2. USB2.0 设计应用全揽,廖惠如总编辑,陆克文化事业有限公司。3. USB理论规范与设计,郭士秋编着,儒林出版社,957-499-211-X。4. USB系统架构,Don Anderson原著,陈振荣编译,碁峰。5. 精通USB 2.0硬件设计,萧世文编着,文魁,P2097。6. USB 2.0程转载 2014-03-24 20:30:37 · 2689 阅读 · 0 评论