Merge tag 'pci-v5.17-fixes-3' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaa...
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / regulator / maxim,max20086.yaml
1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/regulator/maxim,max20086.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Maxim Integrated MAX20086-MAX20089 Camera Power Protector
8
9 maintainers:
10   - Laurent Pinchart <laurent.pinchart@ideasonboard.com>
11
12 description: |
13   The MAX20086-MAX20089 are dual/quad camera power protectors, designed to
14   deliver power over coax for radar and camera modules. They support
15   software-configurable output switching and monitoring. The output voltage and
16   current limit are fixed by the hardware design.
17
18 properties:
19   compatible:
20     enum:
21       - maxim,max20086
22       - maxim,max20087
23       - maxim,max20088
24       - maxim,max20089
25
26   reg:
27     maxItems: 1
28
29   enable-gpios:
30     maxItems: 1
31     description: GPIO connected to the EN pin, active high
32
33   in-supply:
34     description: Input supply for the camera outputs (IN pin, 3.0V to 15.0V)
35
36   vdd-supply:
37     description: Input supply for the device (VDD pin, 3.0V to 5.5V)
38
39   regulators:
40     type: object
41
42     patternProperties:
43       "^OUT[1-4]$":
44         type: object
45         $ref: regulator.yaml#
46
47     additionalProperties: false
48
49 required:
50   - compatible
51   - reg
52   - in-supply
53   - vdd-supply
54   - regulators
55
56 allOf:
57   - if:
58       properties:
59         compatible:
60           contains:
61             enum:
62               - maxim,max20088
63               - maxim,max20089
64     then:
65       properties:
66         regulators:
67           properties:
68             OUT3: false
69             OUT4: false
70
71 additionalProperties: false
72
73 examples:
74   - |
75     #include <dt-bindings/gpio/gpio.h>
76
77     i2c {
78         #address-cells = <1>;
79         #size-cells = <0>;
80
81         regulator@28 {
82             compatible = "maxim,max20087";
83             reg = <0x28>;
84
85             in-supply = <&reg_12v0>;
86             vdd-supply = <&reg_3v3>;
87
88             enable-gpios = <&gpio 108 GPIO_ACTIVE_HIGH>;
89
90             regulators {
91                 OUT1 {
92                     regulator-name = "VOUT1";
93                 };
94                 OUT2 {
95                     regulator-name = "VOUT2";
96                 };
97                 OUT3 {
98                     regulator-name = "VOUT3";
99                 };
100                 OUT4 {
101                     regulator-name = "VOUT4";
102                 };
103             };
104         };
105     };
106 ...