xref: /freebsd/sys/contrib/device-tree/Bindings/mfd/da9062.txt (revision 8bab661a3316d8bd9b9fbd11a3b4371b91507bd2)
1c66ec88fSEmmanuel Vadot* Dialog DA9062 Power Management Integrated Circuit (PMIC)
2c66ec88fSEmmanuel Vadot
3c66ec88fSEmmanuel VadotProduct information for the DA9062 and DA9061 devices can be found here:
4c66ec88fSEmmanuel Vadot- https://www.dialog-semiconductor.com/products/da9062
5c66ec88fSEmmanuel Vadot- https://www.dialog-semiconductor.com/products/da9061
6c66ec88fSEmmanuel Vadot
7c66ec88fSEmmanuel VadotThe DA9062 PMIC consists of:
8c66ec88fSEmmanuel Vadot
9c66ec88fSEmmanuel VadotDevice                   Supply Names    Description
10c66ec88fSEmmanuel Vadot------                   ------------    -----------
11c66ec88fSEmmanuel Vadotda9062-regulator        :               : LDOs & BUCKs
12c66ec88fSEmmanuel Vadotda9062-rtc              :               : Real-Time Clock
13c66ec88fSEmmanuel Vadotda9062-onkey            :               : On Key
14c66ec88fSEmmanuel Vadotda9062-watchdog         :               : Watchdog Timer
15c66ec88fSEmmanuel Vadotda9062-thermal          :               : Thermal
16c66ec88fSEmmanuel Vadotda9062-gpio             :               : GPIOs
17c66ec88fSEmmanuel Vadot
18c66ec88fSEmmanuel VadotThe DA9061 PMIC consists of:
19c66ec88fSEmmanuel Vadot
20c66ec88fSEmmanuel VadotDevice                   Supply Names    Description
21c66ec88fSEmmanuel Vadot------                   ------------    -----------
22c66ec88fSEmmanuel Vadotda9062-regulator        :               : LDOs & BUCKs
23c66ec88fSEmmanuel Vadotda9062-onkey            :               : On Key
24c66ec88fSEmmanuel Vadotda9062-watchdog         :               : Watchdog Timer
25c66ec88fSEmmanuel Vadotda9062-thermal          :               : Thermal
26c66ec88fSEmmanuel Vadot
27c66ec88fSEmmanuel Vadot======
28c66ec88fSEmmanuel Vadot
29c66ec88fSEmmanuel VadotRequired properties:
30c66ec88fSEmmanuel Vadot
31c66ec88fSEmmanuel Vadot- compatible : Should be
32c66ec88fSEmmanuel Vadot    "dlg,da9062" for DA9062
33c66ec88fSEmmanuel Vadot    "dlg,da9061" for DA9061
34c66ec88fSEmmanuel Vadot- reg : Specifies the I2C slave address (this defaults to 0x58 but it can be
35c66ec88fSEmmanuel Vadot  modified to match the chip's OTP settings).
36c66ec88fSEmmanuel Vadot
37c66ec88fSEmmanuel VadotOptional properties:
38c66ec88fSEmmanuel Vadot
39c66ec88fSEmmanuel Vadot- gpio-controller : Marks the device as a gpio controller.
40c66ec88fSEmmanuel Vadot- #gpio-cells     : Should be two. The first cell is the pin number and the
41c66ec88fSEmmanuel Vadot                    second cell is used to specify the gpio polarity.
42c66ec88fSEmmanuel Vadot
43c66ec88fSEmmanuel VadotSee Documentation/devicetree/bindings/gpio/gpio.txt for further information on
44c66ec88fSEmmanuel VadotGPIO bindings.
45c66ec88fSEmmanuel Vadot
46*8bab661aSEmmanuel Vadot- interrupts : IRQ line information.
47*8bab661aSEmmanuel Vadot- interrupt-controller
48*8bab661aSEmmanuel Vadot
49*8bab661aSEmmanuel VadotSee Documentation/devicetree/bindings/interrupt-controller/interrupts.txt for
50*8bab661aSEmmanuel Vadotfurther information on IRQ bindings.
51*8bab661aSEmmanuel Vadot
52c66ec88fSEmmanuel VadotSub-nodes:
53c66ec88fSEmmanuel Vadot
54c66ec88fSEmmanuel Vadot- regulators : This node defines the settings for the LDOs and BUCKs.
55c66ec88fSEmmanuel Vadot  The DA9062 regulators are bound using their names listed below:
56c66ec88fSEmmanuel Vadot
57c66ec88fSEmmanuel Vadot    buck1    : BUCK_1
58c66ec88fSEmmanuel Vadot    buck2    : BUCK_2
59c66ec88fSEmmanuel Vadot    buck3    : BUCK_3
60c66ec88fSEmmanuel Vadot    buck4    : BUCK_4
61c66ec88fSEmmanuel Vadot    ldo1     : LDO_1
62c66ec88fSEmmanuel Vadot    ldo2     : LDO_2
63c66ec88fSEmmanuel Vadot    ldo3     : LDO_3
64c66ec88fSEmmanuel Vadot    ldo4     : LDO_4
65c66ec88fSEmmanuel Vadot
66c66ec88fSEmmanuel Vadot  The DA9061 regulators are bound using their names listed below:
67c66ec88fSEmmanuel Vadot
68c66ec88fSEmmanuel Vadot    buck1    : BUCK_1
69c66ec88fSEmmanuel Vadot    buck2    : BUCK_2
70c66ec88fSEmmanuel Vadot    buck3    : BUCK_3
71c66ec88fSEmmanuel Vadot    ldo1     : LDO_1
72c66ec88fSEmmanuel Vadot    ldo2     : LDO_2
73c66ec88fSEmmanuel Vadot    ldo3     : LDO_3
74c66ec88fSEmmanuel Vadot    ldo4     : LDO_4
75c66ec88fSEmmanuel Vadot
76c66ec88fSEmmanuel Vadot  The component follows the standard regulator framework and the bindings
77c66ec88fSEmmanuel Vadot  details of individual regulator device can be found in:
78c66ec88fSEmmanuel Vadot  Documentation/devicetree/bindings/regulator/regulator.txt
79c66ec88fSEmmanuel Vadot
80c66ec88fSEmmanuel Vadot  regulator-initial-mode may be specified for buck regulators using mode values
81c66ec88fSEmmanuel Vadot  from include/dt-bindings/regulator/dlg,da9063-regulator.h.
82c66ec88fSEmmanuel Vadot
83c66ec88fSEmmanuel Vadot- rtc : This node defines settings required for the Real-Time Clock associated
84c66ec88fSEmmanuel Vadot  with the DA9062. There are currently no entries in this binding, however
85c66ec88fSEmmanuel Vadot  compatible = "dlg,da9062-rtc" should be added if a node is created.
86c66ec88fSEmmanuel Vadot
87c66ec88fSEmmanuel Vadot- onkey : See ../input/da9062-onkey.txt
88c66ec88fSEmmanuel Vadot
89*8bab661aSEmmanuel Vadot- watchdog: See ../watchdog/da9062-wdt.txt
90c66ec88fSEmmanuel Vadot
91c66ec88fSEmmanuel Vadot- thermal : See ../thermal/da9062-thermal.txt
92c66ec88fSEmmanuel Vadot
93c66ec88fSEmmanuel VadotExample:
94c66ec88fSEmmanuel Vadot
95c66ec88fSEmmanuel Vadot	pmic0: da9062@58 {
96c66ec88fSEmmanuel Vadot		compatible = "dlg,da9062";
97c66ec88fSEmmanuel Vadot		reg = <0x58>;
98c66ec88fSEmmanuel Vadot		interrupt-parent = <&gpio6>;
99c66ec88fSEmmanuel Vadot		interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
100c66ec88fSEmmanuel Vadot		interrupt-controller;
101c66ec88fSEmmanuel Vadot
102c66ec88fSEmmanuel Vadot		rtc {
103c66ec88fSEmmanuel Vadot			compatible = "dlg,da9062-rtc";
104c66ec88fSEmmanuel Vadot		};
105c66ec88fSEmmanuel Vadot
106c66ec88fSEmmanuel Vadot		regulators {
107c66ec88fSEmmanuel Vadot			DA9062_BUCK1: buck1 {
108c66ec88fSEmmanuel Vadot				regulator-name = "BUCK1";
109c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <300000>;
110c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <1570000>;
111c66ec88fSEmmanuel Vadot				regulator-min-microamp = <500000>;
112c66ec88fSEmmanuel Vadot				regulator-max-microamp = <2000000>;
113c66ec88fSEmmanuel Vadot				regulator-initial-mode = <DA9063_BUCK_MODE_SYNC>;
114c66ec88fSEmmanuel Vadot				regulator-boot-on;
115c66ec88fSEmmanuel Vadot			};
116c66ec88fSEmmanuel Vadot			DA9062_LDO1: ldo1 {
117c66ec88fSEmmanuel Vadot				regulator-name = "LDO_1";
118c66ec88fSEmmanuel Vadot				regulator-min-microvolt = <900000>;
119c66ec88fSEmmanuel Vadot				regulator-max-microvolt = <3600000>;
120c66ec88fSEmmanuel Vadot				regulator-boot-on;
121c66ec88fSEmmanuel Vadot			};
122c66ec88fSEmmanuel Vadot		};
123c66ec88fSEmmanuel Vadot	};
124c66ec88fSEmmanuel Vadot
125