xref: /freebsd/sys/contrib/device-tree/Bindings/regulator/socionext,uniphier-regulator.yaml (revision 354d7675fe12ace9cde344cb79c7ded792802f88)
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
17allOf:
18  - $ref: "regulator.yaml#"
19
20# USB3 Controller
21
22properties:
23  compatible:
24    enum:
25      - socionext,uniphier-pro4-usb3-regulator
26      - socionext,uniphier-pro5-usb3-regulator
27      - socionext,uniphier-pxs2-usb3-regulator
28      - socionext,uniphier-ld20-usb3-regulator
29      - socionext,uniphier-pxs3-usb3-regulator
30
31  reg:
32    maxItems: 1
33
34  clocks:
35    minItems: 1
36    maxItems: 2
37
38  clock-names:
39    oneOf:
40      - items:          # for Pro4, Pro5
41          - const: gio
42          - const: link
43      - items:          # for others
44          - const: link
45
46  resets:
47    minItems: 1
48    maxItems: 2
49
50  reset-names:
51    oneOf:
52      - items:          # for Pro4, Pro5
53          - const: gio
54          - const: link
55      - items:
56          - const: link
57
58additionalProperties: false
59
60required:
61  - compatible
62  - reg
63  - clocks
64  - clock-names
65  - resets
66  - reset-names
67
68examples:
69  - |
70    usb-glue@65b00000 {
71        compatible = "simple-mfd";
72        #address-cells = <1>;
73        #size-cells = <1>;
74        ranges = <0 0x65b00000 0x400>;
75
76        usb_vbus0: regulators@100 {
77            compatible = "socionext,uniphier-ld20-usb3-regulator";
78            reg = <0x100 0x10>;
79            clock-names = "link";
80            clocks = <&sys_clk 14>;
81            reset-names = "link";
82            resets = <&sys_rst 14>;
83        };
84    };
85
86