Tom Rini | 53633a8 | 2024-02-29 12:33:36 -0500 | [diff] [blame] | 1 | Regulator DT binding for MAX77620 Power management IC from Maxim Semiconductor. |
| 2 | |
| 3 | Device has multiple DCDC(sd[0-3] and LDOs(ldo[0-8]). The input supply |
| 4 | of these regulators are defined under parent device node. |
| 5 | Details of regulator properties are defined as child node under |
| 6 | sub-node "regulators" which is child node of device node. |
| 7 | |
| 8 | Please refer file <Documentation/devicetree/bindings/regulator/regulator.txt> |
| 9 | for common regulator bindings used by client. |
| 10 | |
| 11 | Following are properties of parent node related to regulators. |
| 12 | |
| 13 | Optional properties: |
| 14 | ------------------- |
| 15 | The input supply of regulators are the optional properties on the |
| 16 | parent device node. The input supply of these regulators are provided |
| 17 | through following properties: |
| 18 | in-sd0-supply: Input supply for SD0, INA-SD0 or INB-SD0 pins. |
| 19 | in-sd1-supply: Input supply for SD1. |
| 20 | in-sd2-supply: Input supply for SD2. |
| 21 | in-sd3-supply: Input supply for SD3. |
| 22 | in-ldo0-1-supply: Input supply for LDO0 and LDO1. |
| 23 | in-ldo2-supply: Input supply for LDO2. |
| 24 | in-ldo3-5-supply: Input supply for LDO3 and LDO5 |
| 25 | in-ldo4-6-supply: Input supply for LDO4 and LDO6. |
| 26 | in-ldo7-8-supply: Input supply for LDO7 and LDO8. |
| 27 | |
| 28 | Optional sub nodes for regulators under "regulators" subnode: |
| 29 | ------------------------------------------------------------ |
| 30 | The subnodes name is the name of regulator and it must be one of: |
| 31 | sd[0-3], ldo[0-8] |
| 32 | |
| 33 | Each sub-node should contain the constraints and initialization |
| 34 | information for that regulator. The definition for each of these |
| 35 | nodes is defined using the standard binding for regulators found at |
| 36 | <Documentation/devicetree/bindings/regulator/regulator.txt>. |
| 37 | |
| 38 | There are also additional properties for SD/LDOs. These additional properties |
| 39 | are required to configure FPS configuration parameters for SDs and LDOs. |
| 40 | Please refer <devicetree/bindings/mfd/max77620.txt> for more detail of Flexible |
| 41 | Power Sequence (FPS). |
| 42 | Following are additional properties: |
| 43 | |
| 44 | - maxim,active-fps-source: FPS source for the regulators to get |
| 45 | enabled/disabled when system is in |
| 46 | active state. Valid values are: |
| 47 | - MAX77620_FPS_SRC_0, |
| 48 | FPS source is FPS0. |
| 49 | - MAX77620_FPS_SRC_1, |
| 50 | FPS source is FPS1 |
| 51 | - MAX77620_FPS_SRC_2 and |
| 52 | FPS source is FPS2 |
| 53 | - MAX77620_FPS_SRC_NONE. |
| 54 | Regulator is not controlled |
| 55 | by FPS events and it gets |
| 56 | enabled/disabled by register |
| 57 | access. |
| 58 | Absence of this property will leave |
| 59 | the FPS configuration register for that |
| 60 | regulator to default configuration. |
| 61 | |
| 62 | - maxim,active-fps-power-up-slot: Sequencing event slot number on which |
| 63 | the regulator get enabled when |
| 64 | master FPS input event set to HIGH. |
| 65 | Valid values are 0 to 7. |
| 66 | This is applicable if FPS source is |
| 67 | selected as FPS0, FPS1 or FPS2. |
| 68 | |
| 69 | - maxim,active-fps-power-down-slot: Sequencing event slot number on which |
| 70 | the regulator get disabled when master |
| 71 | FPS input event set to LOW. |
| 72 | Valid values are 0 to 7. |
| 73 | This is applicable if FPS source is |
| 74 | selected as FPS0, FPS1 or FPS2. |
| 75 | |
| 76 | - maxim,suspend-fps-source: This is same as property |
| 77 | "maxim,active-fps-source" but value |
| 78 | get configured when system enters in |
| 79 | to suspend state. |
| 80 | |
| 81 | - maxim,suspend-fps-power-up-slot: This is same as property |
| 82 | "maxim,active-fps-power-up-slot" but |
| 83 | this value get configured into FPS |
| 84 | configuration register when system |
| 85 | enters into suspend. |
| 86 | This is applicable if suspend state |
| 87 | FPS source is selected as FPS0, FPS1 or |
| 88 | |
| 89 | - maxim,suspend-fps-power-down-slot: This is same as property |
| 90 | "maxim,active-fps-power-down-slot" but |
| 91 | this value get configured into FPS |
| 92 | configuration register when system |
| 93 | enters into suspend. |
| 94 | This is applicable if suspend state |
| 95 | FPS source is selected as FPS0, FPS1 or |
| 96 | FPS2. |
| 97 | - maxim,ramp-rate-setting: integer, ramp rate(uV/us) setting to be |
| 98 | configured to the device. |
| 99 | The platform may have different ramp |
| 100 | rate than advertised ramp rate if it has |
| 101 | design variation from Maxim's |
| 102 | recommended. On this case, platform |
| 103 | specific ramp rate is used for ramp time |
| 104 | calculation and this property is used |
| 105 | for device register configurations. |
| 106 | The measured ramp rate of platform is |
| 107 | provided by the regulator-ramp-delay |
| 108 | as described in <devicetree/bindings/ |
| 109 | regulator/regulator.txt>. |
| 110 | Maxim Max77620 supports following ramp |
| 111 | delay: |
| 112 | SD: 13.75mV/us, 27.5mV/us, 55mV/us |
| 113 | LDOs: 5mV/us, 100mV/us |
| 114 | |
| 115 | Note: If the measured ramp delay is same as advertised ramp delay then it is not |
| 116 | required to provide the ramp delay with property "maxim,ramp-rate-setting". The |
| 117 | ramp rate can be provided by the regulator-ramp-delay which will be used for |
| 118 | ramp time calculation for voltage change as well as for device configuration. |
| 119 | |
| 120 | Example: |
| 121 | -------- |
| 122 | #include <dt-bindings/mfd/max77620.h> |
| 123 | ... |
| 124 | max77620@3c { |
| 125 | in-ldo0-1-supply = <&max77620_sd2>; |
| 126 | in-ldo7-8-supply = <&max77620_sd2>; |
| 127 | regulators { |
| 128 | sd0 { |
| 129 | regulator-name = "vdd-core"; |
| 130 | regulator-min-microvolt = <600000>; |
| 131 | regulator-max-microvolt = <1400000>; |
| 132 | regulator-boot-on; |
| 133 | regulator-always-on; |
| 134 | maxim,active-fps-source = <MAX77620_FPS_SRC_1>; |
| 135 | }; |
| 136 | |
| 137 | sd1 { |
| 138 | regulator-name = "vddio-ddr"; |
| 139 | regulator-min-microvolt = <1200000>; |
| 140 | regulator-max-microvolt = <1200000>; |
| 141 | regulator-always-on; |
| 142 | regulator-boot-on; |
| 143 | maxim,active-fps-source = <MAX77620_FPS_SRC_0>; |
| 144 | }; |
| 145 | |
| 146 | sd2 { |
| 147 | regulator-name = "vdd-pre-reg"; |
| 148 | regulator-min-microvolt = <1350000>; |
| 149 | regulator-max-microvolt = <1350000>; |
| 150 | }; |
| 151 | |
| 152 | sd3 { |
| 153 | regulator-name = "vdd-1v8"; |
| 154 | regulator-min-microvolt = <1800000>; |
| 155 | regulator-max-microvolt = <1800000>; |
| 156 | regulator-always-on; |
| 157 | regulator-boot-on; |
| 158 | }; |
| 159 | |
| 160 | ldo0 { |
| 161 | regulator-name = "avdd-sys"; |
| 162 | regulator-min-microvolt = <1200000>; |
| 163 | regulator-max-microvolt = <1200000>; |
| 164 | regulator-always-on; |
| 165 | regulator-boot-on; |
| 166 | }; |
| 167 | |
| 168 | ldo1 { |
| 169 | regulator-name = "vdd-pex"; |
| 170 | regulator-min-microvolt = <1050000>; |
| 171 | regulator-max-microvolt = <1050000>; |
| 172 | }; |
| 173 | |
| 174 | ldo2 { |
| 175 | regulator-name = "vddio-sdmmc3"; |
| 176 | regulator-min-microvolt = <1800000>; |
| 177 | regulator-max-microvolt = <3300000>; |
| 178 | }; |
| 179 | |
| 180 | ldo3 { |
| 181 | regulator-name = "vdd-cam-hv"; |
| 182 | regulator-min-microvolt = <2800000>; |
| 183 | regulator-max-microvolt = <2800000>; |
| 184 | }; |
| 185 | |
| 186 | ldo4 { |
| 187 | regulator-name = "vdd-rtc"; |
| 188 | regulator-min-microvolt = <1250000>; |
| 189 | regulator-max-microvolt = <1250000>; |
| 190 | regulator-always-on; |
| 191 | regulator-boot-on; |
| 192 | }; |
| 193 | |
| 194 | ldo5 { |
| 195 | regulator-name = "avdd-ts-hv"; |
| 196 | regulator-min-microvolt = <3000000>; |
| 197 | regulator-max-microvolt = <3000000>; |
| 198 | }; |
| 199 | |
| 200 | ldo6 { |
| 201 | regulator-name = "vdd-ts"; |
| 202 | regulator-min-microvolt = <1800000>; |
| 203 | regulator-max-microvolt = <1800000>; |
| 204 | regulator-always-on; |
| 205 | regulator-boot-on; |
| 206 | }; |
| 207 | |
| 208 | ldo7 { |
| 209 | regulator-name = "vdd-gen-pll-edp"; |
| 210 | regulator-min-microvolt = <1050000>; |
| 211 | regulator-max-microvolt = <1050000>; |
| 212 | regulator-always-on; |
| 213 | regulator-boot-on; |
| 214 | }; |
| 215 | |
| 216 | ldo8 { |
| 217 | regulator-name = "vdd-hdmi-dp"; |
| 218 | regulator-min-microvolt = <1050000>; |
| 219 | regulator-max-microvolt = <1050000>; |
| 220 | }; |
| 221 | }; |
| 222 | }; |