
This series adds preliminary support for USB 3.0 using the Dual Role Devices DRD based on DWC3 controller
One controller is in host mode :
1 Hub (5 Gb/s, 0mA) | U-Boot XHCI Host Controller | +-2 Mass Storage (480 Mb/s, 100mA) TDK LoR TF10 C900587416E2C552
The other is in gadget mode, and to test it out, I enabled rockusb
Currently it works to remotely reboot the board e.g. :
$ sudo rkdeveloptool ld DevNo=1 Vid=0x2207,Pid=0x350b,LocationID=601 Maskrom $ sudo rkdeveloptool rd Reset Device OK.
=> rockusb 0 mmc 0 dwc3-generic-peripheral usb@fc000000: request 00000000edf44580 was not queued to ep1in-bulk rockkusb set reboot flag: 0 resetting ...
For a typeC to typeC gadget connection, it only works in one orientation. To get orientation flipping support, another patch series is required, for the fairchild fusb driver and type C stack.
Current patch series also adds the USB-DP combo phy driver.
The DWC3 controllers each have two PHYs, one for USB 2.0 (the inno2 usb2 phy) and the usbdp for USB 3.0 .
Eugen Hristev (2): ARM: dts: rockchip: rk3588-rock-5b-u-boot: add USB3 support configs: rock5b-rk3588: enable USB 3.0 controller, command, gadget
Frank Wang (1): phy: rockchip: add usbdp combo phy driver
Joseph Chen (1): ARM: dts: rockchip: rk3588: add support for USB 3.0 devices
arch/arm/dts/rk3588-rock-5b-u-boot.dtsi | 197 +++++ arch/arm/dts/rk3588-u-boot.dtsi | 93 +++ arch/arm/dts/rk3588s-u-boot.dtsi | 105 +++ configs/rock5b-rk3588_defconfig | 14 + drivers/phy/rockchip/Kconfig | 7 + drivers/phy/rockchip/Makefile | 1 + drivers/phy/rockchip/phy-rockchip-usbdp.c | 880 ++++++++++++++++++++++ include/linux/usb/phy-rockchip-usbdp.h | 70 ++ 8 files changed, 1367 insertions(+) create mode 100644 drivers/phy/rockchip/phy-rockchip-usbdp.c create mode 100644 include/linux/usb/phy-rockchip-usbdp.h