1# SPDX-License-Identifier: GPL-2.0-only
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mfd/maxim,max77693.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Maxim MAX77693 MicroUSB and Companion Power Management IC
8
9maintainers:
10  - Chanwoo Choi <cw00.choi@samsung.com>
11  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
12
13description: |
14  This is a part of device tree bindings for Maxim MAX77693 MicroUSB
15  Integrated Circuit (MUIC).
16
17  The Maxim MAX77693 is a MicroUSB and Companion Power Management IC which
18  includes voltage current regulators, charger, LED/flash, haptic motor driver
19  and MicroUSB management IC.
20
21properties:
22  compatible:
23    const: maxim,max77693
24
25  interrupts:
26    maxItems: 1
27
28  reg:
29    maxItems: 1
30
31  charger:
32    $ref: /schemas/power/supply/maxim,max77693.yaml
33
34  led:
35    $ref: /schemas/leds/maxim,max77693.yaml
36
37  max77693-muic:
38    type: object
39    additionalProperties: false
40
41    properties:
42      compatible:
43        const: maxim,max77693-muic
44
45    required:
46      - compatible
47
48  motor-driver:
49    type: object
50    additionalProperties: false
51
52    properties:
53      compatible:
54        const: maxim,max77693-haptic
55
56      haptic-supply:
57        description: Power supply to the haptic motor
58
59      pwms:
60        maxItems: 1
61
62    required:
63      - compatible
64      - haptic-supply
65      - pwms
66
67  regulators:
68    $ref: ../regulator/maxim,max77693.yaml
69    description:
70      List of child nodes that specify the regulators.
71
72required:
73  - compatible
74  - interrupts
75  - reg
76
77additionalProperties: false
78
79examples:
80  - |
81    #include <dt-bindings/interrupt-controller/irq.h>
82    #include <dt-bindings/leds/common.h>
83
84    i2c {
85        #address-cells = <1>;
86        #size-cells = <0>;
87
88        pmic@66 {
89            compatible = "maxim,max77693";
90            reg = <0x66>;
91            interrupt-parent = <&gpx1>;
92            interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
93
94            regulators {
95                ESAFEOUT1 {
96                    regulator-name = "ESAFEOUT1";
97                };
98
99                ESAFEOUT2 {
100                    regulator-name = "ESAFEOUT2";
101                };
102
103                CHARGER {
104                    regulator-name = "CHARGER";
105                    regulator-min-microamp = <60000>;
106                    regulator-max-microamp = <2580000>;
107                };
108            };
109
110            motor-driver {
111                compatible = "maxim,max77693-haptic";
112                haptic-supply = <&ldo26_reg>;
113                pwms = <&pwm 0 38022 0>;
114            };
115
116            charger {
117                compatible = "maxim,max77693-charger";
118
119                maxim,constant-microvolt = <4350000>;
120                maxim,min-system-microvolt = <3600000>;
121                maxim,thermal-regulation-celsius = <100>;
122                maxim,battery-overcurrent-microamp = <3500000>;
123                maxim,charge-input-threshold-microvolt = <4300000>;
124            };
125
126            led {
127                compatible = "maxim,max77693-led";
128                maxim,boost-mode = <LEDS_BOOST_FIXED>;
129                maxim,boost-mvout = <5000>;
130                maxim,mvsys-min = <2400>;
131
132                flash-led {
133                    label = "max77693-flash";
134                    function = LED_FUNCTION_FLASH;
135                    color = <LED_COLOR_ID_WHITE>;
136                    led-sources = <0>, <1>;
137                    led-max-microamp = <500000>;
138                    flash-max-microamp = <1250000>;
139                    flash-max-timeout-us = <1000000>;
140                };
141            };
142        };
143    };
144