[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20241114201805.24143-2-e@freeshell.de>
Date: Thu, 14 Nov 2024 12:13:40 -0800
From: E Shattow <e@...eshell.de>
To: Jisheng Zhang <jszhang@...nel.org>
Cc: E Shattow <e@...eshell.de>,
Emil Renner Berthing <kernel@...il.dk>,
Conor Dooley <conor@...nel.org>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Paul Walmsley <paul.walmsley@...ive.com>,
Palmer Dabbelt <palmer@...belt.com>,
Albert Ou <aou@...s.berkeley.edu>,
linux-riscv@...ts.infradead.org,
devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: [PATCH] riscv: dts: starfive: jh7110-milkv-mars: set host mode and vbus pin for on-chip USB 2.0
Enable host mode USB for Milk-V Mars by setting host mode and connect vbus
pinctrl.
Note that testing this functionality depends on two features:
1. commit e10c52e7e064038d9bd67b20bf4ce92077d7d84e "phy: starfive:
jh7110-usb: Fix link configuration to controller"
2. Setting the USB over-current register to disable. This is done at
bootloader phase, for example U-Boot:
https://patchwork.ozlabs.org/project/uboot/patch/20241012031328.4268-6-minda.chen@starfivetech.com/
If the over-current register is not prepared for us then the result is no
change in functional outcome with this patch applied; there is an error
visible to the user and usb configuration fails (same as it is now).
Signed-off-by: E Shattow <e@...eshell.de>
---
.../boot/dts/starfive/jh7110-milkv-mars.dts | 18 +++++++++++++++++-
1 file changed, 17 insertions(+), 1 deletion(-)
diff --git a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
index 0d248b671d4b..bddfc7c6b00f 100644
--- a/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
+++ b/arch/riscv/boot/dts/starfive/jh7110-milkv-mars.dts
@@ -53,7 +53,23 @@ &spi0 {
status = "okay";
};
+&sysgpio {
+ usb_pins: usb0-0 {
+ driver-vbus-pin {
+ pinmux = <GPIOMUX(25, GPOUT_SYS_USB_DRIVE_VBUS,
+ GPOEN_ENABLE,
+ GPI_NONE)>;
+ bias-disable;
+ input-disable;
+ input-schmitt-disable;
+ slew-rate = <0>;
+ };
+ };
+};
+
&usb0 {
- dr_mode = "peripheral";
+ dr_mode = "host";
+ pinctrl-names = "default";
+ pinctrl-0 = <&usb_pins>;
status = "okay";
};
--
2.45.2
Powered by blists - more mailing lists