[PATCH v3 4/6] arm64: dts: intel: agilex5: add USB3.1 controller node

From: Adrian Ng Ho Yin

Date: Wed Aug 12 2026 - 03:42:57 EST


Add a DTS node for the Synopsys DWC3 USB3.1 controller on the Agilex5 SoC.
Place it under a simple-bus with a 40-bit dma-ranges window to match the
USB DMA address width of the interconnect. It is enabled in host mode on
the SoCDK board.

Signed-off-by: Adrian Ng Ho Yin <adrian.ho.yin.ng@xxxxxxxxxx>
---
.../arm64/boot/dts/intel/socfpga_agilex5.dtsi | 27 +++++++++++++++++++
.../boot/dts/intel/socfpga_agilex5_socdk.dts | 5 ++++
2 files changed, 32 insertions(+)

diff --git a/arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi b/arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi
index b06c6d5d60ee..043b980832c2 100644
--- a/arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi
+++ b/arch/arm64/boot/dts/intel/socfpga_agilex5.dtsi
@@ -494,6 +494,33 @@ usb0: usb@10b00000 {
status = "disabled";
};

+ usb31_bus: usb-bus@11000000 {
+ compatible = "simple-bus";
+ #address-cells = <1>;
+ #size-cells = <2>;
+ ranges = <0x00 0x11000000 0x00 0x100000>;
+ dma-ranges = <0x00 0x00 0x100 0x00>;
+
+ usb31: usb@0 {
+ compatible = "altr,agilex5-dwc3";
+ reg = <0x0 0x0 0x100000>;
+ interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&clkmgr AGILEX5_USB31_REF_CLK>,
+ <&clkmgr AGILEX5_USB31_SUSPEND_CLK>,
+ <&clkmgr AGILEX5_USB31_BUS_CLK_EARLY>;
+ clock-names = "ref", "suspend", "bus_early";
+ resets = <&rst USB1_RESET>, <&rst USB1_OCP_RESET>;
+ reset-names = "dwc3", "dwc3-ecc";
+ iommus = <&smmu 7>;
+ phys = <&usbphy0>, <&usbphy0>;
+ phy-names = "usb2-phy", "usb3-phy";
+ maximum-speed = "super-speed";
+ snps,dis_u2_susphy_quirk;
+ snps,dis_u3_susphy_quirk;
+ status = "disabled";
+ };
+ };
+
watchdog0: watchdog@10d00200 {
compatible = "snps,dw-wdt";
reg = <0x10d00200 0x100>;
diff --git a/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dts b/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dts
index 57d3c5807c65..dc62772e10ed 100644
--- a/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dts
+++ b/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dts
@@ -109,6 +109,11 @@ &usb0 {
disable-over-current;
};

+&usb31 {
+ dr_mode = "host";
+ status = "okay";
+};
+
&watchdog0 {
status = "okay";
};
--
2.49.GIT