控制器负责将处理通讯中,数据的校验,分发,异常处理等主要工作。在usb2.0中我们有诸如“ehci,uhci,ohci,dwc2”等多个不同的控制器ip。其中ehci是同时兼容usb1.0,usb1.1,usb2.0等功能,而uhci,ohci则只能支持到1.1 。dwc2则是拥有otg功能的控制器 在usb3.0中,控制器则只剩了xhci,与dwc3,同样的dwc3也是拥有otg功能。
控制器负责将处理通讯中,数据的校验,分发,异常处理等主要工作。在usb2.0中我们有诸如“ehci,uhci,ohci,dwc2”等多个不同的控制器ip。其中ehci是同时兼容usb1.0,usb1.1,usb2.0等功能,而uhci,ohci则只能支持到1.1 。dwc2则是拥有otg功能的控制器 在usb3.0中,控制器则只剩了xhci,与dwc3,同样的dwc3也是拥有otg功能。
EHCI全称是Enhanced Host Controller Interface,是Intel主导的用于USB2.0的USB控制器标准。EHCI仅提供USB2.0的高速功能,至于全速和低速功能就由OHCI或UHCI来提供,EHCI规范只定义了USB主机控制器接口部分并没有定义USB设备的控制器接口规范,所以对于USB设备的接口,不同厂家实现的接口和方式都可能不同。 04、xHCI简介 xHCI...
简单说就是,EHCI定义了USB 2.0的主机控制器的规范,定义了USB 2.0的主控,需要包括哪些硬件实现,需要实现哪些功能,其也对应着对应的系统软件,所面对的是哪些接口。 EHCI对USB主控的定义,详细到了寄存器的级别了,即定义了你USB主控,都要实现哪些对应的功能和对应的寄存器有哪些,分别是何种功能等。然后对应的软件驱动人...
USB主机控制器设备(又名HCD)是连接到系统PCI总线的PCI设备,通过USB端口提供USB连接支持。根据USB技术的发展,它也被称为USB 1.x的UHCI / OHCI,USB 2.x的EHCI和USB 3.x控制器的XHCI。要使内核使用此控制器,我们需要一个USB主机控制器驱动程序,它可以设置PCI配置和DMA。上面是USB内核,实现底层USB协议栈,并使用...
EHCI HCD驱动属于HCD驱动的实例,它定义了一个ehci_hcd结构体,通常作为代码清单16.6定义的 usb_hcd结构体的私有数据(hcd_priv),这个结构体的定义位于drivers/usb/host/ehci.h中,如代码清单如下所示。 使用如下内联函数可实现usb_hcd和ehci_hcd的相互转换: ...
EHCI全称是Enhanced Host Controller Interface,是Intel主导的用于USB2.0的USB控制器标准。EHCI仅提供USB2.0的高速功能,至于全速和低速功能就由OHCI或UHCI来提供,EHCI规范只定义了USB主机控制器接口部分并没有定义USB设备的控制器接口规范,所以对于USB设备的接口,不同厂家实现的接口和方式都可能不同。 04、xHCI简介 xHCI...
该drivers/usb/ehci-hcd.c中实现了EHCI主机驱动的工作,具体的驱动只要简单调用ehci_init_driver()就可以/看一下主机的具体实现: 这个函数就是初始化hc实例_驱动程序,这个函数带的通用hc_driver ,而第二个参数可以是hc_driver实例的reset()、port_power(另外一个驱动程序)一些额外的专利数据。
, choose M here: the 101 module will be calleduhci-hcd.OHCI和UHCI虽然支持的都是1.1的控制器,但是支持的硬件范围不一样,房子、股票我们需要...版本内核的。所有与USB相关的代码都在drivers/usb目录下面。上面的Kconfig文件说的很清楚,ehci-hcd模块支持的是USB2.0控制器的高速模式,它本身并不支持全速或低速模...