在设备树中,设置dr_mode = "otg"属性,则dwc3控制器初始化的时候会将控制器设置为USB_DR_MODE_OTG模式,同时调用dwc3_host_init和dwc3_gadget_init函数初始化主机模式和设备模式所需的资源,控制器后续可以动态切换为主机模式和设备模式。dwc3 USB3.0控制器的初始化过程如下图所示,重点分析初始化设备模式的过程,主...
在设备树中,设置dr_mode = "otg"属性,则dwc3控制器初始化的时候会将控制器设置为USB_DR_MODE_OTG模式,同时调用dwc3_host_init和dwc3_gadget_init函数初始化主机模式和设备模式所需的资源,控制器后续可以动态切换为主机模式和设备模式。dwc3 USB3.0控制器的初始化过程如下图所示,重点分析初始化设备模式的过程,主...
USB3.0 DRD控制器既可以做Host,也可以做Device,向下兼容USB2.0和USB1.0。USB3.0 DRD控制器的内部结构如下图所示;总线接口为AXI或AHB;USB3.0和USB2.0及USB1.0硬件上独立;USB3.0控制器数字逻辑部分对应SS MAC,PHY接口为PIPE,PHY为USBDP PHY,和DP使用同一个PHY;USB2.0和USB1.0控制器数字逻辑部分对应HS/FS/LS MAC,...
dr_mode 属性用于指定 USB 控制的工作模式,drm_mode可以选择host peripheral,otg模式 默认的方式是otg,这里将其设置为 host 模式(原理图上也默认要求host模式)。 3.2 4G模块的dts 添加 在system-usr.dtsi中修改添加4G dts 配置。 /{ ... regulators { compatible = "simple-bus"; ... rest_4g:4g-rest{ ...
由于usbdrd3_0设备树节点是根节点的子节点,且有compatible属性,因此内核会自动将其转换为platform_device,然后和对应的驱动进行匹配,而其子节点usbdrd_dwc3_0内核则不会处理,由其父节点usbdrd3_0的驱动处理。 代码语言:javascript 复制 usbdrd3_0:usb0{compatible="rockchip,rk3399-dwc3";clocks=<&cruSCLK_...
&usb0 { status = "okay"; dr_mode = "host"; }; &usb1 { status = "okay"; dr_mode = "host"; }; 进入系统后lsusb看到如下信息: Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub ...
③USB 设备树配置参考: &usb_otg { dr_mode = "host"; // peripheral status = "okay"; }; &usbphy { status = "okay"; }; 除引用节点外,一定要添加ochi/echi,不然USB插入会没有反应: soc { ehci0: usb@01c1a000 { compatible = "allwinner,sun8i-v3s-ehci", "generic-ehci"; ...
clocks = <&ccu CLK_USBD>, <&ccu CLK_USB_PHY0>;clock-names = "otg";resets = <&rst RESET_USBD>, <&rst RESET_USBPHY0>;reset-names = "dwc2", "dwc2-ecc";g-rx-fifo-size = <380>;g-np-tx-fifo-size = <600>;g-tx-fifo-size = <8 8>;dr_mode = "peripheral";status = ...
③USB 设备树配置参考: &usb_otg { dr_mode = 'host'; // peripheral status = 'okay';};&usbphy { status = 'okay';}; 除引用节点外,一定要添加ochi/echi,不然USB插入会没有反应: soc { ehci0: usb@01c1a000 { compatible = 'allwinner,sun8i-v3s-ehci', 'generic-ehci'; reg = <0x01c1a...
usb0{(&U) 状态="正常"; DR_MODE ="主机"; }; USB1{(&S) 状态="正常"; DR_MODE ="主机"; }; cppi41dma{.cppi41dma} 状态="正常"; }; i2c2{(&I) pinctrl-names ="default"; pinctrl-0 =<&i2c2_PINs>; 状态="正常"; 时钟频率=<100000 >; ...