summaryrefslogtreecommitdiff
path: root/bindings/regulator/tps-regulator.txt
blob: ee157fa6eadbd28ffc36eb4add20a2a467d1b06d (plain)
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
TPS voltage regulators

Required properties:
- compatible: Must be "regulator-tps".
- voltage-count: The number of configs used by the voltage selectors. Must be
  1 or 2.
- regulator-min-microvolt: The minimum output voltage.
- regulator-max-microvolt: The maximum output voltage.
- en-gpios: The phandle for the enable gpio
- en-delay: Delay in microseconds, if any, after turning on enable gpio. 0 if no
  delay.
- dis-delay: Delay in microseconds, if any, before turning off enable gpio. 0 if
  no delay.

Optional properties:
- en-pin-only: Set this property if only one gpio (enable gpio) is needed. Any
  sub-node will be ignored. The regulator will be a fixed voltage regulator
  where the output voltage is the value of regulator-min-microvolt.

Required properties of the sub-nodes:
- voltage-level-uv: Must be 5000000 or 7000000.
- control-gpio-count: the number of gpios involved in controlling the
  regulator.
- control-gpios: list of phandles for the control gpio.
- gpio-enable-sequence - gpio indexes for enabling the regulator.
- gpio-enable-delay - delays in microseconds, if any, after turning on
  each gpio in gpio-enable-sequence. 0 if no delay.
- gpio-disable-sequence - gpio indexes for disabling the regulator.
- gpio-disable-delay - delays in microseconds, if any, after turning off
  each gpio in gpio-disable-sequence. 0 if no delay.

Any property defined as part of the core regulator
binding, defined in regulator.txt, can also be used.
However a fixed voltage regulator is expected to have the
regulator-min-microvolt and regulator-max-microvolt
to be the same.

Example:
	regulator@00{
		compatible = "regulator-tps";
		regulator-name = "ext_boost";
		voltage-count = <2>;
		regulator-min-microvolt = <5000000>;
		regulator-max-microvolt = <7000000>;
		en-gpios = <&pm8150_gpios 8 GPIO_ACTIVE_HIGH>;
		en-delay = <1000>;
		dis-delay = <0>;
		status = "okay";

		usb_5v {
			voltage-level-uv = <5000000>;
			control-gpio-count = <1>;
			control-gpios = <&tlmm 93 GPIO_ACTIVE_HIGH>;
			gpio-enable-sequence = <1>;
			gpio-enable-delay = <0>;
			gpio-disable-sequence = <1>;
			gpio-disable-delay = <0>;
		};

		rtx_7v {
			voltage-level-uv = <7000000>;
			control-gpio-count = <1>;
			control-gpios = <&tlmm 90 GPIO_ACTIVE_HIGH>;
			gpio-enable-sequence = <1>;
			gpio-enable-delay = <0>;
			gpio-disable-sequence = <1>;
			gpio-disable-delay = <0>;
		};
	};