linux-usb软件系统架构
来源:互联网 发布:mac网络恢复 最新 编辑:程序博客网 时间:2024/06/05 02:25
1.软件系统架构
USB主控制器,芯片里面自带了得。为了让USB主控制器运行,所有有USB主控制器驱动。
USB核心,内核提供好的USB协议之类的。USB设备驱动是针对插到接口的设备去工作的软件。
主机插得是HOST接口
开发板插的是SLAVE接口
Gadget驱动:让USB设备工作成特殊的状态(网卡,串口等)
2.USB-MassStorage驱动体验
在tq2440-kernel中选择Device Drivers -> USB support ->support for host…->OSCI HCD support(usb1.0的协议)
加载上U盘的驱动->USB Mass Storage support(USB设备驱动)
因为U盘比较特殊,我们还需要配置一些其他信息:General setup --->[*] Configure standard kernel features (for small systems) --->[*] Support for hot-pluggable devices (NEW)
hot-pluggable热插拔
U盘属于块设备、磁盘设备,选择支持块设备选项:Device Drivers --->Block devices ---><*> Low Performance USB Block driver
Device Drivers ->USB support ->USB gadget support(设备控制器驱动)
USB Gadget Drivers
Ethernet Gadget (with CDC Ethernet support)
这只好后需要重新编译内核的模块在开发板中设置usb的网络IP
在虚拟机中能PING通。
USB主控制器,芯片里面自带了得。为了让USB主控制器运行,所有有USB主控制器驱动。
USB核心,内核提供好的USB协议之类的。USB设备驱动是针对插到接口的设备去工作的软件。
主机插得是HOST接口
开发板插的是SLAVE接口
Gadget驱动:让USB设备工作成特殊的状态(网卡,串口等)
2.USB-MassStorage驱动体验
在tq2440-kernel中选择Device Drivers -> USB support ->support for host…->OSCI HCD support(usb1.0的协议)
加载上U盘的驱动->USB Mass Storage support(USB设备驱动)
因为U盘比较特殊,我们还需要配置一些其他信息:General setup --->[*] Configure standard kernel features (for small systems) --->[*] Support for hot-pluggable devices (NEW)
hot-pluggable热插拔
U盘属于块设备、磁盘设备,选择支持块设备选项:Device Drivers --->Block devices ---><*> Low Performance USB Block driver
同时选择SCCI选项:Device Drivers --->SCSI device support ---><*> SCSI device support<*> SCSI disk support<*> SCSI generic support
U盘必须还要有文件系统的支持:File systems --->DOS/FAT/NT Filesystems --->
<*> MSDOS fs support
<*> VFAT (Windows-95) fs support
(936) Default codepage for FAT
(cp936) Default iocharset for FAT
U盘必须还要有文件系统的支持:File systems --->DOS/FAT/NT Filesystems --->
<*> MSDOS fs support
<*> VFAT (Windows-95) fs support
(936) Default codepage for FAT
(cp936) Default iocharset for FAT
Partition Types --->
[*] PC BIOS (MSDOS partition tables) support
Native Language Support --->
<*> Simplified Chinese charset (CP936, GB2312)
<*> NLS UTF8
重新编译后,可以把U盘插到开发板中去。
出错了,暂时找不到原因。估计和yaffs文件系统有关系:
3.RNDIS驱动体验
把USB口模拟成网口重新编译后,可以把U盘插到开发板中去。
- mount /dev/uba /mnt/
点击(此处)折叠或打开
- yaffs: dev is 188743680 name is "uba"
- yaffs: passed flags ""
- yaffs: Attempting MTD mount on 180.0, "uba"
- yaffs: dev is 188743680 name is "uba"
- yaffs: passed flags ""
- yaffs: Attempting MTD mount on 180.0, "uba"
- mount: mounting /dev/uba on /mnt failed: Invalid argument
3.RNDIS驱动体验
Device Drivers ->USB support ->USB gadget support(设备控制器驱动)
USB Gadget Drivers
Ethernet Gadget (with CDC Ethernet support)
这只好后需要重新编译内核的模块
- make ARCH=arm CROSS_COMPILE=arm-linux-
- make uImage ARCH=arm CROSS_COMPILE=arm-linux-
- ifconfig usb0 192.168.1.30
0
上一篇:USB协议分析
下一篇:USB驱动程序设计
相关热门文章
- SHTML是什么_SSI有什么用...
- 查看linux中某个端口(port)...
- 卡尔曼滤波的原理说明...
- shell中字符串操作
- 关于java中的“错误:找不到或...
给主人留下些什么吧!~~
评论热议
阅读全文
0 0
- linux-usb软件系统架构
- Linux-USB驱动(4)-LinuxUSB系统架构
- USB系统架构
- linux 内核软件架构之子系统
- linux usb 架构
- linux USB架构
- Linux USB架构浅谈
- Linux USB架构
- Linux USB总线架构
- Linux USB架构浅谈
- USB架构概述之一USB系统描述
- linux 系统usb问题。
- LINUX USB 系统(1)
- LINUX USB 系统(2)
- LINUX USB 系统(3)
- usb linux 系统 (4)
- linux中的usb系统
- LINUX USB 系统(1)
- linux常用进程及作业管理常用命令
- USB总线介绍
- USB协议分析
- hibernate 第一记<hibernate详解及配置信息 使用步骤>
- 基于javascript的机器智能框架:deeplearn.js
- linux-usb软件系统架构
- USB驱动程序设计
- IDEA Tomcat Debug启动非常慢
- 初识sed和gwak
- 信号和槽函数的基础实现
- 最常用的1000个Java类(附代码示例)
- sed编辑器基础
- nucleus plus代码学习
- nucleus学习
原创粉丝点击
热门IT博客
热门问题
老师的惩罚
人脸识别
我在镇武司摸鱼那些年
重生之率土为王
我在大康的咸鱼生活
盘龙之生命进化
天生仙种
凡人之先天五行
春回大明朝
姑娘不必设防,我是瞎子
吉他六根弦标准音
六弦吉他入门指法
六弦琴是什么乐器的别称
吉他六弦调音
六弦之首
宝贝御六夫
六御
三清六御
御定六壬
六御江湖 神之哀伤
六盒御方多少钱一盒
古代六艺中的御指什么
宝贝御六夫 梦幽静
乘天地之正御六气之辩
六御 易倾尘
古代六艺御指的是什么
2019御馔津六个位置御魂搭配
西游之皇狮传 乾御六龙
我在大唐养神宠 御兽六
新希望六个旗下品牌
山水六旗海盐项目烂尾
星期六女鞋旗下品牌
星期六旗下女鞋
星期六旗下有哪些品牌
星期六旗下品牌
海盐山水六旗停工了
耐克旗下品牌
六景霞义山
六景
富岳三十六景
六景至宾阳高速公路
六景到南宁班车发车表
三国奇才徐庶 六景
六月作品
权宠悍妻六月
六月浩雪作品
六月六看谷秀意思
单机六月雪斗地王
六月斗地
六月宝宝辅食食谱
六月观主作品