




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、USB设备加载技术一、 确定任务1、 掌握Linux系统下USB内核及USB主控制器驱动模块的配置和编译。2、 了解Linux系统下USB主机的软件架构。二、 学习内容 1、 阅读S5PV210数据手册,了解USB主机控制器的使用。2、配置内核及支持USB接口。三、基础知识1、 硬件原理:a) 原理图:OTG系统架构图:寄存器简介:a) S3PV210处理器自带有USB主机控制器,详细相关原理请读者自行查找资料。b) USB物理层控制寄存器USB时钟控制寄存器四、基本原理1、 基础知识:因为S3C6410处理器的USB主机控制器兼容于OHCI标准,请读者自行参考OHCI规范。2、 驱动原理:L
2、inux系统2.6.版本内核中包含了功能全面的USB主机内核软件,通过该内核将USB的软件与硬件隔离开。对于不同的USB主机控制器只需要编写与硬件相关的驱动程序就可以在Linux系统下使用。USB内核提供了两套API,分别为高层API和低层API,如图所示。高层API是与硬件无关的,由应用程序使用的函数集;低层API也就是与硬件底层USB主机控制器相关的函数集。不同的USB主机控制器使用低层API编写其驱动程序。五、代码设计 与编译a) 驱动代码:/driver/host/ohci-s5pv210.c在/driver /usb/host/目录下的ohci-hcd.c中:#if defined(
3、CONFIG_ARCH_S5PV210) | defined(CONFIG_ARCH_S5P6450) | defined(CONFIG_ARCH_S5PV310)#include "ohci-s5pv210.c"#define PLATFORM_DRIVERohci_hcd_s5pv210_driver /定义了一个S5PV210的USB控制器驱动程序结构体#endifstatic int _init ohci_hcd_mod_init(void)#ifdef PLATFORM_DRIVERretval = platform_driver_register(&PL
4、ATFORM_DRIVER); /向USB系统注册USB控制器驱动程序if (retval < 0)goto error_platform;#endifclear_bit(USB_OHCI_LOADED, &usb_hcds_loaded);b) USB主机端探测程序:当注册了主机端的设备驱动程序之后,由总线驱动程序调用ohci_hcd_s5pv210_drv_probe完成OHCI设备的初始化和添加:static int ohci_hcd_s5pv210_drv_probe(struct platform_device *pdev)hcd = usb_create_hcd(&a
5、mp;ohci_s5pv210_hc_driver, &pdev->dev, "s5pv210"); /创建hcd数据结构存储空间s5pv210_start_ohc(); /初始化hcd控制器。ohci_hcd_init(hcd_to_ohci(hcd); /hcd结构体初始化retval = usb_add_hcd(hcd, pdev->resource1.start,IRQF_DISABLED | IRQF_SHARED); /向系统注册hcd控制器s5pv210_stop_ohc(); /停止hcd控制器3、 驱动程序编译:c) 进入内核目录,ma
6、ke menuconfig -USB support 添加USB主机控制器支持,如下图配置:d) 添加SCSI设备支持:进入SCSI devices upport ,将SCSI disk suport 编译进内核。e) 添加USB设备支持,进入USB support菜单,对大容量类的驱动配置为模块。保存配置退出,make之后,主机端的驱动被编译进系统。(实验箱的内核已经包涵该驱动),在drivers/usb/storage/目录下得到usb-storage.ko文件。将编译好的内核镜像zImage烧写到实验箱的FLASH。六、运行结果1、 将U盘插入USB host口,终端显示:rootGEC
7、-210 /sdcard# usb 1-1.3: USB disconnect, address 4usb 1-1.3: new high speed USB device using s5p-ehci and address 5usb 1-1.3: New USB device found, idVendor=cd12, idProduct=ef18usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3usb 1-1.3: Product: Flash usb 1-1.3: Manufacturer: USB u
8、sb 1-1.3: SerialNumber: 8618F2CAA49F02C3scsi2 : usb-storage 1-1.3:1.0scsi 2:0:0:0: Direct-Access USB Flash 1.00 PQ: 0 ANSI: 2sd 2:0:0:0: sda 4098048 512-byte logical blocks: (2.09 GB/1.95 GiB)sd 2:0:0:0: sda Write Protect is offsd 2:0:0:0: sda Assuming drive cache: write throughsd 2:0:0:0: Attached scsi generic sg0 type 0sd 2:0:0:0: sda Assuming drive cache: write throughsda: sda1sd 2:0:0:0: sda Assuming drive cache: write throughsd 2:0:0:0: s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 个人珠宝买卖合同(标准版)
- 烟草江苏公司招聘考试真题2025
- 2025年浏阳市市级机关公开遴选考试真题
- 重难点解析人教版八年级物理上册第5章透镜及其应用定向训练试题(解析卷)
- 难点详解人教版八年级物理上册第4章光现象难点解析练习题(详解)
- 2025年人教版高中英语从句单选题30题及答案
- 2025年勘察设计注册环保工程师考试(物理污染控制专业案例)全真冲刺试题及答案
- 综合解析人教版八年级上册物理物态变化《温度》专项训练试卷(解析版含答案)
- 2025年数控专业面试试题及答案
- 服务方案进度计划质量保障措施(4篇)
- 劳动价值观测试理解劳动的意义与价值
- 合伙开店合同终止协议书
- (正式版)DB15∕T 1987-2020 《蒙古族传统奶制品 阿尔沁浩乳德(酸酪蛋)生产工艺规范》
- 2025年中考数学真题完全解读(上海卷)
- 商户门牌设计方案(3篇)
- 学堂在线 大数据系统基础 章节测试答案
- 技术人员与客户沟通技巧
- 店面库房管理办法
- 人教七年级英语上册Reading Plus《Unit 3》课件
- 《生成式人工智能》 课件 第4章 Transformer模型
- 双镜联合治疗肾结石讲课件
评论
0/150
提交评论