xref: /linux/Documentation/devicetree/bindings/mfd/maxim,max14577.yaml (revision ed6e9aa8f52f88975b4692eb00bdeaf35cd3d529)
1*ed6e9aa8SKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0-only
2*ed6e9aa8SKrzysztof Kozlowski%YAML 1.2
3*ed6e9aa8SKrzysztof Kozlowski---
4*ed6e9aa8SKrzysztof Kozlowski$id: http://devicetree.org/schemas/mfd/maxim,max14577.yaml#
5*ed6e9aa8SKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml#
6*ed6e9aa8SKrzysztof Kozlowski
7*ed6e9aa8SKrzysztof Kozlowskititle: Maxim MAX14577/MAX77836 MicroUSB and Companion Power Management IC
8*ed6e9aa8SKrzysztof Kozlowski
9*ed6e9aa8SKrzysztof Kozlowskimaintainers:
10*ed6e9aa8SKrzysztof Kozlowski  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
11*ed6e9aa8SKrzysztof Kozlowski
12*ed6e9aa8SKrzysztof Kozlowskidescription: |
13*ed6e9aa8SKrzysztof Kozlowski  This is a part of device tree bindings for Maxim MAX14577/MAX77836 MicroUSB
14*ed6e9aa8SKrzysztof Kozlowski  Integrated Circuit (MUIC).
15*ed6e9aa8SKrzysztof Kozlowski
16*ed6e9aa8SKrzysztof Kozlowski  The Maxim MAX14577 is a MicroUSB and Companion Power Management IC which
17*ed6e9aa8SKrzysztof Kozlowski  includes voltage safeout regulators, charger and MicroUSB management IC.
18*ed6e9aa8SKrzysztof Kozlowski
19*ed6e9aa8SKrzysztof Kozlowski  The Maxim MAX77836 is a MicroUSB and Companion Power Management IC which
20*ed6e9aa8SKrzysztof Kozlowski  includes voltage safeout and LDO regulators, charger, fuel-gauge and MicroUSB
21*ed6e9aa8SKrzysztof Kozlowski  management IC.
22*ed6e9aa8SKrzysztof Kozlowski
23*ed6e9aa8SKrzysztof Kozlowskiproperties:
24*ed6e9aa8SKrzysztof Kozlowski  compatible:
25*ed6e9aa8SKrzysztof Kozlowski    enum:
26*ed6e9aa8SKrzysztof Kozlowski      - maxim,max14577
27*ed6e9aa8SKrzysztof Kozlowski      - maxim,max77836
28*ed6e9aa8SKrzysztof Kozlowski
29*ed6e9aa8SKrzysztof Kozlowski  interrupts:
30*ed6e9aa8SKrzysztof Kozlowski    maxItems: 1
31*ed6e9aa8SKrzysztof Kozlowski
32*ed6e9aa8SKrzysztof Kozlowski  reg:
33*ed6e9aa8SKrzysztof Kozlowski    maxItems: 1
34*ed6e9aa8SKrzysztof Kozlowski
35*ed6e9aa8SKrzysztof Kozlowski  wakeup-source: true
36*ed6e9aa8SKrzysztof Kozlowski
37*ed6e9aa8SKrzysztof Kozlowski  charger:
38*ed6e9aa8SKrzysztof Kozlowski    $ref: /schemas/power/supply/maxim,max14577.yaml
39*ed6e9aa8SKrzysztof Kozlowski
40*ed6e9aa8SKrzysztof Kozlowski  extcon:
41*ed6e9aa8SKrzysztof Kozlowski    type: object
42*ed6e9aa8SKrzysztof Kozlowski    properties:
43*ed6e9aa8SKrzysztof Kozlowski      compatible:
44*ed6e9aa8SKrzysztof Kozlowski        enum:
45*ed6e9aa8SKrzysztof Kozlowski          - maxim,max14577-muic
46*ed6e9aa8SKrzysztof Kozlowski          - maxim,max77836-muic
47*ed6e9aa8SKrzysztof Kozlowski
48*ed6e9aa8SKrzysztof Kozlowski    required:
49*ed6e9aa8SKrzysztof Kozlowski      - compatible
50*ed6e9aa8SKrzysztof Kozlowski
51*ed6e9aa8SKrzysztof Kozlowski  regulators:
52*ed6e9aa8SKrzysztof Kozlowski    $ref: /schemas/regulator/maxim,max14577.yaml
53*ed6e9aa8SKrzysztof Kozlowski
54*ed6e9aa8SKrzysztof Kozlowskirequired:
55*ed6e9aa8SKrzysztof Kozlowski  - compatible
56*ed6e9aa8SKrzysztof Kozlowski  - interrupts
57*ed6e9aa8SKrzysztof Kozlowski  - reg
58*ed6e9aa8SKrzysztof Kozlowski  - charger
59*ed6e9aa8SKrzysztof Kozlowski
60*ed6e9aa8SKrzysztof KozlowskiallOf:
61*ed6e9aa8SKrzysztof Kozlowski  - if:
62*ed6e9aa8SKrzysztof Kozlowski      properties:
63*ed6e9aa8SKrzysztof Kozlowski        compatible:
64*ed6e9aa8SKrzysztof Kozlowski          contains:
65*ed6e9aa8SKrzysztof Kozlowski            const: maxim,max14577
66*ed6e9aa8SKrzysztof Kozlowski    then:
67*ed6e9aa8SKrzysztof Kozlowski      properties:
68*ed6e9aa8SKrzysztof Kozlowski        charger:
69*ed6e9aa8SKrzysztof Kozlowski          properties:
70*ed6e9aa8SKrzysztof Kozlowski            compatible:
71*ed6e9aa8SKrzysztof Kozlowski              const: maxim,max14577-charger
72*ed6e9aa8SKrzysztof Kozlowski        extcon:
73*ed6e9aa8SKrzysztof Kozlowski          properties:
74*ed6e9aa8SKrzysztof Kozlowski            compatible:
75*ed6e9aa8SKrzysztof Kozlowski              const: maxim,max14577-muic
76*ed6e9aa8SKrzysztof Kozlowski        regulator:
77*ed6e9aa8SKrzysztof Kozlowski          properties:
78*ed6e9aa8SKrzysztof Kozlowski            compatible:
79*ed6e9aa8SKrzysztof Kozlowski              const: maxim,max14577-regulator
80*ed6e9aa8SKrzysztof Kozlowski    else:
81*ed6e9aa8SKrzysztof Kozlowski      properties:
82*ed6e9aa8SKrzysztof Kozlowski        charger:
83*ed6e9aa8SKrzysztof Kozlowski          properties:
84*ed6e9aa8SKrzysztof Kozlowski            compatible:
85*ed6e9aa8SKrzysztof Kozlowski              const: maxim,max77836-charger
86*ed6e9aa8SKrzysztof Kozlowski        extcon:
87*ed6e9aa8SKrzysztof Kozlowski          properties:
88*ed6e9aa8SKrzysztof Kozlowski            compatible:
89*ed6e9aa8SKrzysztof Kozlowski              const: maxim,max77836-muic
90*ed6e9aa8SKrzysztof Kozlowski        regulator:
91*ed6e9aa8SKrzysztof Kozlowski          properties:
92*ed6e9aa8SKrzysztof Kozlowski            compatible:
93*ed6e9aa8SKrzysztof Kozlowski              const: maxim,max77836-regulator
94*ed6e9aa8SKrzysztof Kozlowski
95*ed6e9aa8SKrzysztof KozlowskiadditionalProperties: false
96*ed6e9aa8SKrzysztof Kozlowski
97*ed6e9aa8SKrzysztof Kozlowskiexamples:
98*ed6e9aa8SKrzysztof Kozlowski  - |
99*ed6e9aa8SKrzysztof Kozlowski    #include <dt-bindings/interrupt-controller/irq.h>
100*ed6e9aa8SKrzysztof Kozlowski
101*ed6e9aa8SKrzysztof Kozlowski    i2c {
102*ed6e9aa8SKrzysztof Kozlowski        #address-cells = <1>;
103*ed6e9aa8SKrzysztof Kozlowski        #size-cells = <0>;
104*ed6e9aa8SKrzysztof Kozlowski
105*ed6e9aa8SKrzysztof Kozlowski        pmic@25 {
106*ed6e9aa8SKrzysztof Kozlowski            compatible = "maxim,max14577";
107*ed6e9aa8SKrzysztof Kozlowski            reg = <0x25>;
108*ed6e9aa8SKrzysztof Kozlowski            interrupt-parent = <&gpx1>;
109*ed6e9aa8SKrzysztof Kozlowski            interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
110*ed6e9aa8SKrzysztof Kozlowski
111*ed6e9aa8SKrzysztof Kozlowski            extcon {
112*ed6e9aa8SKrzysztof Kozlowski                compatible = "maxim,max14577-muic";
113*ed6e9aa8SKrzysztof Kozlowski            };
114*ed6e9aa8SKrzysztof Kozlowski
115*ed6e9aa8SKrzysztof Kozlowski            regulators {
116*ed6e9aa8SKrzysztof Kozlowski                compatible = "maxim,max14577-regulator";
117*ed6e9aa8SKrzysztof Kozlowski
118*ed6e9aa8SKrzysztof Kozlowski                SAFEOUT {
119*ed6e9aa8SKrzysztof Kozlowski                    regulator-name = "SAFEOUT";
120*ed6e9aa8SKrzysztof Kozlowski                };
121*ed6e9aa8SKrzysztof Kozlowski
122*ed6e9aa8SKrzysztof Kozlowski                CHARGER {
123*ed6e9aa8SKrzysztof Kozlowski                    regulator-name = "CHARGER";
124*ed6e9aa8SKrzysztof Kozlowski                    regulator-min-microamp = <90000>;
125*ed6e9aa8SKrzysztof Kozlowski                    regulator-max-microamp = <950000>;
126*ed6e9aa8SKrzysztof Kozlowski                    regulator-boot-on;
127*ed6e9aa8SKrzysztof Kozlowski                };
128*ed6e9aa8SKrzysztof Kozlowski            };
129*ed6e9aa8SKrzysztof Kozlowski
130*ed6e9aa8SKrzysztof Kozlowski            charger {
131*ed6e9aa8SKrzysztof Kozlowski                compatible = "maxim,max14577-charger";
132*ed6e9aa8SKrzysztof Kozlowski
133*ed6e9aa8SKrzysztof Kozlowski                maxim,constant-uvolt = <4350000>;
134*ed6e9aa8SKrzysztof Kozlowski                maxim,fast-charge-uamp = <450000>;
135*ed6e9aa8SKrzysztof Kozlowski                maxim,eoc-uamp = <50000>;
136*ed6e9aa8SKrzysztof Kozlowski                maxim,ovp-uvolt = <6500000>;
137*ed6e9aa8SKrzysztof Kozlowski            };
138*ed6e9aa8SKrzysztof Kozlowski        };
139*ed6e9aa8SKrzysztof Kozlowski    };
140*ed6e9aa8SKrzysztof Kozlowski
141*ed6e9aa8SKrzysztof Kozlowski  - |
142*ed6e9aa8SKrzysztof Kozlowski    #include <dt-bindings/interrupt-controller/irq.h>
143*ed6e9aa8SKrzysztof Kozlowski
144*ed6e9aa8SKrzysztof Kozlowski    i2c {
145*ed6e9aa8SKrzysztof Kozlowski        #address-cells = <1>;
146*ed6e9aa8SKrzysztof Kozlowski        #size-cells = <0>;
147*ed6e9aa8SKrzysztof Kozlowski
148*ed6e9aa8SKrzysztof Kozlowski        pmic@25 {
149*ed6e9aa8SKrzysztof Kozlowski            compatible = "maxim,max77836";
150*ed6e9aa8SKrzysztof Kozlowski            interrupt-parent = <&gpx1>;
151*ed6e9aa8SKrzysztof Kozlowski            interrupts = <5 IRQ_TYPE_NONE>;
152*ed6e9aa8SKrzysztof Kozlowski            reg = <0x25>;
153*ed6e9aa8SKrzysztof Kozlowski            wakeup-source;
154*ed6e9aa8SKrzysztof Kozlowski
155*ed6e9aa8SKrzysztof Kozlowski            extcon {
156*ed6e9aa8SKrzysztof Kozlowski                compatible = "maxim,max77836-muic";
157*ed6e9aa8SKrzysztof Kozlowski            };
158*ed6e9aa8SKrzysztof Kozlowski
159*ed6e9aa8SKrzysztof Kozlowski            regulators {
160*ed6e9aa8SKrzysztof Kozlowski                compatible = "maxim,max77836-regulator";
161*ed6e9aa8SKrzysztof Kozlowski
162*ed6e9aa8SKrzysztof Kozlowski                SAFEOUT {
163*ed6e9aa8SKrzysztof Kozlowski                    regulator-name = "SAFEOUT";
164*ed6e9aa8SKrzysztof Kozlowski                };
165*ed6e9aa8SKrzysztof Kozlowski
166*ed6e9aa8SKrzysztof Kozlowski                CHARGER {
167*ed6e9aa8SKrzysztof Kozlowski                    regulator-name = "CHARGER";
168*ed6e9aa8SKrzysztof Kozlowski                    regulator-min-microamp = <45000>;
169*ed6e9aa8SKrzysztof Kozlowski                    regulator-max-microamp = <475000>;
170*ed6e9aa8SKrzysztof Kozlowski                    regulator-boot-on;
171*ed6e9aa8SKrzysztof Kozlowski                };
172*ed6e9aa8SKrzysztof Kozlowski
173*ed6e9aa8SKrzysztof Kozlowski                LDO1 {
174*ed6e9aa8SKrzysztof Kozlowski                    regulator-name = "MOT_2.7V";
175*ed6e9aa8SKrzysztof Kozlowski                    regulator-min-microvolt = <1100000>;
176*ed6e9aa8SKrzysztof Kozlowski                    regulator-max-microvolt = <2700000>;
177*ed6e9aa8SKrzysztof Kozlowski                };
178*ed6e9aa8SKrzysztof Kozlowski
179*ed6e9aa8SKrzysztof Kozlowski                LDO2 {
180*ed6e9aa8SKrzysztof Kozlowski                    regulator-name = "UNUSED_LDO2";
181*ed6e9aa8SKrzysztof Kozlowski                    regulator-min-microvolt = <800000>;
182*ed6e9aa8SKrzysztof Kozlowski                    regulator-max-microvolt = <3950000>;
183*ed6e9aa8SKrzysztof Kozlowski                };
184*ed6e9aa8SKrzysztof Kozlowski            };
185*ed6e9aa8SKrzysztof Kozlowski
186*ed6e9aa8SKrzysztof Kozlowski            charger {
187*ed6e9aa8SKrzysztof Kozlowski                compatible = "maxim,max77836-charger";
188*ed6e9aa8SKrzysztof Kozlowski
189*ed6e9aa8SKrzysztof Kozlowski                maxim,constant-uvolt = <4350000>;
190*ed6e9aa8SKrzysztof Kozlowski                maxim,fast-charge-uamp = <225000>;
191*ed6e9aa8SKrzysztof Kozlowski                maxim,eoc-uamp = <7500>;
192*ed6e9aa8SKrzysztof Kozlowski                maxim,ovp-uvolt = <6500000>;
193*ed6e9aa8SKrzysztof Kozlowski            };
194*ed6e9aa8SKrzysztof Kozlowski        };
195*ed6e9aa8SKrzysztof Kozlowski    };
196