Skip to content

Commit

Permalink
arm64: dts: rockchip: fix rk3399-puma-haikou USB OTG mode
Browse files Browse the repository at this point in the history
The micro USB3.0 port available on the Haikou evaluation kit for Puma
RK3399-Q7 SoM supports dual-role model (aka drd or OTG) but its support
was broken until now because of missing logic around the ID pin.

This adds proper support for USB OTG on Puma Haikou by "connecting" the
GPIO used for USB ID to the USB3 controller device.

Cc: Quentin Schulz <foss+kernel@0leil.net>
Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com>
Link: https://lore.kernel.org/r/20220120125156.16217-1-quentin.schulz@theobroma-systems.com
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
  • Loading branch information
QSchulz authored and mmind committed Jan 23, 2022
1 parent 85a8bcc commit ed2c66a
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 0 deletions.
1 change: 1 addition & 0 deletions arch/arm64/boot/dts/rockchip/rk3399-puma-haikou.dts
Original file line number Diff line number Diff line change
Expand Up @@ -232,6 +232,7 @@

&usbdrd_dwc3_0 {
dr_mode = "otg";
extcon = <&extcon_usb3>;
status = "okay";
};

Expand Down
14 changes: 14 additions & 0 deletions arch/arm64/boot/dts/rockchip/rk3399-puma.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,13 @@
};
};

extcon_usb3: extcon-usb3 {
compatible = "linux,extcon-usb-gpio";
id-gpio = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&usb3_id>;
};

clkin_gmac: external-gmac-clock {
compatible = "fixed-clock";
clock-frequency = <125000000>;
Expand Down Expand Up @@ -422,6 +429,13 @@
<4 RK_PA3 RK_FUNC_GPIO &pcfg_pull_none>;
};
};

usb3 {
usb3_id: usb3-id {
rockchip,pins =
<1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
};
};
};

&sdhci {
Expand Down

0 comments on commit ed2c66a

Please sign in to comment.