~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/phy/brcm,brcmstb-usb-phy.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

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

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php