1Maxim MAX77686 multi-function device 2 3MAX77686 is a Mulitifunction device with PMIC, RTC and Charger on chip. It is 4interfaced to host controller using i2c interface. PMIC and Charger submodules 5are addressed using same i2c slave address whereas RTC submodule uses 6different i2c slave address,presently for which we are statically creating i2c 7client while probing.This document describes the binding for mfd device and 8PMIC submodule. 9 10Binding for the built-in 32k clock generator block is defined separately 11in bindings/clk/maxim,max77686.txt file. 12 13Required properties: 14- compatible : Must be "maxim,max77686"; 15- reg : Specifies the i2c slave address of PMIC block. 16- interrupts : This i2c device has an IRQ line connected to the main SoC. 17- interrupt-parent : The parent interrupt controller. 18 19Optional node: 20- voltage-regulators : The regulators of max77686 have to be instantiated 21 under subnode named "voltage-regulators" using the following format. 22 23 regulator_name { 24 regulator-compatible = LDOn/BUCKn 25 standard regulator constraints.... 26 }; 27 refer Documentation/devicetree/bindings/regulator/regulator.txt 28 29 The regulator-compatible property of regulator should initialized with string 30to get matched with their hardware counterparts as follow: 31 32 -LDOn : for LDOs, where n can lie in range 1 to 26. 33 example: LDO1, LDO2, LDO26. 34 -BUCKn : for BUCKs, where n can lie in range 1 to 9. 35 example: BUCK1, BUCK5, BUCK9. 36 37 Regulators which can be turned off during system suspend: 38 -LDOn : 2, 6-8, 10-12, 14-16, 39 -BUCKn : 1-4. 40 Use standard regulator bindings for it ('regulator-off-in-suspend'). 41 42 LDO20, LDO21, LDO22, BUCK8 and BUCK9 can be configured to GPIO enable 43 control. To turn this feature on this property must be added to the regulator 44 sub-node: 45 - maxim,ena-gpios : one GPIO specifier enable control (the gpio 46 flags are actually ignored and always 47 ACTIVE_HIGH is used) 48 49Example: 50 51 max77686@09 { 52 compatible = "maxim,max77686"; 53 interrupt-parent = <&wakeup_eint>; 54 interrupts = <26 0>; 55 reg = <0x09>; 56 57 voltage-regulators { 58 ldo11_reg { 59 regulator-compatible = "LDO11"; 60 regulator-name = "vdd_ldo11"; 61 regulator-min-microvolt = <1900000>; 62 regulator-max-microvolt = <1900000>; 63 regulator-always-on; 64 }; 65 66 buck1_reg { 67 regulator-compatible = "BUCK1"; 68 regulator-name = "vdd_mif"; 69 regulator-min-microvolt = <950000>; 70 regulator-max-microvolt = <1300000>; 71 regulator-always-on; 72 regulator-boot-on; 73 }; 74 75 buck9_reg { 76 regulator-compatible = "BUCK9"; 77 regulator-name = "CAM_ISP_CORE_1.2V"; 78 regulator-min-microvolt = <1000000>; 79 regulator-max-microvolt = <1200000>; 80 maxim,ena-gpios = <&gpm0 3 GPIO_ACTIVE_HIGH>; 81 }; 82 } 83