导读就爱阅读网友为您分享以下“linux下USB大容量存储设备驱动分析与实现”资讯希望对您有所帮助感谢您对92to.com的支持!linux下USB大容量存储设备驱动分析与实现
【摘要】本文介绍了linux USB子系统架构及USB协议重点分析了linux下USB大容量存储设备驱动程序并结合U盘特点对设备驱动程序做了可靠的裁剪 以交叉编译和控制台调试的方式在TQ2440 ARM开发板上成功实现了设备驱动模块的加载与卸载最终达到了U盘热插拔和读写的目的。
【关键词】USB大容量存储设备设备驱动
1
USB universal serial bus通用串行总线是一种高速、支持即插即用和热插拔的总线标准 由inte l、 m ic ro so ft等公司制定适用于多种USB外围设备U盘、USB键盘鼠标、USB摄像头等与主机之间的高速数据传输 USB2.0协议规定的最大传输速率可达480Mb/s突破了传统串行总线的带宽限制。
Linux作为一种性能稳定可定制兼容性强的开源操作系统在嵌入式设备中得到了广泛应用且开发者可以方便地获得lin u x社区提供的强大技术支持从而能够大大降低开发成本。
本文以天嵌公司的TQ2440 ARM开发板为硬件平台 以linux2.6.30为操作系统内核通过串口工具secure CRT使用金士顿U盘作为USB存储设备 的分析并实现了lin u x 下USB大容量存储设备驱动。
1.USB子系统
类似于linux scsi子系统 USB子系统也采用树形拓扑结构层级关系因系统功能的不同而不同拓扑模型如图1所示。系统作为主机时拓扑层级为 USB设备驱动、 USB核
2
心、 USB主控制器驱动作为从设备时层级为 Gadget驱动、 Gadget API、 USB设备控制器驱动。本文以linux为主机系统 U盘为从设备 因此只讨论主机侧拓扑结构。
USB设备驱动负责向USB核心注册设备驱动、管理USB 设备的探测与断开、实现与USB核心通信 USB核心提供一系列数据结构宏定义和函数来抽象底层硬件设备为设备驱动和主控器驱动提供特定的接口读取并解析USB设备和配置描述符 为USB设备分配地址转发设备驱动数据包配置设备维护设备链表和设备驱动链表维护设备信息 USB主控制器驱动负责与核心层通信、管理主控制器与设备的实际通信。
通常厂商提供主控制器驱动而linux实现了USB核心
usb core部分 因此本文将研究USB设备驱动。
2.USB协议
2.1设备配置接口端点
3
百度搜索“就爱阅读”,专业资料,生活学习,尽在就爱阅读网92to.com,您的在线图书馆
4
今天早上相比很多网友和一样收到来自Linode的庆祝18周年的邮件信息。和往年一样,他们会回顾在过去一年中的成绩,以及在未来准备改进的地方。虽然目前Linode商家没有提供以前JP1优化线路的机房,但是人家一直跟随自己的脚步在走,确实在云服务器市场上有自己的立足之地。我们看看过去一年中Linode的成就:第一、承诺投入 100,000 美元来帮助具有社会意识的非营利组织,促进有价值的革新。第二、发...
金山云618年中促销活动正在进行中!金山云针对企业级新用户优惠力度比普通个人用户优惠力度要大,所以我们也是推荐企业新用户身份购买金山云企业级云服务器,尽量购买3年配置的,而不是限时秒杀活动中1年的机型。企业级用户购买金山云服务器推荐企业专区:云服务器N3 2核4G云服务器,1-5M带宽,827.64元/3年,性价比高,性能稳定!点击进入:金山云618年中促销活动目前,金山云基础型E1云服务器2核4...
螢光云官網萤光云成立于2002年,是一家自有IDC的云厂商,主打高防云服务器产品。在国内有福州、北京、上海、台湾、香港CN2节点,还有华盛顿、河内、曼谷等海外节点。萤光云的高防云服务器自带50G防御,适合高防建站、游戏高防等业务。本次萤光云中秋云活动简单无套路,直接在原有价格上砍了一大刀,最低价格16元/月,而且有没有账户限制,新老客户都可以买,就是直接满满的诚意给大家送优惠了!官网首页:www....