[PATCH 1/2] arm64: dts: imx94: add USB nodes

Frank Li Frank.li at nxp.com
Thu Mar 5 07:35:25 PST 2026


On Thu, Mar 05, 2026 at 03:55:26PM +0800, Xu Yang wrote:
> add USB2.0, USB3.0 controller and USB phy nodes.
>
> Signed-off-by: Xu Yang <xu.yang_2 at nxp.com>
> ---
>  arch/arm64/boot/dts/freescale/imx94.dtsi | 61 ++++++++++++++++++++++++
>  1 file changed, 61 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/freescale/imx94.dtsi b/arch/arm64/boot/dts/freescale/imx94.dtsi
> index d2f31c8caf6e..8384166400e9 100644
> --- a/arch/arm64/boot/dts/freescale/imx94.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx94.dtsi
> @@ -161,6 +161,13 @@ its: msi-controller at 48040000 {
>  		};
>  	};
>
> +	usbphynop: usbphynop {
> +		compatible = "usb-nop-xceiv";
> +		clocks = <&scmi_clk IMX94_CLK_HSIO>;
> +		clock-names = "main_clk";
> +		#phy-cells = <0>;
> +	};
> +

move these to after clock-sai4-mclk1, no address block is before @hex node.

Frank
>  	soc {
>  		compatible = "simple-bus";
>  		ranges;
> @@ -1223,6 +1230,60 @@ wdog3: watchdog at 49220000 {
>  			};
>  		};
>
> +		usb3: usb at 4c100000 {
> +			compatible = "nxp,imx94-dwc3", "nxp,imx8mp-dwc3";
> +			reg = <0x0 0x4c100000 0x0 0x10000>,
> +			      <0x0 0x4c010010 0x0 0x04>,
> +			      <0x0 0x4c1f0000 0x0 0x20>;
> +			reg-names = "core", "blkctl", "glue";
> +			clocks = <&scmi_clk IMX94_CLK_HSIO>,
> +				 <&scmi_clk IMX94_CLK_HSIO>,
> +				 <&scmi_clk IMX94_CLK_24M>,
> +				 <&scmi_clk IMX94_CLK_32K>;
> +			clock-names = "hsio", "bus_early", "ref", "suspend";
> +			interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>,
> +				     <GIC_SPI 386 IRQ_TYPE_LEVEL_HIGH>;
> +			interrupt-names = "dwc_usb3", "wakeup";
> +			power-domains = <&scmi_devpd IMX94_PD_HSIO_TOP>;
> +			phys = <&usb3_phy>, <&usb3_phy>;
> +			phy-names = "usb2-phy", "usb3-phy";
> +			snps,gfladj-refclk-lpm-sel-quirk;
> +			snps,parkmode-disable-ss-quirk;
> +			status = "disabled";
> +		};
> +
> +		usb3_phy: phy at 4c1f0040 {
> +			compatible = "fsl,imx95-usb-phy", "fsl,imx8mp-usb-phy";
> +			reg = <0x0 0x4c1f0040 0x0 0x40>,
> +			      <0x0 0x4c1fc000 0x0 0x100>;
> +			clocks = <&scmi_clk IMX94_CLK_HSIO>;
> +			clock-names = "phy";
> +			#phy-cells = <0>;
> +			power-domains = <&scmi_devpd IMX94_PD_HSIO_TOP>;
> +			status = "disabled";
> +		};
> +
> +		usb2: usb at 4c200000 {
> +			compatible = "fsl,imx95-usb", "fsl,imx7d-usb", "fsl,imx27-usb";
> +			reg = <0x0 0x4c200000 0x0 0x200>;
> +			interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
> +				     <GIC_SPI 387 IRQ_TYPE_LEVEL_HIGH>;
> +			clocks = <&scmi_clk IMX94_CLK_HSIO>,
> +				 <&scmi_clk IMX94_CLK_32K>;
> +			clock-names = "usb_ctrl_root", "usb_wakeup";
> +			power-domains = <&scmi_devpd IMX94_PD_HSIO_TOP>;
> +			phys = <&usbphynop>;
> +			fsl,usbmisc = <&usbmisc 0>;
> +			status = "disabled";
> +		};
> +
> +		usbmisc: usbmisc at 4c200200 {
> +			compatible = "fsl,imx95-usbmisc", "fsl,imx7d-usbmisc", "fsl,imx6q-usbmisc";
> +			reg = <0x0 0x4c200200 0x0 0x200>,
> +			      <0x0 0x4c010014 0x0 0x04>;
> +			#index-cells = <1>;
> +		};
> +
>  		netc_blk_ctrl: system-controller at 4ceb0000 {
>  			compatible = "nxp,imx94-netc-blk-ctrl";
>  			reg = <0x0 0x4ceb0000 0x0 0x10000>,
> --
> 2.34.1
>



More information about the linux-arm-kernel mailing list