Documentation / devicetree / bindings / regulator / regulator-max77620.txt


Based on kernel version 6.8. Page generated on 2024-03-11 21:26 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222
Regulator DT binding for MAX77620 Power management IC from Maxim Semiconductor.

Device has multiple DCDC(sd[0-3] and LDOs(ldo[0-8]). The input supply
of these regulators are defined under parent device node.
Details of regulator properties are defined as child node under
sub-node "regulators" which is child node of device node.

Please refer file <Documentation/devicetree/bindings/regulator/regulator.txt>
for common regulator bindings used by client.

Following are properties of parent node related to regulators.

Optional properties:
-------------------
The input supply of regulators are the optional properties on the
parent device node. The input supply of these regulators are provided
through following properties:
in-sd0-supply:		Input supply for SD0, INA-SD0 or INB-SD0 pins.
in-sd1-supply:		Input supply for SD1.
in-sd2-supply:		Input supply for SD2.
in-sd3-supply:		Input supply for SD3.
in-ldo0-1-supply:	Input supply for LDO0 and LDO1.
in-ldo2-supply:		Input supply for LDO2.
in-ldo3-5-supply:	Input supply for LDO3 and LDO5
in-ldo4-6-supply:	Input supply for LDO4 and LDO6.
in-ldo7-8-supply:	Input supply for LDO7 and LDO8.

Optional sub nodes for regulators under "regulators" subnode:
------------------------------------------------------------
The subnodes name is the name of regulator and it must be one of:
	sd[0-3], ldo[0-8]

Each sub-node should contain the constraints and initialization
information for that regulator. The definition for each of these
nodes is defined using the standard binding for regulators found at
<Documentation/devicetree/bindings/regulator/regulator.txt>.

There are also additional properties for SD/LDOs. These additional properties
are required to configure FPS configuration parameters for SDs and LDOs.
Please refer <devicetree/bindings/mfd/max77620.txt> for more detail of Flexible
Power Sequence (FPS).
Following are additional properties:

- maxim,active-fps-source:		FPS source for the regulators to get
					enabled/disabled when system is in
					active state.  Valid values are:
					- MAX77620_FPS_SRC_0,
						FPS source is FPS0.
					- MAX77620_FPS_SRC_1,
						FPS source is FPS1
					- MAX77620_FPS_SRC_2 and
						FPS source is FPS2
					- MAX77620_FPS_SRC_NONE.
						Regulator is not controlled
						by FPS events and it gets
						enabled/disabled by register
						access.
					Absence of this property will leave
					the FPS configuration register for that
					regulator to default configuration.

- maxim,active-fps-power-up-slot:	Sequencing event slot number on which
					the regulator get enabled when
					master FPS input event set to HIGH.
					Valid values are 0 to 7.
					This is applicable if FPS source is
					selected as FPS0, FPS1 or FPS2.
			
- maxim,active-fps-power-down-slot:	Sequencing event slot number on which
					the regulator get disabled when master
					FPS input event set to LOW.
					Valid values are 0 to 7.
					This is applicable if FPS source is
					selected as FPS0, FPS1 or FPS2.
			
- maxim,suspend-fps-source:		This is same as property
					"maxim,active-fps-source" but value
					get configured when system enters in
					to suspend state.

- maxim,suspend-fps-power-up-slot:	This is same as property
					"maxim,active-fps-power-up-slot" but
					this value get configured into FPS
					configuration register when system
					enters into suspend.
					This is applicable if suspend state
					FPS source is selected as FPS0, FPS1 or

- maxim,suspend-fps-power-down-slot:	This is same as property
					"maxim,active-fps-power-down-slot" but
					this value get configured into FPS
					configuration register when system
					enters into suspend.
					This is applicable if suspend state
					FPS source is selected as FPS0, FPS1 or
					FPS2.
- maxim,ramp-rate-setting:		integer, ramp rate(uV/us) setting to be
					configured to the device.
					The platform may have different ramp
					rate than advertised ramp rate if it has
					design variation from Maxim's
					recommended. On this case, platform
					specific ramp rate is used for ramp time
					calculation and this property is used
					for device register configurations.
					The measured ramp rate of platform is
					provided by the regulator-ramp-delay
					as described in <devicetree/bindings/
					regulator/regulator.txt>.
					Maxim Max77620 supports following ramp
					delay:
					  SD: 13.75mV/us, 27.5mV/us, 55mV/us
					  LDOs: 5mV/us, 100mV/us

Note: If the measured ramp delay is same as advertised ramp delay then it is not
required to provide the ramp delay with property "maxim,ramp-rate-setting". The
ramp rate can be provided by the regulator-ramp-delay which will be used for
ramp time calculation for voltage change as well as for device configuration.

Example:
--------
#include <dt-bindings/mfd/max77620.h>
...
max77620@3c {
	in-ldo0-1-supply = <&max77620_sd2>;
	in-ldo7-8-supply = <&max77620_sd2>;
	regulators {
		sd0 {
			regulator-name = "vdd-core";
			regulator-min-microvolt = <600000>;
			regulator-max-microvolt = <1400000>;
			regulator-boot-on;
			regulator-always-on;
			maxim,active-fps-source = <MAX77620_FPS_SRC_1>;
		};

		sd1 {
			regulator-name = "vddio-ddr";
			regulator-min-microvolt = <1200000>;
			regulator-max-microvolt = <1200000>;
			regulator-always-on;
			regulator-boot-on;
			maxim,active-fps-source = <MAX77620_FPS_SRC_0>;
		};

		sd2 {
			regulator-name = "vdd-pre-reg";
			regulator-min-microvolt = <1350000>;
			regulator-max-microvolt = <1350000>;
		};

		sd3 {
			regulator-name = "vdd-1v8";
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			regulator-always-on;
			regulator-boot-on;
		};

		ldo0 {
			regulator-name = "avdd-sys";
			regulator-min-microvolt = <1200000>;
			regulator-max-microvolt = <1200000>;
			regulator-always-on;
			regulator-boot-on;
		};

		ldo1 {
			regulator-name = "vdd-pex";
			regulator-min-microvolt = <1050000>;
			regulator-max-microvolt = <1050000>;
		};

		ldo2 {
			regulator-name = "vddio-sdmmc3";
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <3300000>;
		};

		ldo3 {
			regulator-name = "vdd-cam-hv";
			regulator-min-microvolt = <2800000>;
			regulator-max-microvolt = <2800000>;
		};

		ldo4 {
			regulator-name = "vdd-rtc";
			regulator-min-microvolt = <1250000>;
			regulator-max-microvolt = <1250000>;
			regulator-always-on;
			regulator-boot-on;
		};

		ldo5 {
			regulator-name = "avdd-ts-hv";
			regulator-min-microvolt = <3000000>;
			regulator-max-microvolt = <3000000>;
		};

		ldo6 {
			regulator-name = "vdd-ts";
			regulator-min-microvolt = <1800000>;
			regulator-max-microvolt = <1800000>;
			regulator-always-on;
			regulator-boot-on;
		};

		ldo7 {
			regulator-name = "vdd-gen-pll-edp";
			regulator-min-microvolt = <1050000>;
			regulator-max-microvolt = <1050000>;
			regulator-always-on;
			regulator-boot-on;
		};

		ldo8 {
			regulator-name = "vdd-hdmi-dp";
			regulator-min-microvolt = <1050000>;
			regulator-max-microvolt = <1050000>;
		};
	};
};