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