Linux-libre 4.19.20-gnu
[librecmc/linux-libre.git] / Documentation / devicetree / bindings / mfd / rohm,bd71837-pmic.txt
1 * ROHM BD71837 Power Management Integrated Circuit bindings
2
3 BD71837MWV is a programmable Power Management IC for powering single-core,
4 dual-core, and quad-core SoCs such as NXP-i.MX 8M. It is optimized for
5 low BOM cost and compact solution footprint. It integrates 8 Buck
6 egulators and 7 LDOs to provide all the power rails required by the SoC and
7 the commonly used peripherals.
8
9 Datasheet for PMIC is available at:
10 https://www.rohm.com/datasheet/BD71837MWV/bd71837mwv-e
11
12 Required properties:
13  - compatible           : Should be "rohm,bd71837".
14  - reg                  : I2C slave address.
15  - interrupt-parent     : Phandle to the parent interrupt controller.
16  - interrupts           : The interrupt line the device is connected to.
17  - clocks               : The parent clock connected to PMIC. If this is missing
18                           32768 KHz clock is assumed.
19  - #clock-cells         : Should be 0.
20  - regulators:          : List of child nodes that specify the regulators.
21                           Please see ../regulator/rohm,bd71837-regulator.txt
22
23 Optional properties:
24 - clock-output-names    : Should contain name for output clock.
25
26 Example:
27
28         /* external oscillator node */
29         osc: oscillator {
30                 compatible = "fixed-clock";
31                 #clock-cells = <1>;
32                 clock-frequency  = <32768>;
33                 clock-output-names = "osc";
34         };
35
36         pmic: pmic@4b {
37                 compatible = "rohm,bd71837";
38                 reg = <0x4b>;
39                 interrupt-parent = <&gpio1>;
40                 interrupts = <29 GPIO_ACTIVE_LOW>;
41                 interrupt-names = "irq";
42                 #clock-cells = <0>;
43                 clocks = <&osc 0>;
44                 clock-output-names = "bd71837-32k-out";
45
46                 regulators {
47                         buck1: BUCK1 {
48                                 regulator-name = "buck1";
49                                 regulator-min-microvolt = <700000>;
50                                 regulator-max-microvolt = <1300000>;
51                                 regulator-boot-on;
52                                 regulator-ramp-delay = <1250>;
53                         };
54                 };
55         };
56
57         /* Clock consumer node */
58         rtc@0 {
59                 compatible = "company,my-rtc";
60                 clock-names = "my-clock";
61                 clocks = <&pmic>;
62         };