xref: /freebsd/sys/contrib/device-tree/Bindings/mfd/max14577.txt (revision 8cc087a1eee9ec1ca9f7ac1e63ad51bdb5a682eb)
1c66ec88fSEmmanuel VadotMaxim MAX14577/77836 Multi-Function Device
2c66ec88fSEmmanuel Vadot
3c66ec88fSEmmanuel VadotMAX14577 is a Multi-Function Device with Micro-USB Interface Circuit, Li+
4c66ec88fSEmmanuel VadotBattery Charger and SFOUT LDO output for powering USB devices. It is
5c66ec88fSEmmanuel Vadotinterfaced to host controller using I2C.
6c66ec88fSEmmanuel Vadot
7c66ec88fSEmmanuel VadotMAX77836 additionally contains PMIC (with two LDO regulators) and Fuel Gauge.
8c66ec88fSEmmanuel VadotFor the description of Fuel Gauge low SOC alert interrupt see:
9c66ec88fSEmmanuel Vadot../power/supply/max17040_battery.txt
10c66ec88fSEmmanuel Vadot
11c66ec88fSEmmanuel Vadot
12c66ec88fSEmmanuel VadotRequired properties:
13c66ec88fSEmmanuel Vadot- compatible : Must be "maxim,max14577" or "maxim,max77836".
14c66ec88fSEmmanuel Vadot- reg : I2C slave address for the max14577 chip (0x25 for max14577/max77836)
15c66ec88fSEmmanuel Vadot- interrupts : IRQ line for the chip.
16c66ec88fSEmmanuel Vadot
17c66ec88fSEmmanuel Vadot
18c66ec88fSEmmanuel VadotRequired nodes:
19c66ec88fSEmmanuel Vadot - charger :
20c66ec88fSEmmanuel Vadot	Node for configuring the charger driver.
21c66ec88fSEmmanuel Vadot	Required properties:
22c66ec88fSEmmanuel Vadot		- compatible : "maxim,max14577-charger"
23c66ec88fSEmmanuel Vadot			or "maxim,max77836-charger"
24c66ec88fSEmmanuel Vadot		- maxim,fast-charge-uamp : Current in uA for Fast Charge;
25c66ec88fSEmmanuel Vadot			Valid values:
26c66ec88fSEmmanuel Vadot			- for max14577: 90000 - 950000;
27c66ec88fSEmmanuel Vadot			- for max77836: 45000 - 475000;
28c66ec88fSEmmanuel Vadot		- maxim,eoc-uamp : Current in uA for End-Of-Charge mode;
29c66ec88fSEmmanuel Vadot			Valid values:
30c66ec88fSEmmanuel Vadot			- for max14577: 50000 - 200000;
31c66ec88fSEmmanuel Vadot			- for max77836: 5000 - 100000;
32c66ec88fSEmmanuel Vadot		- maxim,ovp-uvolt : OverVoltage Protection Threshold in uV;
33c66ec88fSEmmanuel Vadot			In an overvoltage condition, INT asserts and charging
34c66ec88fSEmmanuel Vadot			stops. Valid values:
35c66ec88fSEmmanuel Vadot			- 6000000, 6500000, 7000000, 7500000;
36c66ec88fSEmmanuel Vadot		- maxim,constant-uvolt : Battery Constant Voltage in uV;
37c66ec88fSEmmanuel Vadot			Valid values:
38c66ec88fSEmmanuel Vadot			- 4000000 - 4280000 (step by 20000);
39c66ec88fSEmmanuel Vadot			- 4350000;
40c66ec88fSEmmanuel Vadot
41c66ec88fSEmmanuel Vadot
42c66ec88fSEmmanuel VadotOptional nodes:
43c66ec88fSEmmanuel Vadot- max14577-muic/max77836-muic :
44c66ec88fSEmmanuel Vadot	Node used only by extcon consumers.
45c66ec88fSEmmanuel Vadot	Required properties:
46c66ec88fSEmmanuel Vadot		- compatible : "maxim,max14577-muic" or "maxim,max77836-muic"
47c66ec88fSEmmanuel Vadot
48c66ec88fSEmmanuel Vadot- regulators :
49c66ec88fSEmmanuel Vadot	Required properties:
50c66ec88fSEmmanuel Vadot		- compatible : "maxim,max14577-regulator"
51c66ec88fSEmmanuel Vadot			or "maxim,max77836-regulator"
52c66ec88fSEmmanuel Vadot
53c66ec88fSEmmanuel Vadot	May contain a sub-node per regulator from the list below. Each
54c66ec88fSEmmanuel Vadot	sub-node should contain the constraints and initialization information
55c66ec88fSEmmanuel Vadot	for that regulator. See regulator.txt for a description of standard
56c66ec88fSEmmanuel Vadot	properties for these sub-nodes.
57c66ec88fSEmmanuel Vadot
58c66ec88fSEmmanuel Vadot	List of valid regulator names:
59c66ec88fSEmmanuel Vadot	- for max14577: CHARGER, SAFEOUT.
60c66ec88fSEmmanuel Vadot	- for max77836: CHARGER, SAFEOUT, LDO1, LDO2.
61c66ec88fSEmmanuel Vadot
62c66ec88fSEmmanuel Vadot	The SAFEOUT is a fixed voltage regulator so there is no need to specify
63c66ec88fSEmmanuel Vadot	voltages for it.
64c66ec88fSEmmanuel Vadot
65c66ec88fSEmmanuel Vadot
66c66ec88fSEmmanuel VadotExample:
67c66ec88fSEmmanuel Vadot
68c66ec88fSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
69c66ec88fSEmmanuel Vadot
70c66ec88fSEmmanuel Vadotmax14577@25 {
71c66ec88fSEmmanuel Vadot	compatible = "maxim,max14577";
72c66ec88fSEmmanuel Vadot	reg = <0x25>;
73c66ec88fSEmmanuel Vadot	interrupt-parent = <&gpx1>;
74*8cc087a1SEmmanuel Vadot	interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
75c66ec88fSEmmanuel Vadot
76c66ec88fSEmmanuel Vadot	muic: max14577-muic {
77c66ec88fSEmmanuel Vadot		compatible = "maxim,max14577-muic";
78c66ec88fSEmmanuel Vadot	};
79c66ec88fSEmmanuel Vadot
80c66ec88fSEmmanuel Vadot	regulators {
81c66ec88fSEmmanuel Vadot		compatible = "maxim,max14577-regulator";
82c66ec88fSEmmanuel Vadot
83c66ec88fSEmmanuel Vadot		SAFEOUT {
84c66ec88fSEmmanuel Vadot			regulator-name = "SAFEOUT";
85c66ec88fSEmmanuel Vadot		};
86c66ec88fSEmmanuel Vadot		CHARGER {
87c66ec88fSEmmanuel Vadot			regulator-name = "CHARGER";
88c66ec88fSEmmanuel Vadot			regulator-min-microamp = <90000>;
89c66ec88fSEmmanuel Vadot			regulator-max-microamp = <950000>;
90c66ec88fSEmmanuel Vadot			regulator-boot-on;
91c66ec88fSEmmanuel Vadot		};
92c66ec88fSEmmanuel Vadot	};
93c66ec88fSEmmanuel Vadot
94c66ec88fSEmmanuel Vadot	charger {
95c66ec88fSEmmanuel Vadot		compatible = "maxim,max14577-charger";
96c66ec88fSEmmanuel Vadot
97c66ec88fSEmmanuel Vadot		maxim,constant-uvolt = <4350000>;
98c66ec88fSEmmanuel Vadot		maxim,fast-charge-uamp = <450000>;
99c66ec88fSEmmanuel Vadot		maxim,eoc-uamp = <50000>;
100c66ec88fSEmmanuel Vadot		maxim,ovp-uvolt = <6500000>;
101c66ec88fSEmmanuel Vadot	};
102c66ec88fSEmmanuel Vadot};
103c66ec88fSEmmanuel Vadot
104c66ec88fSEmmanuel Vadot
105c66ec88fSEmmanuel Vadotmax77836@25 {
106c66ec88fSEmmanuel Vadot	compatible = "maxim,max77836";
107c66ec88fSEmmanuel Vadot	reg = <0x25>;
108c66ec88fSEmmanuel Vadot	interrupt-parent = <&gpx1>;
109*8cc087a1SEmmanuel Vadot	interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
110c66ec88fSEmmanuel Vadot
111c66ec88fSEmmanuel Vadot	muic: max77836-muic {
112c66ec88fSEmmanuel Vadot		compatible = "maxim,max77836-muic";
113c66ec88fSEmmanuel Vadot	};
114c66ec88fSEmmanuel Vadot
115c66ec88fSEmmanuel Vadot	regulators {
116c66ec88fSEmmanuel Vadot		compatible = "maxim,max77836-regulator";
117c66ec88fSEmmanuel Vadot
118c66ec88fSEmmanuel Vadot		SAFEOUT {
119c66ec88fSEmmanuel Vadot			regulator-name = "SAFEOUT";
120c66ec88fSEmmanuel Vadot		};
121c66ec88fSEmmanuel Vadot		CHARGER {
122c66ec88fSEmmanuel Vadot			regulator-name = "CHARGER";
123c66ec88fSEmmanuel Vadot			regulator-min-microamp = <90000>;
124c66ec88fSEmmanuel Vadot			regulator-max-microamp = <950000>;
125c66ec88fSEmmanuel Vadot			regulator-boot-on;
126c66ec88fSEmmanuel Vadot		};
127c66ec88fSEmmanuel Vadot		LDO1 {
128c66ec88fSEmmanuel Vadot			regulator-name = "LDO1";
129c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <2700000>;
130c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <2700000>;
131c66ec88fSEmmanuel Vadot		};
132c66ec88fSEmmanuel Vadot		LDO2 {
133c66ec88fSEmmanuel Vadot			regulator-name = "LDO2";
134c66ec88fSEmmanuel Vadot			regulator-min-microvolt = <800000>;
135c66ec88fSEmmanuel Vadot			regulator-max-microvolt = <3950000>;
136c66ec88fSEmmanuel Vadot		};
137c66ec88fSEmmanuel Vadot	};
138c66ec88fSEmmanuel Vadot
139c66ec88fSEmmanuel Vadot	charger {
140c66ec88fSEmmanuel Vadot		compatible = "maxim,max77836-charger";
141c66ec88fSEmmanuel Vadot
142c66ec88fSEmmanuel Vadot		maxim,constant-uvolt = <4350000>;
143c66ec88fSEmmanuel Vadot		maxim,fast-charge-uamp = <225000>;
144c66ec88fSEmmanuel Vadot		maxim,eoc-uamp = <7500>;
145c66ec88fSEmmanuel Vadot		maxim,ovp-uvolt = <6500000>;
146c66ec88fSEmmanuel Vadot	};
147c66ec88fSEmmanuel Vadot};
148