mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 03:04:51 +01:00
dt-bindings: usb: cdns-imx8qm: add imx8qm cdns3 glue layer
NXP imx8qm integrates 1 cdns3 IP. This is glue layer device bindings. Signed-off-by: Frank Li <Frank.Li@nxp.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20230517152545.3404508-2-Frank.Li@nxp.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
7a053bf2b3
commit
8486eb8068
1 changed files with 103 additions and 0 deletions
103
Documentation/devicetree/bindings/usb/fsl,imx8qm-cdns3.yaml
Normal file
103
Documentation/devicetree/bindings/usb/fsl,imx8qm-cdns3.yaml
Normal file
|
|
@ -0,0 +1,103 @@
|
|||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
||||
# Copyright (c) 2020 NXP
|
||||
%YAML 1.2
|
||||
---
|
||||
$id: http://devicetree.org/schemas/usb/fsl,imx8qm-cdns3.yaml#
|
||||
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
||||
|
||||
title: NXP iMX8QM Soc USB Controller
|
||||
|
||||
maintainers:
|
||||
- Frank Li <Frank.Li@nxp.com>
|
||||
|
||||
properties:
|
||||
compatible:
|
||||
const: fsl,imx8qm-usb3
|
||||
|
||||
reg:
|
||||
items:
|
||||
- description: Register set for iMX USB3 Platform Control
|
||||
|
||||
"#address-cells":
|
||||
enum: [ 1, 2 ]
|
||||
|
||||
"#size-cells":
|
||||
enum: [ 1, 2 ]
|
||||
|
||||
ranges: true
|
||||
|
||||
clocks:
|
||||
items:
|
||||
- description: Standby clock. Used during ultra low power states.
|
||||
- description: USB bus clock for usb3 controller.
|
||||
- description: AXI clock for AXI interface.
|
||||
- description: ipg clock for register access.
|
||||
- description: Core clock for usb3 controller.
|
||||
|
||||
clock-names:
|
||||
items:
|
||||
- const: lpm
|
||||
- const: bus
|
||||
- const: aclk
|
||||
- const: ipg
|
||||
- const: core
|
||||
|
||||
power-domains:
|
||||
maxItems: 1
|
||||
|
||||
# Required child node:
|
||||
|
||||
patternProperties:
|
||||
"^usb@[0-9a-f]+$":
|
||||
$ref: cdns,usb3.yaml#
|
||||
|
||||
required:
|
||||
- compatible
|
||||
- reg
|
||||
- "#address-cells"
|
||||
- "#size-cells"
|
||||
- ranges
|
||||
- clocks
|
||||
- clock-names
|
||||
- power-domains
|
||||
|
||||
additionalProperties: false
|
||||
|
||||
examples:
|
||||
- |
|
||||
#include <dt-bindings/clock/imx8-lpcg.h>
|
||||
#include <dt-bindings/firmware/imx/rsrc.h>
|
||||
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
||||
|
||||
usb@5b110000 {
|
||||
compatible = "fsl,imx8qm-usb3";
|
||||
reg = <0x5b110000 0x10000>;
|
||||
ranges;
|
||||
clocks = <&usb3_lpcg IMX_LPCG_CLK_1>,
|
||||
<&usb3_lpcg IMX_LPCG_CLK_0>,
|
||||
<&usb3_lpcg IMX_LPCG_CLK_7>,
|
||||
<&usb3_lpcg IMX_LPCG_CLK_4>,
|
||||
<&usb3_lpcg IMX_LPCG_CLK_5>;
|
||||
clock-names = "lpm", "bus", "aclk", "ipg", "core";
|
||||
assigned-clocks = <&clk IMX_SC_R_USB_2 IMX_SC_PM_CLK_MST_BUS>;
|
||||
assigned-clock-rates = <250000000>;
|
||||
power-domains = <&pd IMX_SC_R_USB_2>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
usb@5b120000 {
|
||||
compatible = "cdns,usb3";
|
||||
reg = <0x5b120000 0x10000>, /* memory area for OTG/DRD registers */
|
||||
<0x5b130000 0x10000>, /* memory area for HOST registers */
|
||||
<0x5b140000 0x10000>; /* memory area for DEVICE registers */
|
||||
reg-names = "otg", "xhci", "dev";
|
||||
interrupt-parent = <&gic>;
|
||||
interrupts = <GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH>;
|
||||
interrupt-names = "host", "peripheral", "otg", "wakeup";
|
||||
phys = <&usb3_phy>;
|
||||
phy-names = "cdns3,usb3-phy";
|
||||
};
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue