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