# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) # Copyright 2026 NXP %YAML 1.2 --- $id: http://devicetree.org/schemas/usb/nxp,imx-dwc3.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: NXP i.MX Soc USB Controller maintainers: - Xu Yang properties: compatible: oneOf: - items: - enum: - nxp,imx94-dwc3 - nxp,imx95-dwc3 - const: nxp,imx8mp-dwc3 - const: nxp,imx8mp-dwc3 reg: items: - description: DWC3 core registers - description: HSIO Block Control registers - description: Wrapper registers of dwc3 core reg-names: items: - const: core - const: blkctl - const: glue interrupts: items: - description: DWC3 controller interrupt - description: Wakeup interrupt from glue logic interrupt-names: items: - const: dwc_usb3 - const: wakeup iommus: maxItems: 1 clocks: items: - description: System hsio root clock - description: SoC Bus Clock for AHB/AXI/Native - description: Reference clock for generating ITP when UTMI/ULPI PHY is suspended - description: Suspend clock used for usb wakeup logic clock-names: items: - const: hsio - const: bus_early - const: ref - const: suspend fsl,permanently-attached: type: boolean description: Indicates if the device attached to a downstream port is permanently attached fsl,disable-port-power-control: type: boolean description: Indicates whether the host controller implementation includes port power control. Defines Bit 3 in capability register (HCCPARAMS) fsl,over-current-active-low: type: boolean description: Over current signal polarity is active low fsl,power-active-low: type: boolean description: Power pad (PWR) polarity is active low power-domains: maxItems: 1 required: - compatible - reg - clocks - clock-names - interrupts - power-domains allOf: - $ref: snps,dwc3-common.yaml# unevaluatedProperties: false examples: - | #include usb@4c100000 { compatible = "nxp,imx94-dwc3", "nxp,imx8mp-dwc3"; reg = <0x4c100000 0x10000>, <0x4c010010 0x04>, <0x4c1f0000 0x20>; reg-names = "core", "blkctl", "glue"; clocks = <&scmi_clk 74>, //IMX94_CLK_HSIO <&scmi_clk 74>, //IMX94_CLK_HSIO <&scmi_clk 2>, //IMX94_CLK_24M <&scmi_clk 1>; //IMX94_CLK_32K clock-names = "hsio", "bus_early", "ref", "suspend"; interrupts = , ; interrupt-names = "dwc_usb3", "wakeup"; power-domains = <&scmi_devpd 13>; //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; };