Documentation / devicetree / bindings / regulator / tps65090.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
TPS65090 regulators

Required properties:
- compatible: "ti,tps65090"
- reg: I2C slave address
- interrupts: the interrupt outputs of the controller
- regulators: A node that houses a sub-node for each regulator within the
  device. Each sub-node is identified using the node's name, with valid
  values listed below. The content of each sub-node is defined by the
  standard binding for regulators; see regulator.txt.
  dcdc[1-3], fet[1-7] and ldo[1-2] respectively.
- vsys[1-3]-supply: The input supply for DCDC[1-3] respectively.
- infet[1-7]-supply: The input supply for FET[1-7] respectively.
- vsys-l[1-2]-supply: The input supply for LDO[1-2] respectively.

Optional properties:
- ti,enable-ext-control: This is applicable for DCDC1, DCDC2 and DCDC3.
  If DCDCs are externally controlled then this property should be there.
- dcdc-ext-control-gpios: This is applicable for DCDC1, DCDC2 and DCDC3.
  If DCDCs are externally controlled and if it is from GPIO then GPIO
  number should be provided. If it is externally controlled and no GPIO
  entry then driver will just configure this rails as external control
  and will not provide any enable/disable APIs.
- ti,overcurrent-wait: This is applicable to FET registers, which have a
  poorly defined "overcurrent wait" field.  If this property is present it
  should be between 0 - 3.  If this property isn't present we won't touch the
  "overcurrent wait" field and we'll leave it to the BIOS/EC to deal with.

Each regulator is defined using the standard binding for regulators.

Example:

	tps65090@48 {
		compatible = "ti,tps65090";
		reg = <0x48>;
		interrupts = <0 88 0x4>;

		vsys1-supply = <&some_reg>;
		vsys2-supply = <&some_reg>;
		vsys3-supply = <&some_reg>;
		infet1-supply = <&some_reg>;
		infet2-supply = <&some_reg>;
		infet3-supply = <&some_reg>;
		infet4-supply = <&some_reg>;
		infet5-supply = <&some_reg>;
		infet6-supply = <&some_reg>;
		infet7-supply = <&some_reg>;
		vsys-l1-supply = <&some_reg>;
		vsys-l2-supply = <&some_reg>;

		regulators {
			dcdc1 {
				regulator-name = "dcdc1";
				regulator-boot-on;
				regulator-always-on;
				ti,enable-ext-control;
				dcdc-ext-control-gpios = <&gpio 10 0>;
			};

			dcdc2 {
				regulator-name = "dcdc2";
				regulator-boot-on;
				regulator-always-on;
			};

			dcdc3 {
				regulator-name = "dcdc3";
				regulator-boot-on;
				regulator-always-on;
			};

			fet1 {
				regulator-name = "fet1";
				regulator-boot-on;
				regulator-always-on;
			};

			fet2 {
				regulator-name = "fet2";
				regulator-boot-on;
				regulator-always-on;
			};

			fet3 {
				regulator-name = "fet3";
				regulator-boot-on;
				regulator-always-on;
			};

			fet4 {
				regulator-name = "fet4";
				regulator-boot-on;
				regulator-always-on;
			};

			fet5 {
				regulator-name = "fet5";
				regulator-boot-on;
				regulator-always-on;
			};

			fet6 {
				regulator-name = "fet6";
				regulator-boot-on;
				regulator-always-on;
			};

			fet7 {
				regulator-name = "fet7";
				regulator-boot-on;
				regulator-always-on;
			};

			ldo1 {
				regulator-name = "ldo1";
				regulator-boot-on;
				regulator-always-on;
			};

			ldo2 {
				regulator-name = "ldo2";
				regulator-boot-on;
				regulator-always-on;
			};
		};
	};