124 lines
3.0 KiB
YAML
124 lines
3.0 KiB
YAML
# 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 <xu.yang_2@nxp.com>
|
|
|
|
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 <dt-bindings/interrupt-controller/arm-gic.h>
|
|
|
|
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 = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>,
|
|
<GIC_SPI 386 IRQ_TYPE_LEVEL_HIGH>;
|
|
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;
|
|
};
|