Re: [PATCH 2/4] arm64: dts: rockchip: enable USB A ports on ArmSoM Sige5

Nicolas Frattaroli
2025-06-03T17:51:52Z

On Tuesday, 3 June 2025 19:01:14 Central European Summer Time Alexey Charkov wrote:
> Enable the two USB type A ports (USB2 and USB3) present on the ArmSoM
> Sige5 board.
>
> Both ports use just one xHCI controller, with the USB 2.0 signals fed
> off the same USB OTG PHY through an onboard hub. VBUS of both ports is
> controlled by the same GPIO regulator (VCC_USBHOST in the schematics,
> toggled by GPIO4 RK_PA6).
>
> Signed-off-by: Alexey Charkov <alchark@gmail.com>
> ---
> .../boot/dts/rockchip/rk3576-armsom-sige5.dts | 38 ++++++++++++++++++++++
> 1 file changed, 38 insertions(+)
>

This is already done here:

https://lore.kernel.org/linux-rockchip/20250507-rk3576-sige5-usb-v3-4-89bf5a614ccf@collabora.com/

> diff --git a/arch/arm64/boot/dts/rockchip/rk3576-armsom-sige5.dts b/arch/arm64/boot/dts/rockchip/rk3576-armsom-sige5.dts
> index d9c129be55a0d997e04e6d677cdc98fb50353418..7ce1fb1380b0863c902fdd9cbc7454ee6011cf92 100644
> --- a/arch/arm64/boot/dts/rockchip/rk3576-armsom-sige5.dts
> +++ b/arch/arm64/boot/dts/rockchip/rk3576-armsom-sige5.dts
> @@ -205,6 +205,24 @@ vcc_3v3_ufs_s0: regulator-vcc-ufs-s0 {
> regulator-max-microvolt = <3300000>;
> vin-supply = <&vcc_5v0_sys>;
> };
> +
> + vcc_5v0_host: regulator-vcc-5v0-host {
> + compatible = "regulator-fixed";
> + regulator-name = "vcc_5v0_host";
> + regulator-boot-on;
> + regulator-always-on;
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + enable-active-high;
> + gpio = <&gpio4 RK_PA4 GPIO_ACTIVE_HIGH>;
> + vin-supply = <&vcc_5v0_device>;
> + pinctrl-names = "default";
> + pinctrl-0 = <&usb_host_pwren>;
> + };
> +};
> +
> +&combphy1_psu {
> + status = "okay";
> };
>
> &cpu_b0 {
> @@ -757,6 +775,12 @@ pcie_reset: pcie-reset {
> rockchip,pins = <2 RK_PB4 RK_FUNC_GPIO &pcfg_pull_up>;
> };
> };
> +
> + usb {
> + usb_host_pwren: usb-host-pwren {
> + rockchip,pins = <4 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
> + };
> + };
> };
>
> &sai1 {
> @@ -798,11 +822,25 @@ &sdmmc {
> status = "okay";
> };
>
> +&u2phy1 {
> + status = "okay";
> +};
> +
> +&u2phy1_otg {
> + phy-supply = <&vcc_5v0_host>;
> + status = "okay";
> +};
> +
> &uart0 {
> pinctrl-0 = <&uart0m0_xfer>;
> status = "okay";
> };
>
> +&usb_drd1_dwc3 {
> + dr_mode = "host";
> + status = "okay";
> +};
> +
> &vop {
> status = "okay";
> };
>
>