1*b39069a4SRafał Miłecki# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*b39069a4SRafał Miłecki%YAML 1.2 3*b39069a4SRafał Miłecki--- 4*b39069a4SRafał Miłecki$id: http://devicetree.org/schemas/phy/brcm,brcmstb-usb-phy.yaml# 5*b39069a4SRafał Miłecki$schema: http://devicetree.org/meta-schemas/core.yaml# 6*b39069a4SRafał Miłecki 7*b39069a4SRafał Miłeckititle: Broadcom STB USB PHY 8*b39069a4SRafał Miłecki 9*b39069a4SRafał Miłeckidescription: Broadcom's PHY that handles EHCI/OHCI and/or XHCI 10*b39069a4SRafał Miłecki 11*b39069a4SRafał Miłeckimaintainers: 12*b39069a4SRafał Miłecki - Al Cooper <alcooperx@gmail.com> 13*b39069a4SRafał Miłecki - Rafał Miłecki <rafal@milecki.pl> 14*b39069a4SRafał Miłecki 15*b39069a4SRafał Miłeckiproperties: 16*b39069a4SRafał Miłecki compatible: 17*b39069a4SRafał Miłecki enum: 18*b39069a4SRafał Miłecki - brcm,bcm7211-usb-phy 19*b39069a4SRafał Miłecki - brcm,bcm7216-usb-phy 20*b39069a4SRafał Miłecki - brcm,brcmstb-usb-phy 21*b39069a4SRafał Miłecki 22*b39069a4SRafał Miłecki reg: 23*b39069a4SRafał Miłecki minItems: 1 24*b39069a4SRafał Miłecki maxItems: 6 25*b39069a4SRafał Miłecki items: 26*b39069a4SRafał Miłecki - description: the base CTRL register 27*b39069a4SRafał Miłecki - description: XHCI EC register 28*b39069a4SRafał Miłecki - description: XHCI GBL register 29*b39069a4SRafał Miłecki - description: USB PHY register 30*b39069a4SRafał Miłecki - description: USB MDIO register 31*b39069a4SRafał Miłecki - description: BDC register 32*b39069a4SRafał Miłecki 33*b39069a4SRafał Miłecki reg-names: 34*b39069a4SRafał Miłecki minItems: 1 35*b39069a4SRafał Miłecki maxItems: 6 36*b39069a4SRafał Miłecki items: 37*b39069a4SRafał Miłecki - const: ctrl 38*b39069a4SRafał Miłecki - const: xhci_ec 39*b39069a4SRafał Miłecki - const: xhci_gbl 40*b39069a4SRafał Miłecki - const: usb_phy 41*b39069a4SRafał Miłecki - const: usb_mdio 42*b39069a4SRafał Miłecki - const: bdc_ec 43*b39069a4SRafał Miłecki 44*b39069a4SRafał Miłecki clocks: 45*b39069a4SRafał Miłecki minItems: 1 46*b39069a4SRafał Miłecki maxItems: 2 47*b39069a4SRafał Miłecki 48*b39069a4SRafał Miłecki clock-names: 49*b39069a4SRafał Miłecki minItems: 1 50*b39069a4SRafał Miłecki maxItems: 2 51*b39069a4SRafał Miłecki items: 52*b39069a4SRafał Miłecki - const: sw_usb 53*b39069a4SRafał Miłecki - const: sw_usb3 54*b39069a4SRafał Miłecki 55*b39069a4SRafał Miłecki interrupts: 56*b39069a4SRafał Miłecki description: wakeup interrupt 57*b39069a4SRafał Miłecki 58*b39069a4SRafał Miłecki interrupt-names: 59*b39069a4SRafał Miłecki const: wake 60*b39069a4SRafał Miłecki 61*b39069a4SRafał Miłecki brcm,ipp: 62*b39069a4SRafał Miłecki $ref: /schemas/types.yaml#/definitions/uint32 63*b39069a4SRafał Miłecki description: Invert Port Power 64*b39069a4SRafał Miłecki minimum: 0 65*b39069a4SRafał Miłecki maximum: 1 66*b39069a4SRafał Miłecki 67*b39069a4SRafał Miłecki brcm,ioc: 68*b39069a4SRafał Miłecki $ref: /schemas/types.yaml#/definitions/uint32 69*b39069a4SRafał Miłecki description: Invert Over Current detection 70*b39069a4SRafał Miłecki minimum: 0 71*b39069a4SRafał Miłecki maximum: 1 72*b39069a4SRafał Miłecki 73*b39069a4SRafał Miłecki dr_mode: 74*b39069a4SRafał Miłecki description: PHY Device mode. If this property is not defined, the PHY will 75*b39069a4SRafał Miłecki default to "host" mode. 76*b39069a4SRafał Miłecki enum: 77*b39069a4SRafał Miłecki - host 78*b39069a4SRafał Miłecki - peripheral 79*b39069a4SRafał Miłecki - drd 80*b39069a4SRafał Miłecki - typec-pd 81*b39069a4SRafał Miłecki 82*b39069a4SRafał Miłecki brcm,syscon-piarbctl: 83*b39069a4SRafał Miłecki description: phandle to syscon for handling config registers 84*b39069a4SRafał Miłecki $ref: /schemas/types.yaml#/definitions/phandle 85*b39069a4SRafał Miłecki 86*b39069a4SRafał Miłecki brcm,has-xhci: 87*b39069a4SRafał Miłecki description: Indicates the PHY has an XHCI PHY. 88*b39069a4SRafał Miłecki type: boolean 89*b39069a4SRafał Miłecki 90*b39069a4SRafał Miłecki brcm,has-eohci: 91*b39069a4SRafał Miłecki description: Indicates the PHY has an EHCI/OHCI PHY. 92*b39069a4SRafał Miłecki type: boolean 93*b39069a4SRafał Miłecki 94*b39069a4SRafał Miłecki "#phy-cells": 95*b39069a4SRafał Miłecki description: | 96*b39069a4SRafał Miłecki Cell allows setting the type of the PHY. Possible values are: 97*b39069a4SRafał Miłecki - PHY_TYPE_USB2 for USB1.1/2.0 PHY 98*b39069a4SRafał Miłecki - PHY_TYPE_USB3 for USB3.x PHY 99*b39069a4SRafał Miłecki const: 1 100*b39069a4SRafał Miłecki 101*b39069a4SRafał Miłeckirequired: 102*b39069a4SRafał Miłecki - reg 103*b39069a4SRafał Miłecki - "#phy-cells" 104*b39069a4SRafał Miłecki 105*b39069a4SRafał MiłeckianyOf: 106*b39069a4SRafał Miłecki - required: 107*b39069a4SRafał Miłecki - brcm,has-xhci 108*b39069a4SRafał Miłecki - required: 109*b39069a4SRafał Miłecki - brcm,has-eohci 110*b39069a4SRafał Miłecki 111*b39069a4SRafał MiłeckiallOf: 112*b39069a4SRafał Miłecki - if: 113*b39069a4SRafał Miłecki properties: 114*b39069a4SRafał Miłecki compatible: 115*b39069a4SRafał Miłecki contains: 116*b39069a4SRafał Miłecki const: brcm,brcmstb-usb-phy 117*b39069a4SRafał Miłecki then: 118*b39069a4SRafał Miłecki properties: 119*b39069a4SRafał Miłecki reg: 120*b39069a4SRafał Miłecki minItems: 1 121*b39069a4SRafał Miłecki maxItems: 2 122*b39069a4SRafał Miłecki - if: 123*b39069a4SRafał Miłecki properties: 124*b39069a4SRafał Miłecki compatible: 125*b39069a4SRafał Miłecki contains: 126*b39069a4SRafał Miłecki const: brcm,bcm7211-usb-phy 127*b39069a4SRafał Miłecki then: 128*b39069a4SRafał Miłecki properties: 129*b39069a4SRafał Miłecki reg: 130*b39069a4SRafał Miłecki minItems: 5 131*b39069a4SRafał Miłecki maxItems: 6 132*b39069a4SRafał Miłecki reg-names: 133*b39069a4SRafał Miłecki minItems: 5 134*b39069a4SRafał Miłecki maxItems: 6 135*b39069a4SRafał Miłecki - if: 136*b39069a4SRafał Miłecki properties: 137*b39069a4SRafał Miłecki compatible: 138*b39069a4SRafał Miłecki contains: 139*b39069a4SRafał Miłecki const: brcm,bcm7216-usb-phy 140*b39069a4SRafał Miłecki then: 141*b39069a4SRafał Miłecki properties: 142*b39069a4SRafał Miłecki reg: 143*b39069a4SRafał Miłecki minItems: 3 144*b39069a4SRafał Miłecki maxItems: 3 145*b39069a4SRafał Miłecki reg-names: 146*b39069a4SRafał Miłecki minItems: 3 147*b39069a4SRafał Miłecki maxItems: 3 148*b39069a4SRafał Miłecki 149*b39069a4SRafał MiłeckiadditionalProperties: false 150*b39069a4SRafał Miłecki 151*b39069a4SRafał Miłeckiexamples: 152*b39069a4SRafał Miłecki - | 153*b39069a4SRafał Miłecki #include <dt-bindings/phy/phy.h> 154*b39069a4SRafał Miłecki 155*b39069a4SRafał Miłecki usb-phy@f0470200 { 156*b39069a4SRafał Miłecki compatible = "brcm,brcmstb-usb-phy"; 157*b39069a4SRafał Miłecki reg = <0xf0470200 0xb8>, 158*b39069a4SRafał Miłecki <0xf0471940 0x6c0>; 159*b39069a4SRafał Miłecki #phy-cells = <1>; 160*b39069a4SRafał Miłecki dr_mode = "host"; 161*b39069a4SRafał Miłecki brcm,ioc = <1>; 162*b39069a4SRafał Miłecki brcm,ipp = <1>; 163*b39069a4SRafał Miłecki brcm,has-xhci; 164*b39069a4SRafał Miłecki brcm,has-eohci; 165*b39069a4SRafał Miłecki clocks = <&usb20>, <&usb30>; 166*b39069a4SRafał Miłecki clock-names = "sw_usb", "sw_usb3"; 167*b39069a4SRafał Miłecki }; 168*b39069a4SRafał Miłecki - | 169*b39069a4SRafał Miłecki #include <dt-bindings/phy/phy.h> 170*b39069a4SRafał Miłecki 171*b39069a4SRafał Miłecki usb-phy@29f0200 { 172*b39069a4SRafał Miłecki compatible = "brcm,bcm7211-usb-phy"; 173*b39069a4SRafał Miłecki reg = <0x29f0200 0x200>, 174*b39069a4SRafał Miłecki <0x29c0880 0x30>, 175*b39069a4SRafał Miłecki <0x29cc100 0x534>, 176*b39069a4SRafał Miłecki <0x2808000 0x24>, 177*b39069a4SRafał Miłecki <0x2980080 0x8>; 178*b39069a4SRafał Miłecki reg-names = "ctrl", 179*b39069a4SRafał Miłecki "xhci_ec", 180*b39069a4SRafał Miłecki "xhci_gbl", 181*b39069a4SRafał Miłecki "usb_phy", 182*b39069a4SRafał Miłecki "usb_mdio"; 183*b39069a4SRafał Miłecki brcm,ioc = <0x0>; 184*b39069a4SRafał Miłecki brcm,ipp = <0x0>; 185*b39069a4SRafał Miłecki interrupts = <0x30>; 186*b39069a4SRafał Miłecki interrupt-parent = <&vpu_intr1_nosec_intc>; 187*b39069a4SRafał Miłecki interrupt-names = "wake"; 188*b39069a4SRafał Miłecki #phy-cells = <0x1>; 189*b39069a4SRafał Miłecki brcm,has-xhci; 190*b39069a4SRafał Miłecki brcm,syscon-piarbctl = <&syscon_piarbctl>; 191*b39069a4SRafał Miłecki clocks = <&scmi_clk 256>; 192*b39069a4SRafał Miłecki clock-names = "sw_usb"; 193*b39069a4SRafał Miłecki }; 194