riscv: dts: spacemit: k3: Add USB2.0 support

There is one USB2.0 host in K3 SoC which use DWC3 IP but only provide
USB2.0 functionality, and with only one USB2 PHY connected.

The USB2.0 controller on Pico-ITX board connects to a Terminus FE1.1 Hub
which fully USB2.0 protocol compliant and provides 4 ports.

Link: https://patch.msgid.link/20260330-02-k3-usb20-dts-v2-1-46af262fb4a9@kernel.org
Signed-off-by: Yixun Lan <dlan@kernel.org>
This commit is contained in:
Yixun Lan 2026-03-30 22:15:21 +00:00
parent f068b20455
commit d3bd58f306
2 changed files with 55 additions and 0 deletions

View File

@ -26,6 +26,14 @@ memory@100000000 {
reg = <0x1 0x00000000 0x4 0x00000000>;
};
reg_aux_vcc3v3: regulator-aux-vcc3v3 {
compatible = "regulator-fixed";
regulator-name = "AUX_VCC3V3";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
};
reg_aux_vcc5v: regulator-aux-vcc5v {
compatible = "regulator-fixed";
regulator-name = "AUX_VCC5V";
@ -197,3 +205,19 @@ &uart0 {
pinctrl-0 = <&uart0_0_cfg>;
status = "okay";
};
&usb2_host {
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
hub@1 {
compatible = "usb1a40,0101";
reg = <1>;
vdd-supply = <&reg_aux_vcc3v3>;
};
};
&usb2_phy {
status = "okay";
};

View File

@ -438,6 +438,37 @@ soc: soc {
dma-noncoherent;
ranges;
usb2_host: usb@c0a00000 {
compatible = "spacemit,k3-dwc3";
reg = <0x0 0xc0a00000 0x0 0x10000>;
clocks = <&syscon_apmu CLK_APMU_USB2_BUS>;
clock-names = "usbdrd30";
resets = <&syscon_apmu RESET_APMU_USB2_AHB>,
<&syscon_apmu RESET_APMU_USB2_VCC>,
<&syscon_apmu RESET_APMU_USB2_PHY>;
reset-names = "ahb", "vcc", "phy";
interrupts = <105 IRQ_TYPE_LEVEL_HIGH>;
interrupt-parent = <&saplic>;
phys = <&usb2_phy>;
phy-names = "usb2-phy";
phy_type = "utmi";
snps,dis_enblslpm_quirk;
snps,dis_u2_susphy_quirk;
snps,dis-del-phy-power-chg-quirk;
snps,dis-tx-ipgap-linecheck-quirk;
dr_mode = "host";
maximum-speed = "high-speed";
status = "disabled";
};
usb2_phy: phy@c0a20000 {
compatible = "spacemit,k3-usb2-phy";
reg = <0x0 0xc0a20000 0x0 0x200>;
clocks = <&syscon_apmu CLK_APMU_USB2_BUS>;
#phy-cells = <0>;
status = "disabled";
};
eth0: ethernet@cac80000 {
compatible = "spacemit,k3-dwmac", "snps,dwmac-5.40a";
reg = <0x0 0xcac80000 0x0 0x2000>;