1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/regulator/socionext,uniphier-regulator.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Socionext UniPhier regulator controller 8 9description: | 10 This regulator controls VBUS and belongs to USB3 glue layer. Before using 11 the regulator, it is necessary to control the clocks and resets to enable 12 this layer. These clocks and resets should be described in each property. 13 14maintainers: 15 - Kunihiko Hayashi <hayashi.kunihiko@socionext.com> 16 17# USB3 Controller 18 19properties: 20 compatible: 21 enum: 22 - socionext,uniphier-pro4-usb3-regulator 23 - socionext,uniphier-pro5-usb3-regulator 24 - socionext,uniphier-pxs2-usb3-regulator 25 - socionext,uniphier-ld20-usb3-regulator 26 - socionext,uniphier-pxs3-usb3-regulator 27 - socionext,uniphier-nx1-usb3-regulator 28 29 reg: 30 maxItems: 1 31 32 clocks: 33 minItems: 1 34 maxItems: 2 35 36 clock-names: true 37 38 resets: 39 minItems: 1 40 maxItems: 2 41 42 reset-names: true 43 44allOf: 45 - $ref: "regulator.yaml#" 46 - if: 47 properties: 48 compatible: 49 contains: 50 enum: 51 - socionext,uniphier-pro4-usb3-regulator 52 - socionext,uniphier-pro5-usb3-regulator 53 then: 54 properties: 55 clocks: 56 minItems: 2 57 maxItems: 2 58 clock-names: 59 items: 60 - const: gio 61 - const: link 62 resets: 63 minItems: 2 64 maxItems: 2 65 reset-names: 66 items: 67 - const: gio 68 - const: link 69 else: 70 properties: 71 clocks: 72 maxItems: 1 73 clock-names: 74 const: link 75 resets: 76 maxItems: 1 77 reset-names: 78 const: link 79 80unevaluatedProperties: false 81 82required: 83 - compatible 84 - reg 85 - clocks 86 - clock-names 87 - resets 88 - reset-names 89 90examples: 91 - | 92 usb_vbus0: regulators@100 { 93 compatible = "socionext,uniphier-ld20-usb3-regulator"; 94 reg = <0x100 0x10>; 95 clock-names = "link"; 96 clocks = <&sys_clk 14>; 97 reset-names = "link"; 98 resets = <&sys_rst 14>; 99 }; 100