1Binding for TI/National Semiconductor LP872x Driver 2 3Required properties: 4 - compatible: "ti,lp8720" or "ti,lp8725" 5 - reg: I2C slave address. 0x7d = LP8720, 0x7a = LP8725 6 7Optional properties: 8 - ti,general-config: the value of LP872X_GENERAL_CFG register (u8) 9 (LP8720) 10 bit[2]: BUCK output voltage control by external DVS pin or register 11 1 = external pin, 0 = bit7 of register 08h 12 bit[1]: sleep control by external DVS pin or register 13 1 = external pin, 0 = bit6 of register 08h 14 bit[0]: time step unit(usec). 1 = 25, 0 = 50 15 16 (LP8725) 17 bit[7:6]: time step unit(usec). 00 = 32, 01 = 64, 10 = 128, 11 = 256 18 bit[4]: BUCK2 enable control. 1 = enable, 0 = disable 19 bit[3]: BUCK2 output voltage register address. 1 = 0Ah, 0 = 0Bh 20 bit[2]: BUCK1 output voltage control by external DVS pin or register 21 1 = register 08h, 0 = DVS 22 bit[1]: LDO sleep control. 1 = sleep mode, 0 = normal 23 bit[0]: BUCK1 enable control, 1 = enable, 0 = disable 24 25 For more details, please see the datasheet. 26 27 - ti,update-config: define it when LP872X_GENERAL_CFG register should be set 28 - ti,dvs-gpio: GPIO specifier for external DVS pin control of LP872x devices. 29 - ti,dvs-vsel: DVS selector. 0 = SEL_V1, 1 = SEL_V2. 30 - ti,dvs-state: initial DVS pin state. 0 = DVS_LOW, 1 = DVS_HIGH. 31 - enable-gpios: GPIO specifier for EN pin control of LP872x devices. 32 33 Sub nodes for regulator_init_data 34 LP8720 has maximum 6 nodes. (child name: ldo1 ~ 5 and buck) 35 LP8725 has maximum 9 nodes. (child name: ldo1 ~ 5, lilo1,2 and buck1,2) 36 For more details, please see the following binding document. 37 (Documentation/devicetree/bindings/regulator/regulator.txt) 38 39Datasheet 40 - LP8720: https://www.ti.com/lit/ds/symlink/lp8720.pdf 41 - LP8725: https://www.ti.com/lit/ds/symlink/lp8725.pdf 42 43Example 1) LP8720 44 45lp8720@7d { 46 compatible = "ti,lp8720"; 47 reg = <0x7d>; 48 49 /* external DVS pin used, timestep is 25usec */ 50 ti,general-config = /bits/ 8 <0x03>; 51 ti,update-config; 52 53 /* 54 * The dvs-gpio depends on the processor environment. 55 * For example, following GPIO specifier means GPIO134 in OMAP4. 56 */ 57 ti,dvs-gpio = <&gpio5 6 0>; 58 ti,dvs-vsel = /bits/ 8 <1>; /* SEL_V2 */ 59 ti,dvs-state = /bits/ 8 <1>; /* DVS_HIGH */ 60 61 vaf: ldo1 { 62 regulator-min-microvolt = <1200000>; 63 regulator-max-microvolt = <3300000>; 64 }; 65 66 vmmc: ldo2 { 67 regulator-min-microvolt = <1200000>; 68 regulator-max-microvolt = <3300000>; 69 }; 70 71 vcam_io: ldo3 { 72 regulator-min-microvolt = <1200000>; 73 regulator-max-microvolt = <3300000>; 74 regulator-boot-on; 75 }; 76 77 vcam_core: ldo4 { 78 regulator-min-microvolt = <800000>; 79 regulator-max-microvolt = <2850000>; 80 regulator-boot-on; 81 }; 82 83 vcam: ldo5 { 84 regulator-min-microvolt = <1200000>; 85 regulator-max-microvolt = <3300000>; 86 }; 87 88 vcc: buck { 89 regulator-name = "VBUCK"; 90 regulator-min-microvolt = <800000>; 91 regulator-max-microvolt = <2300000>; 92 }; 93}; 94 95Example 2) LP8725 96 97lp8725@7a { 98 compatible = "ti,lp8725"; 99 reg = <0x7a>; 100 101 /* Enable BUCK1,2, no DVS, normal LDO mode, timestep is 256usec */ 102 ti,general-config = /bits/ 8 <0xdd>; 103 ti,update-config; 104 105 vcam_io: ldo1 { 106 regulator-min-microvolt = <1200000>; 107 regulator-max-microvolt = <3300000>; 108 }; 109 110 vcam_core: ldo2 { 111 regulator-min-microvolt = <1200000>; 112 regulator-max-microvolt = <3300000>; 113 }; 114 115 vcam: ldo3 { 116 regulator-min-microvolt = <1200000>; 117 regulator-max-microvolt = <3300000>; 118 }; 119 120 vcmmb_io: ldo4 { 121 regulator-min-microvolt = <1200000>; 122 regulator-max-microvolt = <3300000>; 123 regulator-boot-on; 124 }; 125 126 vcmmb_core: ldo5 { 127 regulator-min-microvolt = <1200000>; 128 regulator-max-microvolt = <3300000>; 129 regulator-boot-on; 130 }; 131 132 vaux1: lilo1 { 133 regulator-name = "VAUX1"; 134 regulator-min-microvolt = <800000>; 135 regulator-max-microvolt = <3300000>; 136 }; 137 138 vaux2: lilo2 { 139 regulator-name = "VAUX2"; 140 regulator-min-microvolt = <800000>; 141 regulator-max-microvolt = <3300000>; 142 }; 143 144 vcc1: buck1 { 145 regulator-name = "VBUCK1"; 146 regulator-min-microvolt = <800000>; 147 regulator-max-microvolt = <3000000>; 148 regulator-min-microamp = <460000>; 149 regulator-max-microamp = <1370000>; 150 regulator-boot-on; 151 }; 152 153 vcc2: buck2 { 154 regulator-name = "VBUCK2"; 155 regulator-min-microvolt = <800000>; 156 regulator-max-microvolt = <3000000>; 157 regulator-min-microamp = <460000>; 158 regulator-max-microamp = <1370000>; 159 regulator-boot-on; 160 }; 161}; 162