18c2ecf20Sopenharmony_ciLinear Technology LTC3589, LTC3589-1, and LTC3589-2 8-output regulators 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciRequired properties: 48c2ecf20Sopenharmony_ci- compatible: "lltc,ltc3589", "lltc,ltc3589-1" or "lltc,ltc3589-2" 58c2ecf20Sopenharmony_ci- reg: I2C slave address 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_ciRequired child node: 88c2ecf20Sopenharmony_ci- regulators: Contains eight regulator child nodes sw1, sw2, sw3, bb-out, 98c2ecf20Sopenharmony_ci ldo1, ldo2, ldo3, and ldo4, specifying the initialization data as 108c2ecf20Sopenharmony_ci documented in Documentation/devicetree/bindings/regulator/regulator.txt. 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ciEach regulator is defined using the standard binding for regulators. The 138c2ecf20Sopenharmony_cinodes for sw1, sw2, sw3, bb-out, ldo1, and ldo2 additionally need to specify 148c2ecf20Sopenharmony_cithe resistor values of their external feedback voltage dividers: 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ciRequired properties (not on ldo3, ldo4): 178c2ecf20Sopenharmony_ci- lltc,fb-voltage-divider: An array of two integers containing the resistor 188c2ecf20Sopenharmony_ci values R1 and R2 of the feedback voltage divider in ohms. 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ciRegulators sw1, sw2, sw3, and ldo2 can regulate the feedback reference from 218c2ecf20Sopenharmony_ci0.3625 V to 0.75 V in 12.5 mV steps. The output voltage thus ranges between 228c2ecf20Sopenharmony_ci0.3625 * (1 + R1/R2) V and 0.75 * (1 + R1/R2) V. Regulators bb-out and ldo1 238c2ecf20Sopenharmony_cihave a fixed 0.8 V reference and thus output 0.8 * (1 + R1/R2) V. The ldo3 248c2ecf20Sopenharmony_ciregulator is fixed to 1.8 V on LTC3589 and to 2.8 V on LTC3589-1,2. The ldo4 258c2ecf20Sopenharmony_ciregulator can output between 1.8 V and 3.3 V on LTC3589 and between 1.2 V 268c2ecf20Sopenharmony_ciand 3.2 V on LTC3589-1,2 in four steps. The ldo1 standby regulator can not 278c2ecf20Sopenharmony_cibe disabled and thus should have the regulator-always-on property set. 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ciExample: 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_ci ltc3589: pmic@34 { 328c2ecf20Sopenharmony_ci compatible = "lltc,ltc3589-1"; 338c2ecf20Sopenharmony_ci reg = <0x34>; 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ci regulators { 368c2ecf20Sopenharmony_ci sw1_reg: sw1 { 378c2ecf20Sopenharmony_ci regulator-min-microvolt = <591930>; 388c2ecf20Sopenharmony_ci regulator-max-microvolt = <1224671>; 398c2ecf20Sopenharmony_ci lltc,fb-voltage-divider = <100000 158000>; 408c2ecf20Sopenharmony_ci regulator-ramp-delay = <7000>; 418c2ecf20Sopenharmony_ci regulator-boot-on; 428c2ecf20Sopenharmony_ci regulator-always-on; 438c2ecf20Sopenharmony_ci }; 448c2ecf20Sopenharmony_ci 458c2ecf20Sopenharmony_ci sw2_reg: sw2 { 468c2ecf20Sopenharmony_ci regulator-min-microvolt = <704123>; 478c2ecf20Sopenharmony_ci regulator-max-microvolt = <1456803>; 488c2ecf20Sopenharmony_ci lltc,fb-voltage-divider = <180000 191000>; 498c2ecf20Sopenharmony_ci regulator-ramp-delay = <7000>; 508c2ecf20Sopenharmony_ci regulator-boot-on; 518c2ecf20Sopenharmony_ci regulator-always-on; 528c2ecf20Sopenharmony_ci }; 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ci sw3_reg: sw3 { 558c2ecf20Sopenharmony_ci regulator-min-microvolt = <1341250>; 568c2ecf20Sopenharmony_ci regulator-max-microvolt = <2775000>; 578c2ecf20Sopenharmony_ci lltc,fb-voltage-divider = <270000 100000>; 588c2ecf20Sopenharmony_ci regulator-ramp-delay = <7000>; 598c2ecf20Sopenharmony_ci regulator-boot-on; 608c2ecf20Sopenharmony_ci regulator-always-on; 618c2ecf20Sopenharmony_ci }; 628c2ecf20Sopenharmony_ci 638c2ecf20Sopenharmony_ci bb_out_reg: bb-out { 648c2ecf20Sopenharmony_ci regulator-min-microvolt = <3387341>; 658c2ecf20Sopenharmony_ci regulator-max-microvolt = <3387341>; 668c2ecf20Sopenharmony_ci lltc,fb-voltage-divider = <511000 158000>; 678c2ecf20Sopenharmony_ci regulator-boot-on; 688c2ecf20Sopenharmony_ci regulator-always-on; 698c2ecf20Sopenharmony_ci }; 708c2ecf20Sopenharmony_ci 718c2ecf20Sopenharmony_ci ldo1_reg: ldo1 { 728c2ecf20Sopenharmony_ci regulator-min-microvolt = <1306329>; 738c2ecf20Sopenharmony_ci regulator-max-microvolt = <1306329>; 748c2ecf20Sopenharmony_ci lltc,fb-voltage-divider = <100000 158000>; 758c2ecf20Sopenharmony_ci regulator-boot-on; 768c2ecf20Sopenharmony_ci regulator-always-on; 778c2ecf20Sopenharmony_ci }; 788c2ecf20Sopenharmony_ci 798c2ecf20Sopenharmony_ci ldo2_reg: ldo2 { 808c2ecf20Sopenharmony_ci regulator-min-microvolt = <704123>; 818c2ecf20Sopenharmony_ci regulator-max-microvolt = <1456806>; 828c2ecf20Sopenharmony_ci lltc,fb-voltage-divider = <180000 191000>; 838c2ecf20Sopenharmony_ci regulator-ramp-delay = <7000>; 848c2ecf20Sopenharmony_ci regulator-boot-on; 858c2ecf20Sopenharmony_ci regulator-always-on; 868c2ecf20Sopenharmony_ci }; 878c2ecf20Sopenharmony_ci 888c2ecf20Sopenharmony_ci ldo3_reg: ldo3 { 898c2ecf20Sopenharmony_ci regulator-min-microvolt = <2800000>; 908c2ecf20Sopenharmony_ci regulator-max-microvolt = <2800000>; 918c2ecf20Sopenharmony_ci regulator-boot-on; 928c2ecf20Sopenharmony_ci }; 938c2ecf20Sopenharmony_ci 948c2ecf20Sopenharmony_ci ldo4_reg: ldo4 { 958c2ecf20Sopenharmony_ci regulator-min-microvolt = <1200000>; 968c2ecf20Sopenharmony_ci regulator-max-microvolt = <3200000>; 978c2ecf20Sopenharmony_ci }; 988c2ecf20Sopenharmony_ci }; 998c2ecf20Sopenharmony_ci }; 100