From 02b9bc288b520c07612c945d13da651bd871e90c Mon Sep 17 00:00:00 2001 From: Fabio Estevam Date: Wed, 8 Jul 2026 21:50:05 -0300 Subject: [PATCH] arm64: dts: rockchip: Enable USB device mode on rk3588s-roc-pc The USB3 OTG controller on the ROC-PC can be used in device mode, but the board description only enabled the DWC3 controller and USB2 PHY. The USBDP PHY remained disabled and the controller had no role-switch default, so DWC3 did not register a UDC and USB gadget drivers such as g_mass_storage failed to bind. Enable the USBDP PHY and describe the controller as a USB role switch with peripheral as the default role. This lets the controller register as a UDC when no external role provider has selected a host role. Tested on a Firefly Station M3 by binding g_mass_storage to expose the eMMC as a USB mass-storage gadget. Signed-off-by: Fabio Estevam Link: https://patch.msgid.link/20260709005006.413145-1-festevam@gmail.com Signed-off-by: Heiko Stuebner --- arch/arm64/boot/dts/rockchip/rk3588s-roc-pc.dts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-roc-pc.dts b/arch/arm64/boot/dts/rockchip/rk3588s-roc-pc.dts index 99853880aaac..7150d5f7684d 100644 --- a/arch/arm64/boot/dts/rockchip/rk3588s-roc-pc.dts +++ b/arch/arm64/boot/dts/rockchip/rk3588s-roc-pc.dts @@ -833,6 +833,12 @@ &usb_host0_ohci { &usb_host0_xhci { extcon = <&u2phy0>; + role-switch-default-mode = "peripheral"; + usb-role-switch; + status = "okay"; +}; + +&usbdp_phy0 { status = "okay"; };