[PATCH] riscv: dts: starfive: jh7110-milkv-mars: set host mode and vbus pin for on-chip USB 2.0
E Shattow
e at freeshell.de
Thu Nov 14 12:13:40 PST 2024
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 at freeshell.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
More information about the linux-riscv
mailing list