1c66ec88fSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0 2c66ec88fSEmmanuel Vadot%YAML 1.2 3c66ec88fSEmmanuel Vadot--- 4c66ec88fSEmmanuel Vadot$id: http://devicetree.org/schemas/usb/generic-ohci.yaml# 5c66ec88fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6c66ec88fSEmmanuel Vadot 77ef62cebSEmmanuel Vadottitle: USB OHCI Controller 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadotmaintainers: 10c66ec88fSEmmanuel Vadot - Greg Kroah-Hartman <gregkh@linuxfoundation.org> 11c66ec88fSEmmanuel Vadot 12c66ec88fSEmmanuel Vadotproperties: 13c66ec88fSEmmanuel Vadot compatible: 145def4c47SEmmanuel Vadot oneOf: 155def4c47SEmmanuel Vadot - items: 165def4c47SEmmanuel Vadot - enum: 175def4c47SEmmanuel Vadot - allwinner,sun4i-a10-ohci 185def4c47SEmmanuel Vadot - allwinner,sun50i-a64-ohci 195def4c47SEmmanuel Vadot - allwinner,sun50i-h6-ohci 208bab661aSEmmanuel Vadot - allwinner,sun50i-h616-ohci 215def4c47SEmmanuel Vadot - allwinner,sun5i-a13-ohci 225def4c47SEmmanuel Vadot - allwinner,sun6i-a31-ohci 235def4c47SEmmanuel Vadot - allwinner,sun7i-a20-ohci 245def4c47SEmmanuel Vadot - allwinner,sun8i-a23-ohci 25354d7675SEmmanuel Vadot - allwinner,sun8i-a83t-ohci 265def4c47SEmmanuel Vadot - allwinner,sun8i-h3-ohci 275def4c47SEmmanuel Vadot - allwinner,sun8i-r40-ohci 28*aa1a8ff2SEmmanuel Vadot - allwinner,sun8i-v3s-ohci 295def4c47SEmmanuel Vadot - allwinner,sun9i-a80-ohci 30b97ee269SEmmanuel Vadot - allwinner,sun20i-d1-ohci 315def4c47SEmmanuel Vadot - brcm,bcm3384-ohci 325def4c47SEmmanuel Vadot - brcm,bcm63268-ohci 335def4c47SEmmanuel Vadot - brcm,bcm6328-ohci 345def4c47SEmmanuel Vadot - brcm,bcm6358-ohci 355def4c47SEmmanuel Vadot - brcm,bcm6362-ohci 365def4c47SEmmanuel Vadot - brcm,bcm6368-ohci 375def4c47SEmmanuel Vadot - brcm,bcm7125-ohci 385def4c47SEmmanuel Vadot - brcm,bcm7346-ohci 395def4c47SEmmanuel Vadot - brcm,bcm7358-ohci 405def4c47SEmmanuel Vadot - brcm,bcm7360-ohci 415def4c47SEmmanuel Vadot - brcm,bcm7362-ohci 425def4c47SEmmanuel Vadot - brcm,bcm7420-ohci 435def4c47SEmmanuel Vadot - brcm,bcm7425-ohci 445def4c47SEmmanuel Vadot - brcm,bcm7435-ohci 45d5b0e70fSEmmanuel Vadot - hpe,gxp-ohci 465def4c47SEmmanuel Vadot - ibm,476gtr-ohci 475def4c47SEmmanuel Vadot - ingenic,jz4740-ohci 48f126890aSEmmanuel Vadot - rockchip,rk3588-ohci 495def4c47SEmmanuel Vadot - snps,hsdk-v1.0-ohci 505def4c47SEmmanuel Vadot - const: generic-ohci 51cb7aa33aSEmmanuel Vadot - enum: 52cb7aa33aSEmmanuel Vadot - generic-ohci 53cb7aa33aSEmmanuel Vadot - ti,ohci-omap3 54cb7aa33aSEmmanuel Vadot - items: 55cb7aa33aSEmmanuel Vadot - enum: 56cb7aa33aSEmmanuel Vadot - cavium,octeon-6335-ohci 57cb7aa33aSEmmanuel Vadot - nintendo,hollywood-usb-ohci 58cb7aa33aSEmmanuel Vadot - nxp,ohci-nxp 59cb7aa33aSEmmanuel Vadot - st,spear600-ohci 60cb7aa33aSEmmanuel Vadot - const: usb-ohci 61c66ec88fSEmmanuel Vadot 62c66ec88fSEmmanuel Vadot reg: 63c66ec88fSEmmanuel Vadot maxItems: 1 64c66ec88fSEmmanuel Vadot 65c66ec88fSEmmanuel Vadot interrupts: 66c66ec88fSEmmanuel Vadot maxItems: 1 67c66ec88fSEmmanuel Vadot 68c66ec88fSEmmanuel Vadot resets: 69c66ec88fSEmmanuel Vadot minItems: 1 70c66ec88fSEmmanuel Vadot maxItems: 2 71c66ec88fSEmmanuel Vadot 72c66ec88fSEmmanuel Vadot clocks: 73c66ec88fSEmmanuel Vadot minItems: 1 74f126890aSEmmanuel Vadot maxItems: 4 75c66ec88fSEmmanuel Vadot description: | 76c66ec88fSEmmanuel Vadot In case the Renesas R-Car Gen3 SoCs: 77c66ec88fSEmmanuel Vadot - if a host only channel: first clock should be host. 78c66ec88fSEmmanuel Vadot - if a USB DRD channel: first clock should be host and second 79c66ec88fSEmmanuel Vadot one should be peripheral 80c66ec88fSEmmanuel Vadot 81c66ec88fSEmmanuel Vadot power-domains: 82c66ec88fSEmmanuel Vadot maxItems: 1 83c66ec88fSEmmanuel Vadot 84c66ec88fSEmmanuel Vadot big-endian: 85c66ec88fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 86c66ec88fSEmmanuel Vadot description: 87c66ec88fSEmmanuel Vadot Set this flag for HCDs with big endian descriptors and big 88c66ec88fSEmmanuel Vadot endian registers. 89c66ec88fSEmmanuel Vadot 90c66ec88fSEmmanuel Vadot big-endian-desc: 91c66ec88fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 92c66ec88fSEmmanuel Vadot description: 93c66ec88fSEmmanuel Vadot Set this flag for HCDs with big endian descriptors. 94c66ec88fSEmmanuel Vadot 95c66ec88fSEmmanuel Vadot big-endian-regs: 96c66ec88fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 97c66ec88fSEmmanuel Vadot description: 98c66ec88fSEmmanuel Vadot Set this flag for HCDs with big endian registers. 99c66ec88fSEmmanuel Vadot 100c66ec88fSEmmanuel Vadot remote-wakeup-connected: 101c66ec88fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 102c66ec88fSEmmanuel Vadot description: 103c66ec88fSEmmanuel Vadot Remote wakeup is wired on the platform. 104c66ec88fSEmmanuel Vadot 105c66ec88fSEmmanuel Vadot no-big-frame-no: 106c66ec88fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 107c66ec88fSEmmanuel Vadot description: 108c66ec88fSEmmanuel Vadot Set if frame_no lives in bits [15:0] of HCCA 109c66ec88fSEmmanuel Vadot 110c66ec88fSEmmanuel Vadot num-ports: 111c66ec88fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 112c66ec88fSEmmanuel Vadot description: 113c66ec88fSEmmanuel Vadot Overrides the detected port count 114c66ec88fSEmmanuel Vadot 115c66ec88fSEmmanuel Vadot phys: 116d5b0e70fSEmmanuel Vadot minItems: 1 117d5b0e70fSEmmanuel Vadot maxItems: 3 118c66ec88fSEmmanuel Vadot 119c66ec88fSEmmanuel Vadot phy-names: 120c66ec88fSEmmanuel Vadot const: usb 121c66ec88fSEmmanuel Vadot 122c66ec88fSEmmanuel Vadot iommus: 123c66ec88fSEmmanuel Vadot maxItems: 1 124c66ec88fSEmmanuel Vadot 125354d7675SEmmanuel Vadot dr_mode: 126354d7675SEmmanuel Vadot enum: 127354d7675SEmmanuel Vadot - host 128354d7675SEmmanuel Vadot - otg 129354d7675SEmmanuel Vadot 130cb7aa33aSEmmanuel Vadot transceiver: 131cb7aa33aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 132cb7aa33aSEmmanuel Vadot description: 133cb7aa33aSEmmanuel Vadot The associated ISP1301 device. Necessary for the UDC controller for 134cb7aa33aSEmmanuel Vadot connecting to the USB physical layer. 135cb7aa33aSEmmanuel Vadot 136c66ec88fSEmmanuel Vadotrequired: 137c66ec88fSEmmanuel Vadot - compatible 138c66ec88fSEmmanuel Vadot - reg 139c66ec88fSEmmanuel Vadot - interrupts 140c66ec88fSEmmanuel Vadot 141cb7aa33aSEmmanuel VadotallOf: 142cb7aa33aSEmmanuel Vadot - $ref: usb-hcd.yaml 143cb7aa33aSEmmanuel Vadot - if: 144cb7aa33aSEmmanuel Vadot not: 145cb7aa33aSEmmanuel Vadot properties: 146cb7aa33aSEmmanuel Vadot compatible: 147cb7aa33aSEmmanuel Vadot contains: 148cb7aa33aSEmmanuel Vadot const: nxp,ohci-nxp 149cb7aa33aSEmmanuel Vadot then: 150cb7aa33aSEmmanuel Vadot properties: 151cb7aa33aSEmmanuel Vadot transceiver: false 152f126890aSEmmanuel Vadot - if: 153f126890aSEmmanuel Vadot properties: 154f126890aSEmmanuel Vadot compatible: 155f126890aSEmmanuel Vadot contains: 156f126890aSEmmanuel Vadot const: rockchip,rk3588-ohci 157f126890aSEmmanuel Vadot then: 158f126890aSEmmanuel Vadot properties: 159f126890aSEmmanuel Vadot clocks: 160f126890aSEmmanuel Vadot minItems: 4 161f126890aSEmmanuel Vadot else: 162f126890aSEmmanuel Vadot properties: 163f126890aSEmmanuel Vadot clocks: 164f126890aSEmmanuel Vadot minItems: 1 165f126890aSEmmanuel Vadot maxItems: 3 166cb7aa33aSEmmanuel Vadot 167fac71e4eSEmmanuel VadotunevaluatedProperties: false 168c66ec88fSEmmanuel Vadot 169c66ec88fSEmmanuel Vadotexamples: 170c66ec88fSEmmanuel Vadot - | 171c66ec88fSEmmanuel Vadot ohci0: usb@1c14400 { 172c66ec88fSEmmanuel Vadot compatible = "allwinner,sun4i-a10-ohci", "generic-ohci"; 173c66ec88fSEmmanuel Vadot reg = <0x01c14400 0x100>; 174c66ec88fSEmmanuel Vadot interrupts = <64>; 175c66ec88fSEmmanuel Vadot clocks = <&usb_clk 6>, <&ahb_gates 2>; 176c66ec88fSEmmanuel Vadot phys = <&usbphy 1>; 177c66ec88fSEmmanuel Vadot phy-names = "usb"; 178c66ec88fSEmmanuel Vadot }; 179c66ec88fSEmmanuel Vadot 180c66ec88fSEmmanuel Vadot... 181