18c2ecf20Sopenharmony_ciBinding for Maxim MAX77686 regulators 28c2ecf20Sopenharmony_ci 38c2ecf20Sopenharmony_ciThis is a part of the device tree bindings of MAX77686 multi-function device. 48c2ecf20Sopenharmony_ciMore information can be found in ../mfd/max77686.txt file. 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ciThe MAX77686 PMIC has 9 high-efficiency Buck and 26 Low-DropOut (LDO) 78c2ecf20Sopenharmony_ciregulators that can be controlled over I2C. 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ciFollowing properties should be present in main device node of the MFD chip. 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ciOptional node: 128c2ecf20Sopenharmony_ci- voltage-regulators : The regulators of max77686 have to be instantiated 138c2ecf20Sopenharmony_ci under subnode named "voltage-regulators" using the following format. 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ci regulator_name { 168c2ecf20Sopenharmony_ci regulator-compatible = LDOn/BUCKn 178c2ecf20Sopenharmony_ci standard regulator constraints.... 188c2ecf20Sopenharmony_ci }; 198c2ecf20Sopenharmony_ci refer Documentation/devicetree/bindings/regulator/regulator.txt 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci The regulator node's name should be initialized with a string 228c2ecf20Sopenharmony_cito get matched with their hardware counterparts as follow: 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci -LDOn : for LDOs, where n can lie in range 1 to 26. 258c2ecf20Sopenharmony_ci example: LDO1, LDO2, LDO26. 268c2ecf20Sopenharmony_ci -BUCKn : for BUCKs, where n can lie in range 1 to 9. 278c2ecf20Sopenharmony_ci example: BUCK1, BUCK5, BUCK9. 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ci Regulators which can be turned off during system suspend: 308c2ecf20Sopenharmony_ci -LDOn : 2, 6-8, 10-12, 14-16, 318c2ecf20Sopenharmony_ci -BUCKn : 1-4. 328c2ecf20Sopenharmony_ci Use standard regulator bindings for it ('regulator-off-in-suspend'). 338c2ecf20Sopenharmony_ci 348c2ecf20Sopenharmony_ci LDO20, LDO21, LDO22, BUCK8 and BUCK9 can be configured to GPIO enable 358c2ecf20Sopenharmony_ci control. To turn this feature on this property must be added to the regulator 368c2ecf20Sopenharmony_ci sub-node: 378c2ecf20Sopenharmony_ci - maxim,ena-gpios : one GPIO specifier enable control (the gpio 388c2ecf20Sopenharmony_ci flags are actually ignored and always 398c2ecf20Sopenharmony_ci ACTIVE_HIGH is used) 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ciExample: 428c2ecf20Sopenharmony_ci 438c2ecf20Sopenharmony_ci max77686: pmic@9 { 448c2ecf20Sopenharmony_ci compatible = "maxim,max77686"; 458c2ecf20Sopenharmony_ci interrupt-parent = <&wakeup_eint>; 468c2ecf20Sopenharmony_ci interrupts = <26 IRQ_TYPE_NONE>; 478c2ecf20Sopenharmony_ci reg = <0x09>; 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ci voltage-regulators { 508c2ecf20Sopenharmony_ci ldo11_reg: LDO11 { 518c2ecf20Sopenharmony_ci regulator-name = "vdd_ldo11"; 528c2ecf20Sopenharmony_ci regulator-min-microvolt = <1900000>; 538c2ecf20Sopenharmony_ci regulator-max-microvolt = <1900000>; 548c2ecf20Sopenharmony_ci regulator-always-on; 558c2ecf20Sopenharmony_ci }; 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci buck1_reg: BUCK1 { 588c2ecf20Sopenharmony_ci regulator-name = "vdd_mif"; 598c2ecf20Sopenharmony_ci regulator-min-microvolt = <950000>; 608c2ecf20Sopenharmony_ci regulator-max-microvolt = <1300000>; 618c2ecf20Sopenharmony_ci regulator-always-on; 628c2ecf20Sopenharmony_ci regulator-boot-on; 638c2ecf20Sopenharmony_ci }; 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ci buck9_reg: BUCK9 { 668c2ecf20Sopenharmony_ci regulator-name = "CAM_ISP_CORE_1.2V"; 678c2ecf20Sopenharmony_ci regulator-min-microvolt = <1000000>; 688c2ecf20Sopenharmony_ci regulator-max-microvolt = <1200000>; 698c2ecf20Sopenharmony_ci maxim,ena-gpios = <&gpm0 3 GPIO_ACTIVE_HIGH>; 708c2ecf20Sopenharmony_ci }; 718c2ecf20Sopenharmony_ci }; 72