50-平台实践04:DWC3控制器配置与降速 专栏总目录文章目录概述一、设备树配置1.1 DWC3节点配置1.2 maximum-speed属性二、相关结构体2.1 USB速度枚举2.2 DWC3结构体2.3 Gadget结构体三、最大速率设置流程3.1 设置链路3.2 代码路径四、当前速率设置4.1 连接完成中断4.2 速度协商流程五、速率控制总结5.1 速率决定因素5.2 速率限制关系六、常见问题Q1: 如何限制USB为2.0高速模式?Q2: 为什么实际速率比配置的低?Q3: DWC3速度枚举值对应关系?七、知识总结7.1 核心要点概述DWC3(DesignWare USB 3.0 Controller)是Synopsys设计的USB 3.0控制器IP,广泛应用于高通、RK等平台。通过设备树和驱动代码可以控制USB的最大速率和当前工作速率。一、设备树配置1.1 DWC3节点配置dwc3@a600000 { compatible = "snps,dwc3"; reg = 0x0a600000 0xcd00; interrupts = 0 133 0; usb-phy = usb2_phy, usb_qmp_phy; dr_mode = "otg"; maximum-speed = "super-speed-plus"; /* 关键: 控制最大速率 */ tx-fifo-resize; };1.2 maximum-speed属性值对应速度说明“low-speed”USB_SPEED_LOWUSB 1.1