1*4882a593SmuzhiyunLinear Technology LTC3589, LTC3589-1, and LTC3589-2 8-output regulators 2*4882a593Smuzhiyun 3*4882a593SmuzhiyunRequired properties: 4*4882a593Smuzhiyun- compatible: "lltc,ltc3589", "lltc,ltc3589-1" or "lltc,ltc3589-2" 5*4882a593Smuzhiyun- reg: I2C slave address 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunRequired child node: 8*4882a593Smuzhiyun- regulators: Contains eight regulator child nodes sw1, sw2, sw3, bb-out, 9*4882a593Smuzhiyun ldo1, ldo2, ldo3, and ldo4, specifying the initialization data as 10*4882a593Smuzhiyun documented in Documentation/devicetree/bindings/regulator/regulator.txt. 11*4882a593Smuzhiyun 12*4882a593SmuzhiyunEach regulator is defined using the standard binding for regulators. The 13*4882a593Smuzhiyunnodes for sw1, sw2, sw3, bb-out, ldo1, and ldo2 additionally need to specify 14*4882a593Smuzhiyunthe resistor values of their external feedback voltage dividers: 15*4882a593Smuzhiyun 16*4882a593SmuzhiyunRequired properties (not on ldo3, ldo4): 17*4882a593Smuzhiyun- lltc,fb-voltage-divider: An array of two integers containing the resistor 18*4882a593Smuzhiyun values R1 and R2 of the feedback voltage divider in ohms. 19*4882a593Smuzhiyun 20*4882a593SmuzhiyunRegulators sw1, sw2, sw3, and ldo2 can regulate the feedback reference from 21*4882a593Smuzhiyun0.3625 V to 0.75 V in 12.5 mV steps. The output voltage thus ranges between 22*4882a593Smuzhiyun0.3625 * (1 + R1/R2) V and 0.75 * (1 + R1/R2) V. Regulators bb-out and ldo1 23*4882a593Smuzhiyunhave a fixed 0.8 V reference and thus output 0.8 * (1 + R1/R2) V. The ldo3 24*4882a593Smuzhiyunregulator is fixed to 1.8 V on LTC3589 and to 2.8 V on LTC3589-1,2. The ldo4 25*4882a593Smuzhiyunregulator can output between 1.8 V and 3.3 V on LTC3589 and between 1.2 V 26*4882a593Smuzhiyunand 3.2 V on LTC3589-1,2 in four steps. The ldo1 standby regulator can not 27*4882a593Smuzhiyunbe disabled and thus should have the regulator-always-on property set. 28*4882a593Smuzhiyun 29*4882a593SmuzhiyunExample: 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun ltc3589: pmic@34 { 32*4882a593Smuzhiyun compatible = "lltc,ltc3589-1"; 33*4882a593Smuzhiyun reg = <0x34>; 34*4882a593Smuzhiyun 35*4882a593Smuzhiyun regulators { 36*4882a593Smuzhiyun sw1_reg: sw1 { 37*4882a593Smuzhiyun regulator-min-microvolt = <591930>; 38*4882a593Smuzhiyun regulator-max-microvolt = <1224671>; 39*4882a593Smuzhiyun lltc,fb-voltage-divider = <100000 158000>; 40*4882a593Smuzhiyun regulator-ramp-delay = <7000>; 41*4882a593Smuzhiyun regulator-boot-on; 42*4882a593Smuzhiyun regulator-always-on; 43*4882a593Smuzhiyun }; 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun sw2_reg: sw2 { 46*4882a593Smuzhiyun regulator-min-microvolt = <704123>; 47*4882a593Smuzhiyun regulator-max-microvolt = <1456803>; 48*4882a593Smuzhiyun lltc,fb-voltage-divider = <180000 191000>; 49*4882a593Smuzhiyun regulator-ramp-delay = <7000>; 50*4882a593Smuzhiyun regulator-boot-on; 51*4882a593Smuzhiyun regulator-always-on; 52*4882a593Smuzhiyun }; 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun sw3_reg: sw3 { 55*4882a593Smuzhiyun regulator-min-microvolt = <1341250>; 56*4882a593Smuzhiyun regulator-max-microvolt = <2775000>; 57*4882a593Smuzhiyun lltc,fb-voltage-divider = <270000 100000>; 58*4882a593Smuzhiyun regulator-ramp-delay = <7000>; 59*4882a593Smuzhiyun regulator-boot-on; 60*4882a593Smuzhiyun regulator-always-on; 61*4882a593Smuzhiyun }; 62*4882a593Smuzhiyun 63*4882a593Smuzhiyun bb_out_reg: bb-out { 64*4882a593Smuzhiyun regulator-min-microvolt = <3387341>; 65*4882a593Smuzhiyun regulator-max-microvolt = <3387341>; 66*4882a593Smuzhiyun lltc,fb-voltage-divider = <511000 158000>; 67*4882a593Smuzhiyun regulator-boot-on; 68*4882a593Smuzhiyun regulator-always-on; 69*4882a593Smuzhiyun }; 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun ldo1_reg: ldo1 { 72*4882a593Smuzhiyun regulator-min-microvolt = <1306329>; 73*4882a593Smuzhiyun regulator-max-microvolt = <1306329>; 74*4882a593Smuzhiyun lltc,fb-voltage-divider = <100000 158000>; 75*4882a593Smuzhiyun regulator-boot-on; 76*4882a593Smuzhiyun regulator-always-on; 77*4882a593Smuzhiyun }; 78*4882a593Smuzhiyun 79*4882a593Smuzhiyun ldo2_reg: ldo2 { 80*4882a593Smuzhiyun regulator-min-microvolt = <704123>; 81*4882a593Smuzhiyun regulator-max-microvolt = <1456806>; 82*4882a593Smuzhiyun lltc,fb-voltage-divider = <180000 191000>; 83*4882a593Smuzhiyun regulator-ramp-delay = <7000>; 84*4882a593Smuzhiyun regulator-boot-on; 85*4882a593Smuzhiyun regulator-always-on; 86*4882a593Smuzhiyun }; 87*4882a593Smuzhiyun 88*4882a593Smuzhiyun ldo3_reg: ldo3 { 89*4882a593Smuzhiyun regulator-min-microvolt = <2800000>; 90*4882a593Smuzhiyun regulator-max-microvolt = <2800000>; 91*4882a593Smuzhiyun regulator-boot-on; 92*4882a593Smuzhiyun }; 93*4882a593Smuzhiyun 94*4882a593Smuzhiyun ldo4_reg: ldo4 { 95*4882a593Smuzhiyun regulator-min-microvolt = <1200000>; 96*4882a593Smuzhiyun regulator-max-microvolt = <3200000>; 97*4882a593Smuzhiyun }; 98*4882a593Smuzhiyun }; 99*4882a593Smuzhiyun }; 100