xref: /freebsd/sys/contrib/device-tree/Bindings/mfd/maxim,max77759.yaml (revision ae5de77ed78ae54d86cead5604869212e8008e6b)
1*ae5de77eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*ae5de77eSEmmanuel Vadot%YAML 1.2
3*ae5de77eSEmmanuel Vadot---
4*ae5de77eSEmmanuel Vadot$id: http://devicetree.org/schemas/mfd/maxim,max77759.yaml#
5*ae5de77eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*ae5de77eSEmmanuel Vadot
7*ae5de77eSEmmanuel Vadottitle: Maxim Integrated MAX77759 PMIC for USB Type-C applications
8*ae5de77eSEmmanuel Vadot
9*ae5de77eSEmmanuel Vadotmaintainers:
10*ae5de77eSEmmanuel Vadot  - André Draszik <andre.draszik@linaro.org>
11*ae5de77eSEmmanuel Vadot
12*ae5de77eSEmmanuel Vadotdescription: |
13*ae5de77eSEmmanuel Vadot  This is a part of device tree bindings for the MAX77759 companion Power
14*ae5de77eSEmmanuel Vadot  Management IC for USB Type-C applications.
15*ae5de77eSEmmanuel Vadot
16*ae5de77eSEmmanuel Vadot  The MAX77759 includes Battery Charger, Fuel Gauge, temperature sensors, USB
17*ae5de77eSEmmanuel Vadot  Type-C Port Controller (TCPC), NVMEM, and a GPIO expander.
18*ae5de77eSEmmanuel Vadot
19*ae5de77eSEmmanuel Vadotproperties:
20*ae5de77eSEmmanuel Vadot  compatible:
21*ae5de77eSEmmanuel Vadot    const: maxim,max77759
22*ae5de77eSEmmanuel Vadot
23*ae5de77eSEmmanuel Vadot  interrupts:
24*ae5de77eSEmmanuel Vadot    maxItems: 1
25*ae5de77eSEmmanuel Vadot
26*ae5de77eSEmmanuel Vadot  interrupt-controller: true
27*ae5de77eSEmmanuel Vadot
28*ae5de77eSEmmanuel Vadot  "#interrupt-cells":
29*ae5de77eSEmmanuel Vadot    const: 2
30*ae5de77eSEmmanuel Vadot
31*ae5de77eSEmmanuel Vadot  reg:
32*ae5de77eSEmmanuel Vadot    maxItems: 1
33*ae5de77eSEmmanuel Vadot
34*ae5de77eSEmmanuel Vadot  gpio:
35*ae5de77eSEmmanuel Vadot    $ref: /schemas/gpio/maxim,max77759-gpio.yaml
36*ae5de77eSEmmanuel Vadot
37*ae5de77eSEmmanuel Vadot  nvmem-0:
38*ae5de77eSEmmanuel Vadot    $ref: /schemas/nvmem/maxim,max77759-nvmem.yaml
39*ae5de77eSEmmanuel Vadot
40*ae5de77eSEmmanuel Vadotrequired:
41*ae5de77eSEmmanuel Vadot  - compatible
42*ae5de77eSEmmanuel Vadot  - interrupts
43*ae5de77eSEmmanuel Vadot  - reg
44*ae5de77eSEmmanuel Vadot
45*ae5de77eSEmmanuel VadotadditionalProperties: false
46*ae5de77eSEmmanuel Vadot
47*ae5de77eSEmmanuel Vadotexamples:
48*ae5de77eSEmmanuel Vadot  - |
49*ae5de77eSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/irq.h>
50*ae5de77eSEmmanuel Vadot
51*ae5de77eSEmmanuel Vadot    i2c {
52*ae5de77eSEmmanuel Vadot        #address-cells = <1>;
53*ae5de77eSEmmanuel Vadot        #size-cells = <0>;
54*ae5de77eSEmmanuel Vadot
55*ae5de77eSEmmanuel Vadot        pmic@66 {
56*ae5de77eSEmmanuel Vadot            compatible = "maxim,max77759";
57*ae5de77eSEmmanuel Vadot            reg = <0x66>;
58*ae5de77eSEmmanuel Vadot            interrupts-extended = <&gpa8 3 IRQ_TYPE_LEVEL_LOW>;
59*ae5de77eSEmmanuel Vadot
60*ae5de77eSEmmanuel Vadot            interrupt-controller;
61*ae5de77eSEmmanuel Vadot            #interrupt-cells = <2>;
62*ae5de77eSEmmanuel Vadot
63*ae5de77eSEmmanuel Vadot            gpio {
64*ae5de77eSEmmanuel Vadot                compatible = "maxim,max77759-gpio";
65*ae5de77eSEmmanuel Vadot
66*ae5de77eSEmmanuel Vadot                gpio-controller;
67*ae5de77eSEmmanuel Vadot                #gpio-cells = <2>;
68*ae5de77eSEmmanuel Vadot
69*ae5de77eSEmmanuel Vadot                interrupt-controller;
70*ae5de77eSEmmanuel Vadot                #interrupt-cells = <2>;
71*ae5de77eSEmmanuel Vadot            };
72*ae5de77eSEmmanuel Vadot
73*ae5de77eSEmmanuel Vadot            nvmem-0 {
74*ae5de77eSEmmanuel Vadot                compatible = "maxim,max77759-nvmem";
75*ae5de77eSEmmanuel Vadot
76*ae5de77eSEmmanuel Vadot                nvmem-layout {
77*ae5de77eSEmmanuel Vadot                    compatible = "fixed-layout";
78*ae5de77eSEmmanuel Vadot                    #address-cells = <1>;
79*ae5de77eSEmmanuel Vadot                    #size-cells = <1>;
80*ae5de77eSEmmanuel Vadot
81*ae5de77eSEmmanuel Vadot                    reboot-mode@0 {
82*ae5de77eSEmmanuel Vadot                        reg = <0x0 0x4>;
83*ae5de77eSEmmanuel Vadot                    };
84*ae5de77eSEmmanuel Vadot
85*ae5de77eSEmmanuel Vadot                    boot-reason@4 {
86*ae5de77eSEmmanuel Vadot                        reg = <0x4 0x4>;
87*ae5de77eSEmmanuel Vadot                    };
88*ae5de77eSEmmanuel Vadot
89*ae5de77eSEmmanuel Vadot                    shutdown-user-flag@8 {
90*ae5de77eSEmmanuel Vadot                        reg = <0x8 0x1>;
91*ae5de77eSEmmanuel Vadot                    };
92*ae5de77eSEmmanuel Vadot
93*ae5de77eSEmmanuel Vadot                    rsoc@10 {
94*ae5de77eSEmmanuel Vadot                        reg = <0xa 0x2>;
95*ae5de77eSEmmanuel Vadot                    };
96*ae5de77eSEmmanuel Vadot                };
97*ae5de77eSEmmanuel Vadot            };
98*ae5de77eSEmmanuel Vadot        };
99*ae5de77eSEmmanuel Vadot    };
100