Linux USB札记
2017-04-28 08:56
267 查看
嵌入式linux内核添加USB模块(U盘)支持
使用menuconfig工具进行配置
1、Device Drivers->SCSI device support->SCSI disk support此选项必须勾选
2、Device Drivers->USB support->Support for Host-side USB
此选项选中后会出现子菜单,故必须选中
3、Device Drivers->USB support->USB Mass Storage support
此选项必须选中,否则/dev/下没有设备
4、因为我是在DM6467平台下,所以需要Device Drivers->USB support->Inventra USB Highspeed Dual Role Controller Support选项,并选择其子选项下的DaVinci
644x USB support下Driver Mode为Host
编译内核即可,下载内核后成功支持USB的热插拔及其文件系统
以上选项仅基于我自己的平台,且测试条件单一(只有一个U盘、linux内核为2.6.0.10)
EHCI和OHCI,UHCI的比较和区别
2012-07-20 23:25 34488人阅读
评论(1)
收藏
举报
interface工作
什么是 ehci?什么是 ohci?就是host controller
的接口
EHCI和OHCI的比较和区别
什么是 ehci?什么是 ohci?就是host controller
的接口.从硬件上来说,usb
设备要想工作,除了外设本身,必须还有一个咚咚叫做 usb host controller.一般来说,一个电脑里有一个
usb host controller就可以了,她就可以控制很多个设备了,比如 u
盘,比如 usb
键盘,比如 usb
鼠标.所有的外设都把自己的请求提交给usb host controller.然后让 usb host controller
统一来调度.
现在一般的USB桥接器模块有两种类型,UHCI和OHCI。在决定插入那一个桥接器模块时,可以察看/proc/pci文件来决定。。一般而言,UHCI类型的桥接器它的插入模块是uhci或usb-uhci(由内核版本决定);而对于OHCI类型的桥接器它的插入模块是ohci或usb-ohci。
uhci(universal host controller interface): Intel用在自家芯片组上的usb 1.1主控制器(host controller)的硬件实例
ehci(enhanced host controller interface): usb 2.0的主控制器标准接口。
ohci(open host controller inferface):一个不仅仅是usb用的主控制器接口标准。主要是遵循csr (configuration space register)标准。是其他厂商在设计usb
host controller时遵循的标准,如via, nec, ali,
包括nvidia等等。
ehci是满足usb 2.0 specificat
fdfa
ion里面对usb host controller (high speed)的要求的硬件设计。
为了实现USB主机功能的统一,提高系统的可靠性与可移植性,上游芯片生产厂家在确定USB标准的同时,也确定了相应的主机规范。现在用得比较广泛的有三种,其中的用于USB2.0高速设备的EHCI(Enhanced
Host Control Interface增强主机控制接口)规范是INTEL用于USB2.0高速主机的。而同是INTEL推出的UHCI(Universal
Host Control Interface 通用主机)与前Compaq
、Microsoft等推出的OHCI(Open
Host Control Interface开放主机控制接口)可用于全速与低速USB系统中,硬件的要求与系统性能、软件复杂的要求相对较低,也能够满足大部分的具有USB接口嵌入式系统的要求。而在UHCI与OHCI的对比中,UHCI对硬件的要求相对较少,但对系统的处理能力与软件的开发要求相对要高(PC机就较多地采用了UHCI);OHCI则把较多的功能定义在硬件中,软件需要处理的内容就相对容易,对系统的处理能力和系统资源的要求就低。
因此,在嵌入式的USB HOST功能中,较多地选用了遵循OHCI的规范的硬件,从而简化了系统的设计。
EHCI 驱动程序的功能包括:
符合支持 USB 2.0
的增强主机控制器接口的标准。
支持高速控制、批处理和中断传输。
目前尚不支持高速同步事务。
USB 2.0
芯片包含一个 EHCI
控制器以及一个或多个 OHCI
或 UHCI 控制器。
USB 1.1
设备插入后会动态分配给 OHCI
或 UHCI
控制器。USB 2.0 设备插入后会动态分配给 EHCI
控制器。
简单地讲,OHCI、UHCI都是USB1.1的接口标准,而EHCI是对应USB2.0的接口标准,最新的xHCI是USB3.0的接口标准。
1. OHCI(Open Host Controller Interface)是支持USB1.1的标准,但它不仅仅是针对USB,还支持其他的一些接口,比如它还支持Apple的火线(Firewire,IEEE
1394)接口。与UHCI相比,OHCI的硬件复杂,硬件做的事情更多,所以实现对应的软件驱动的任务,就相对较简单。主要用于非x86的USB,如扩展卡、嵌入式开发板的USB主控。
2. UHCI(Universal Host Controller Interface),是Intel主导的对USB1.0、1.1的接口标准,与OHCI不兼容。UHCI的软件驱动的任务重,需要做得比较复杂,但可以使用较便宜、较简单的硬件的USB控制器。Intel和VIA使用UHCI,而其余的硬件提供商使用OHCI。
3. EHCI(Enhanced Host Controller Interface),是Intel主导的USB2.0的接口标准。EHCI仅提供USB2.0的高速功能,而依靠UHCI或OHCI来提供对全速(full-speed)或低速(low-speed)设备的支持。
4. xHCI(eXtensible Host Controller Interface),是最新最火的USB3.0的接口标准,它在速度、节能、虚拟化等方面都比前面3中有了较大的提高。xHCI支持所有种类速度的USB设备(USB
3.0 SuperSpeed, USB 2.0 Low-, Full-, and High-speed, USB 1.1 Low- and Full-speed)。xHCI的目的是为了替换前面3中(UHCI/OHCI/EHCI)。
使用menuconfig工具进行配置
1、Device Drivers->SCSI device support->SCSI disk support此选项必须勾选
2、Device Drivers->USB support->Support for Host-side USB
此选项选中后会出现子菜单,故必须选中
3、Device Drivers->USB support->USB Mass Storage support
此选项必须选中,否则/dev/下没有设备
4、因为我是在DM6467平台下,所以需要Device Drivers->USB support->Inventra USB Highspeed Dual Role Controller Support选项,并选择其子选项下的DaVinci
644x USB support下Driver Mode为Host
编译内核即可,下载内核后成功支持USB的热插拔及其文件系统
以上选项仅基于我自己的平台,且测试条件单一(只有一个U盘、linux内核为2.6.0.10)
EHCI和OHCI,UHCI的比较和区别
2012-07-20 23:25 34488人阅读
评论(1)
收藏
举报
interface工作
什么是 ehci?什么是 ohci?就是host controller
的接口
EHCI和OHCI的比较和区别
什么是 ehci?什么是 ohci?就是host controller
的接口.从硬件上来说,usb
设备要想工作,除了外设本身,必须还有一个咚咚叫做 usb host controller.一般来说,一个电脑里有一个
usb host controller就可以了,她就可以控制很多个设备了,比如 u
盘,比如 usb
键盘,比如 usb
鼠标.所有的外设都把自己的请求提交给usb host controller.然后让 usb host controller
统一来调度.
现在一般的USB桥接器模块有两种类型,UHCI和OHCI。在决定插入那一个桥接器模块时,可以察看/proc/pci文件来决定。。一般而言,UHCI类型的桥接器它的插入模块是uhci或usb-uhci(由内核版本决定);而对于OHCI类型的桥接器它的插入模块是ohci或usb-ohci。
uhci(universal host controller interface): Intel用在自家芯片组上的usb 1.1主控制器(host controller)的硬件实例
ehci(enhanced host controller interface): usb 2.0的主控制器标准接口。
ohci(open host controller inferface):一个不仅仅是usb用的主控制器接口标准。主要是遵循csr (configuration space register)标准。是其他厂商在设计usb
host controller时遵循的标准,如via, nec, ali,
包括nvidia等等。
ehci是满足usb 2.0 specificat
fdfa
ion里面对usb host controller (high speed)的要求的硬件设计。
为了实现USB主机功能的统一,提高系统的可靠性与可移植性,上游芯片生产厂家在确定USB标准的同时,也确定了相应的主机规范。现在用得比较广泛的有三种,其中的用于USB2.0高速设备的EHCI(Enhanced
Host Control Interface增强主机控制接口)规范是INTEL用于USB2.0高速主机的。而同是INTEL推出的UHCI(Universal
Host Control Interface 通用主机)与前Compaq
、Microsoft等推出的OHCI(Open
Host Control Interface开放主机控制接口)可用于全速与低速USB系统中,硬件的要求与系统性能、软件复杂的要求相对较低,也能够满足大部分的具有USB接口嵌入式系统的要求。而在UHCI与OHCI的对比中,UHCI对硬件的要求相对较少,但对系统的处理能力与软件的开发要求相对要高(PC机就较多地采用了UHCI);OHCI则把较多的功能定义在硬件中,软件需要处理的内容就相对容易,对系统的处理能力和系统资源的要求就低。
因此,在嵌入式的USB HOST功能中,较多地选用了遵循OHCI的规范的硬件,从而简化了系统的设计。
EHCI 驱动程序的功能包括:
符合支持 USB 2.0
的增强主机控制器接口的标准。
支持高速控制、批处理和中断传输。
目前尚不支持高速同步事务。
USB 2.0
芯片包含一个 EHCI
控制器以及一个或多个 OHCI
或 UHCI 控制器。
USB 1.1
设备插入后会动态分配给 OHCI
或 UHCI
控制器。USB 2.0 设备插入后会动态分配给 EHCI
控制器。
简单地讲,OHCI、UHCI都是USB1.1的接口标准,而EHCI是对应USB2.0的接口标准,最新的xHCI是USB3.0的接口标准。
1. OHCI(Open Host Controller Interface)是支持USB1.1的标准,但它不仅仅是针对USB,还支持其他的一些接口,比如它还支持Apple的火线(Firewire,IEEE
1394)接口。与UHCI相比,OHCI的硬件复杂,硬件做的事情更多,所以实现对应的软件驱动的任务,就相对较简单。主要用于非x86的USB,如扩展卡、嵌入式开发板的USB主控。
2. UHCI(Universal Host Controller Interface),是Intel主导的对USB1.0、1.1的接口标准,与OHCI不兼容。UHCI的软件驱动的任务重,需要做得比较复杂,但可以使用较便宜、较简单的硬件的USB控制器。Intel和VIA使用UHCI,而其余的硬件提供商使用OHCI。
3. EHCI(Enhanced Host Controller Interface),是Intel主导的USB2.0的接口标准。EHCI仅提供USB2.0的高速功能,而依靠UHCI或OHCI来提供对全速(full-speed)或低速(low-speed)设备的支持。
4. xHCI(eXtensible Host Controller Interface),是最新最火的USB3.0的接口标准,它在速度、节能、虚拟化等方面都比前面3中有了较大的提高。xHCI支持所有种类速度的USB设备(USB
3.0 SuperSpeed, USB 2.0 Low-, Full-, and High-speed, USB 1.1 Low- and Full-speed)。xHCI的目的是为了替换前面3中(UHCI/OHCI/EHCI)。
相关文章推荐
- BootISO:从 ISO 文件中创建一个可启动的 USB 设备
- android USB如何修改VID具体实现
- 用vbs确定计算机是否有 USB 2.0 端口的代码
- Android中查看USB连接的外接设备信息的代码实例
- C#获取USB事件API实例分析
- Android USB转串口通信开发实例详解
- 详解Android USB转串口通信开发基本流程
- iOS逆向工程使用LLDB的USB连接调试第三方App
- 用u盘安装操作系统
- 给产品经理讲技术丨五分钟理解什么是接口
- 从usb启动安装linux
- 利用4G U盘安装Fedora Linux
- virtualbox usb
- 用组策略彻低禁止USB存储设备、光驱、软驱、ZIP软驱
- usb禁用原理
- USB有关的编程
- usb
- USB硬件***危险性初步分析
- 关于禁用USB存储设备,而不禁使用USB键盘,鼠标
- 用USB安装esxi