1fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2fac71e4eSEmmanuel Vadot%YAML 1.2 3fac71e4eSEmmanuel Vadot--- 4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/usb/ci-hdrc-usb2.yaml# 5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6fac71e4eSEmmanuel Vadot 7fac71e4eSEmmanuel Vadottitle: USB2 ChipIdea USB controller 8fac71e4eSEmmanuel Vadot 9fac71e4eSEmmanuel Vadotmaintainers: 10fac71e4eSEmmanuel Vadot - Xu Yang <xu.yang_2@nxp.com> 11fac71e4eSEmmanuel Vadot - Peng Fan <peng.fan@nxp.com> 12fac71e4eSEmmanuel Vadot 13fac71e4eSEmmanuel Vadotproperties: 14fac71e4eSEmmanuel Vadot compatible: 15fac71e4eSEmmanuel Vadot oneOf: 16fac71e4eSEmmanuel Vadot - enum: 17fac71e4eSEmmanuel Vadot - chipidea,usb2 18fac71e4eSEmmanuel Vadot - lsi,zevio-usb 1984943d6fSEmmanuel Vadot - nuvoton,npcm750-udc 20fac71e4eSEmmanuel Vadot - nvidia,tegra20-ehci 21fac71e4eSEmmanuel Vadot - nvidia,tegra20-udc 22fac71e4eSEmmanuel Vadot - nvidia,tegra30-ehci 23fac71e4eSEmmanuel Vadot - nvidia,tegra30-udc 24fac71e4eSEmmanuel Vadot - nvidia,tegra114-udc 25fac71e4eSEmmanuel Vadot - nvidia,tegra124-udc 26fac71e4eSEmmanuel Vadot - qcom,ci-hdrc 27fac71e4eSEmmanuel Vadot - items: 28fac71e4eSEmmanuel Vadot - enum: 29fac71e4eSEmmanuel Vadot - nvidia,tegra114-ehci 30fac71e4eSEmmanuel Vadot - nvidia,tegra124-ehci 31fac71e4eSEmmanuel Vadot - nvidia,tegra210-ehci 32fac71e4eSEmmanuel Vadot - const: nvidia,tegra30-ehci 33fac71e4eSEmmanuel Vadot - items: 34fac71e4eSEmmanuel Vadot - const: xlnx,zynq-usb-2.20a 35fac71e4eSEmmanuel Vadot - const: chipidea,usb2 3684943d6fSEmmanuel Vadot - items: 3784943d6fSEmmanuel Vadot - enum: 3884943d6fSEmmanuel Vadot - nuvoton,npcm845-udc 3984943d6fSEmmanuel Vadot - const: nuvoton,npcm750-udc 40fac71e4eSEmmanuel Vadot 41fac71e4eSEmmanuel Vadot clocks: 42fac71e4eSEmmanuel Vadot minItems: 1 43*7d0873ebSEmmanuel Vadot maxItems: 2 44fac71e4eSEmmanuel Vadot 45fac71e4eSEmmanuel Vadot clock-names: 46fac71e4eSEmmanuel Vadot minItems: 1 47*7d0873ebSEmmanuel Vadot maxItems: 2 48fac71e4eSEmmanuel Vadot 49fac71e4eSEmmanuel Vadot operating-points-v2: 50fac71e4eSEmmanuel Vadot description: A phandle to the OPP table containing the performance states. 51fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 52fac71e4eSEmmanuel Vadot 53fac71e4eSEmmanuel Vadot phy-select: 54fac71e4eSEmmanuel Vadot description: 55fac71e4eSEmmanuel Vadot Phandler of TCSR node with two argument that indicate register 56fac71e4eSEmmanuel Vadot offset, and phy index 57fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle-array 58fac71e4eSEmmanuel Vadot items: 59fac71e4eSEmmanuel Vadot - description: phandle to TCSR node 60fac71e4eSEmmanuel Vadot - description: register offset 61fac71e4eSEmmanuel Vadot - description: phy index 62fac71e4eSEmmanuel Vadot 63fac71e4eSEmmanuel Vadot nvidia,phy: 64fac71e4eSEmmanuel Vadot description: phandle of usb phy that connects to the port. Use "phys" instead. 65fac71e4eSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 66fac71e4eSEmmanuel Vadot deprecated: true 67fac71e4eSEmmanuel Vadot 68fac71e4eSEmmanuel Vadot nvidia,needs-double-reset: 69fac71e4eSEmmanuel Vadot description: Indicates double reset or not. 70fac71e4eSEmmanuel Vadot type: boolean 71fac71e4eSEmmanuel Vadot deprecated: true 72fac71e4eSEmmanuel Vadot 73fac71e4eSEmmanuel Vadot ulpi: 74fac71e4eSEmmanuel Vadot type: object 75fac71e4eSEmmanuel Vadot additionalProperties: false 76fac71e4eSEmmanuel Vadot patternProperties: 77fac71e4eSEmmanuel Vadot "^phy(-[0-9])?$": 78fac71e4eSEmmanuel Vadot description: The phy child node for Qcom chips. 79fac71e4eSEmmanuel Vadot type: object 80fac71e4eSEmmanuel Vadot $ref: /schemas/phy/qcom,usb-hs-phy.yaml 81fac71e4eSEmmanuel Vadot 82fac71e4eSEmmanuel Vadotrequired: 83fac71e4eSEmmanuel Vadot - compatible 84fac71e4eSEmmanuel Vadot 85fac71e4eSEmmanuel VadotallOf: 86*7d0873ebSEmmanuel Vadot - $ref: chipidea,usb2-common.yaml# 87fac71e4eSEmmanuel Vadot - $ref: usb-hcd.yaml# 88fac71e4eSEmmanuel Vadot - $ref: usb-drd.yaml# 89fac71e4eSEmmanuel Vadot 90fac71e4eSEmmanuel VadotunevaluatedProperties: false 91fac71e4eSEmmanuel Vadot 92fac71e4eSEmmanuel Vadotexamples: 93fac71e4eSEmmanuel Vadot - | 94fac71e4eSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 95fac71e4eSEmmanuel Vadot #include <dt-bindings/clock/berlin2.h> 96fac71e4eSEmmanuel Vadot 97fac71e4eSEmmanuel Vadot usb@f7ed0000 { 98fac71e4eSEmmanuel Vadot compatible = "chipidea,usb2"; 99fac71e4eSEmmanuel Vadot reg = <0xf7ed0000 0x10000>; 100fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 101fac71e4eSEmmanuel Vadot clocks = <&chip CLKID_USB0>; 102fac71e4eSEmmanuel Vadot phys = <&usb_phy0>; 103fac71e4eSEmmanuel Vadot phy-names = "usb-phy"; 104fac71e4eSEmmanuel Vadot vbus-supply = <®_usb0_vbus>; 105fac71e4eSEmmanuel Vadot itc-setting = <0x4>; /* 4 micro-frames */ 106fac71e4eSEmmanuel Vadot /* Incremental burst of unspecified length */ 107fac71e4eSEmmanuel Vadot ahb-burst-config = <0x0>; 108fac71e4eSEmmanuel Vadot tx-burst-size-dword = <0x10>; /* 64 bytes */ 109fac71e4eSEmmanuel Vadot rx-burst-size-dword = <0x10>; 110fac71e4eSEmmanuel Vadot extcon = <0>, <&usb_id>; 111fac71e4eSEmmanuel Vadot phy-clkgate-delay-us = <400>; 112fac71e4eSEmmanuel Vadot mux-controls = <&usb_switch>; 113fac71e4eSEmmanuel Vadot mux-control-names = "usb_switch"; 114fac71e4eSEmmanuel Vadot }; 115fac71e4eSEmmanuel Vadot 116fac71e4eSEmmanuel Vadot... 117