RK3568 USB驱动开发_rk usb 控制器驱动

usb_host0_ehci: usb@fe380000 {
 compatible = "generic-ehci";
 reg = <0x0 0xfe380000 0x0 0x20000>;
 interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH 0>;
 clocks = <&cru HCLK_HOST0>, <&cru HCLK_HOST0_ARB>,
 <&cru SCLK_USBPHY0_480M_SRC>;
 clock-names = "hclk_host0", "hclk_host0_arb", "usbphy0_480m";
 phys = <&u2phy0_host>;
 phy-names = "usb";
 power-domains = <&power RK356x_PD_PERIHP>;
 status = "disabled";
};
usb_host0_ohci: usb@fe3a0000 {
 compatible = "generic-ohci";
 reg = <0x0 0xfe3a0000 0x0 0x20000>;
 interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH 0>;
 clocks = <&cru HCLK_HOST0>, <&cru HCLK_HOST0_ARB>,
 <&cru SCLK_USBPHY0_480M_SRC>;
 clock-names = "hclk_host0", "hclk_host0_arb", "usbphy0_480m";
 phys = <&u2phy0_host>;
 phy-names = "usb";
 power-domains = <&power RK356x、_PD_PERIHP>;
 status = "disabled";
};

RK356x HOST2 第DTS节点名称定义如下:

 RK356x HOST2 DTS 配置如下:

&u2phy1_otg {
       phy-supply = <&vcc5v0_host>;
       status = "okay";
};
&usb2phy1 {
       status = "okay";
};
&usb_host0_ehci {
       status = "okay";
};
&usb_host0_ohci {
       status = "okay";
};

2.USB 2.0 OTG 控制器 DTS

2.1.USB 2.0 OTG DTS (适配 dwc2 驱动):
usb20_otg: usb@ff580000 {
 compatible = "rockchip,rk3328-usb", "rockchip,rk3066-usb",
     "snps,dwc2";
 reg = <0x0 0xff580000 0x0 0x40000>;
 interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
 clocks = <&cru HCLK_OTG>, <&cru HCLK_OTG_PMU>;
 clock-names = "otg", "otg_pmu";
 dr_mode = "otg";
 g-np-tx-fifo-size = <16>;
 g-rx-fifo-size = <275>;
 g-tx-fifo-size = <256 128 128 64 64 32>;
 g-use-dma;
 phys = <&u2phy_otg>;
 phy-names = "usb2-phy";
 status = "disabled";
};

dr_mode:必须配置为 “host”, “peripheral” 或者 “otg”;

g-rx-fifo-size:配置 Gadget mode 的 rx fifo 大小;

g-np-tx-fifo-size:配置 Gadget mode 的 non-periodic tx fifo 大小;

g-tx-fifo-size:配置 Gadget mode 的每个 IN 端点的 tx fifo 大小(端点 0 除外);

g-use-dma:使能 Gadget 驱动使用 DMA 传输;

phys:配置 PHY 节点;

phy-names: 必须配置为 “usb2-phy”.

二.USB 3.0 控制器 DTS

1.USB 3.0 Host 控制器 DTS

USB 3.0 Host 控制器为 xHCI,集成于 DWC3 OTG IP 中,所以不用单独配置 dts,只需要配置 DWC3 节 点,并且设置 DWC3 的 dr_mode 属性为 dr_mode = "otg"或者 dr_mode = “host”,就可以使能 xHCI 控制 器。

2.USB 3.0 OTG 控制器 DTS

usbdrd3_0: usb0 {
        compatible = "rockchip,rk3399-dwc3";
        clocks = <&cru SCLK_USB3OTG0_REF>, <&cru SCLK_USB3OTG0_SUSPEND>,
## 最后

**自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。**

**深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。**

**因此收集整理了一份《2024年嵌入式&物联网开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**

![img](https://img-blog.csdnimg.cn/img_convert/b17a48e68037bbeda2e2d36107347389.png)

![img](https://img-blog.csdnimg.cn/img_convert/0df54b1d197e2e35713fd131965ec093.jpeg)

![img](https://img-blog.csdnimg.cn/img_convert/43035c711574885d7268380ab5b3bbc3.png)

 ![img](https://img-blog.csdnimg.cn/img_convert/d76e1850e9f3a091854036e94389d6ad.png)

![img](https://img-blog.csdnimg.cn/img_convert/0e97a938abd1c00c3134f8b2a830094d.png)

![img](https://img-blog.csdnimg.cn/img_convert/c7338f79c8ad149a8717bdc15475bcd6.png)

![](https://img-blog.csdnimg.cn/img_convert/5b56da3a32a1062db7598ec798b39dab.png)

 

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上嵌入式&物联网开发知识点,真正体系化!**

[**如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!**](https://bbs.csdn.net/topics/618654289)

**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**!!


需要这份全套学习资料的朋友可以戳我获取!!**](https://bbs.csdn.net/topics/618654289)

**由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**!!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值