Staging
v0.5.1
https://github.com/torvalds/linux
Raw File
Tip revision: d1abaeb3be7b5fa6d7a1fbbd2e14e3310005c4c1 authored by Linus Torvalds on 18 August 2019, 21:31:08 UTC
Linux 5.3-rc5
Tip revision: d1abaeb
tps65090.txt
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;
			};
		};
	};
back to top