Skip to contentSkip to conversation

mfd: axp20x: Add DT binding documentation

PATCH Applied Chen-Yu Tsai 3 participants 8 messages Feb 20, 2015 – Mar 26, 2015

Subsystems (3)
lore
Share & tools
lore
#0 lore raw

v10 cover mfd: axp20x: Add DT binding documentation

Hi everyone,

This is v10 of the axp20x series. v10 reverts back to the DT bindings from v8. This is the binding currently supported by the kernel drivers since 3.18. Mark Brown raised concern on the needless changes to active regulator bindings in v9.

Maxime, I dropped your Acked-by because of all the changes I've made. Please have a look again.

Mark (Brown), please take a look at the regulator bits in the second patch. If it looks good, could you give your Acked-by?

I hope we can get this series merged so we can move on to adding AXP221 support.

Regards,
ChenYu

Changes since v9:

- Revert to bindings in v8
- Dropped new patches in v9
- x-powers,dcdc-workmode default changed to "current hardware setting", matching the regulator driver.
- Reorganized regulator related properties into separate section. This should make it easier to read and also update for newer PMICs.
- Regulator nodes should only be listed if they are to be managed by the OS.

Carlo Caione (2):
mfd: AXP20x: Add bindings documentation
dt-bindings: add vendor-prefix for X-Powers

 Documentation/devicetree/bindings/mfd/axp20x.txt   | 96 ++++++++++++++++++++++
 .../devicetree/bindings/vendor-prefixes.txt        |  1 +
 2 files changed, 97 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/mfd/axp20x.txt
Signature · 1 line
2.1.4
#1 lore raw

PATCH v10 1/2 mfd: AXP20x: Add bindings documentation

From: Carlo Caione <[email protected]>

Bindings documentation for the AXP20x driver. In this file also sub-nodes are documented.

[wens at csie.org: clarify interrupt source for the axp PMIC]
[wens at csie.org: explain dcdc-workmode in detail and trim lines to 80 chars]
[wens at csie.org: make regulator supplies optional if using unregulated input]
[wens at csie.org: use cubieboard2 regulator nodes as example]

[wens at csie.org: x-powers,dcdc-workmode default changed to 'current hardware
setting']
[wens at csie.org: reorganized regulator related properties into separate
section.]

---
 Documentation/devicetree/bindings/mfd/axp20x.txt | 96 ++++++++++++++++++++++++
 1 file changed, 96 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/mfd/axp20x.txt
Documentation/devicetree/bindings/mfd/axp20x.txt new file +96 -0
new file mode 100644
index 000000000000..98685f291a72
@@ -0,0 +1,96 @@
+AXP202/AXP209 device tree bindings
+
+The axp20x family current members :
+axp202 (X-Powers)
+axp209 (X-Powers)
+
+Required properties:
+- compatible: "x-powers,axp202" or "x-powers,axp209"
+- reg: The I2C slave address for the AXP chip
+- interrupt-parent: The parent interrupt controller
+- interrupts: SoC NMI / GPIO interrupt connected to the PMIC's IRQ pin
+- interrupt-controller: axp20x has its own internal IRQs
+- #interrupt-cells: Should be set to 1
+
+Optional properties:
+- x-powers,dcdc-freq: defines the work frequency of DC-DC in KHz
+		      (range: 750-1875). Default: 1.5MHz
+- <input>-supply: a phandle to the regulator supply node. May be omitted if
+		  inputs are unregulated, such as using the IPSOUT output
+		  from the PMIC.
+
+- regulators: A node that houses a sub-node for each regulator. Regulators
+	      not used but preferred to be managed by the OS should be
+	      listed as well.
+	      See Documentation/devicetree/bindings/regulator/regulator.txt
+	      for more information on standard regulator bindings.
+
+Optional properties for DCDC regulators:
+- x-powers,dcdc-workmode: 1 for PWM mode, 0 for AUTO (PWM/PFM) mode
+			  Default: Current hardware setting
+			  The DCDC regulators work in a mixed PWM/PFM mode,
+			  using PFM under light loads and switching to PWM
+			  for heavier loads. Forcing PWM mode trades efficiency
+			  under light loads for lower output noise. This
+			  probably makes sense for HiFi audio related
+			  applications that aren't battery constrained.
+
+
+AXP202/AXP209 regulators, type, and corresponding input supply names:
+
+Regulator	  Type		  Supply Name		  Notes
+---------	  ----		  -----------		  -----
+DCDC2		: DC-DC buck	: vin2-supply
+DCDC3		: DC-DC	buck	: vin3-supply
+LDO1		: LDO		: acin-supply		: always on
+LDO2		: LDO		: ldo24in-supply	: shared supply
+LDO3		: LDO		: ldo3in-supply
+LDO4		: LDO		: ldo24in-supply	: shared supply
+LDO5		: LDO		: ldo5in-supply
+
+Example:
+
+axp209: pmic at 34 {
+	compatible = "x-powers,axp209";
+	reg = <0x34>;
+	interrupt-parent = <&nmi_intc>;
+	interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+	interrupt-controller;
+	#interrupt-cells = <1>;
+
+	regulators {
+		x-powers,dcdc-freq = <1500>;
+
+		vdd_cpu: dcdc2 {
+			regulator-always-on;
+			regulator-min-microvolt = <1000000>;
+			regulator-max-microvolt = <1450000>;
+			regulator-name = "vdd-cpu";
+		};
+
+		vdd_int_dll: dcdc3 {
+			regulator-always-on;
+			regulator-min-microvolt = <1000000>;
+			regulator-max-microvolt = <1400000>;
+			regulator-name = "vdd-int-dll";
+		};
+
+		vdd_rtc: ldo1 {
+			regulator-always-on;
+			regulator-min-microvolt = <1200000>;
+			regulator-max-microvolt = <1400000>;
+			regulator-name = "vdd-rtc";
+		};
+
+		avcc: ldo2 {
+			regulator-always-on;
+			regulator-min-microvolt = <2700000>;
+			regulator-max-microvolt = <3300000>;
+			regulator-name = "avcc";
+		};
+
+		ldo3 {
+			/* unused but preferred to be managed by OS */
+		};
+	};
+};
Signature · 1 line
2.1.4
#2 lore raw

Re: [PATCH v10 1/2] mfd: AXP20x: Add bindings documentation

Quoted 10 lines · Chen-Yu Tsai

From: Carlo Caione <[email protected]>

Bindings documentation for the AXP20x driver. In this file also sub-nodes are documented.

[wens at csie.org: clarify interrupt source for the axp PMIC]
[wens at csie.org: explain dcdc-workmode in detail and trim lines to 80 chars]
[wens at csie.org: make regulator supplies optional if using unregulated input]
[wens at csie.org: use cubieboard2 regulator nodes as example]
Quoted 5 lines

[wens at csie.org: x-powers,dcdc-workmode default changed to 'current hardware
setting']
[wens at csie.org: reorganized regulator related properties into separate
section.]

Ping?

#3 lore raw

Re: [PATCH v10 1/2] mfd: AXP20x: Add bindings documentation

Quoted 17 lines · Chen-Yu Tsai
Quoted 10 lines · Chen-Yu Tsai

From: Carlo Caione <[email protected]>

Bindings documentation for the AXP20x driver. In this file also sub-nodes are documented.

[wens at csie.org: clarify interrupt source for the axp PMIC]
[wens at csie.org: explain dcdc-workmode in detail and trim lines to 80 chars]
[wens at csie.org: make regulator supplies optional if using unregulated input]
[wens at csie.org: use cubieboard2 regulator nodes as example]
Quoted 5 lines

[wens at csie.org: x-powers,dcdc-workmode default changed to 'current hardware
setting']
[wens at csie.org: reorganized regulator related properties into separate
section.]

Quoted 1 line

Ping?

Don't do that. It won't speed up the review.

If you think your set has been fogotten about (this one has not) resend with s/PATCH/RESEND/ in the subject line.

Signature · 4 lines
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
Acked-by on v10 1/2
#4 lore raw

Re: [PATCH v10 1/2] mfd: AXP20x: Add bindings documentation

In reply to Chen-Yu Tsai
Quoted 10 lines · Chen-Yu Tsai

From: Carlo Caione <[email protected]>

Bindings documentation for the AXP20x driver. In this file also sub-nodes are documented.

[wens at csie.org: clarify interrupt source for the axp PMIC]
[wens at csie.org: explain dcdc-workmode in detail and trim lines to 80 chars]
[wens at csie.org: make regulator supplies optional if using unregulated input]
[wens at csie.org: use cubieboard2 regulator nodes as example]
Quoted 5 lines

[wens at csie.org: x-powers,dcdc-workmode default changed to 'current hardware
setting']
[wens at csie.org: reorganized regulator related properties into separate
section.]

Thanks!
Maxime

Signature · 10 lines
Maxime Ripard, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150325/fd901d83/attachment.sig>
Applied
#5 lore raw

Re: [PATCH v10 1/2] mfd: AXP20x: Add bindings documentation

In reply to Chen-Yu Tsai
Quoted 14 lines · Chen-Yu Tsai

From: Carlo Caione <[email protected]>

Bindings documentation for the AXP20x driver. In this file also sub-nodes are documented.

[wens at csie.org: clarify interrupt source for the axp PMIC]
[wens at csie.org: explain dcdc-workmode in detail and trim lines to 80 chars]
[wens at csie.org: make regulator supplies optional if using unregulated input]
[wens at csie.org: use cubieboard2 regulator nodes as example]

[wens at csie.org: x-powers,dcdc-workmode default changed to 'current hardware
setting']
[wens at csie.org: reorganized regulator related properties into separate
section.]

Quoted 5 lines
---
 Documentation/devicetree/bindings/mfd/axp20x.txt | 96 ++++++++++++++++++++++++
 1 file changed, 96 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/mfd/axp20x.txt

Applied, thanks.

Quoted 102 lines
Documentation/devicetree/bindings/mfd/axp20x.txt new file +96 -0
new file mode 100644
index 000000000000..98685f291a72
@@ -0,0 +1,96 @@
+AXP202/AXP209 device tree bindings
+
+The axp20x family current members :
+axp202 (X-Powers)
+axp209 (X-Powers)
+
+Required properties:
+- compatible: "x-powers,axp202" or "x-powers,axp209"
+- reg: The I2C slave address for the AXP chip
+- interrupt-parent: The parent interrupt controller
+- interrupts: SoC NMI / GPIO interrupt connected to the PMIC's IRQ pin
+- interrupt-controller: axp20x has its own internal IRQs
+- #interrupt-cells: Should be set to 1
+
+Optional properties:
+- x-powers,dcdc-freq: defines the work frequency of DC-DC in KHz
+		      (range: 750-1875). Default: 1.5MHz
+- <input>-supply: a phandle to the regulator supply node. May be omitted if
+		  inputs are unregulated, such as using the IPSOUT output
+		  from the PMIC.
+
+- regulators: A node that houses a sub-node for each regulator. Regulators
+	      not used but preferred to be managed by the OS should be
+	      listed as well.
+	      See Documentation/devicetree/bindings/regulator/regulator.txt
+	      for more information on standard regulator bindings.
+
+Optional properties for DCDC regulators:
+- x-powers,dcdc-workmode: 1 for PWM mode, 0 for AUTO (PWM/PFM) mode
+			  Default: Current hardware setting
+			  The DCDC regulators work in a mixed PWM/PFM mode,
+			  using PFM under light loads and switching to PWM
+			  for heavier loads. Forcing PWM mode trades efficiency
+			  under light loads for lower output noise. This
+			  probably makes sense for HiFi audio related
+			  applications that aren't battery constrained.
+
+
+AXP202/AXP209 regulators, type, and corresponding input supply names:
+
+Regulator	  Type		  Supply Name		  Notes
+---------	  ----		  -----------		  -----
+DCDC2		: DC-DC buck	: vin2-supply
+DCDC3		: DC-DC	buck	: vin3-supply
+LDO1		: LDO		: acin-supply		: always on
+LDO2		: LDO		: ldo24in-supply	: shared supply
+LDO3		: LDO		: ldo3in-supply
+LDO4		: LDO		: ldo24in-supply	: shared supply
+LDO5		: LDO		: ldo5in-supply
+
+Example:
+
+axp209: pmic at 34 {
+	compatible = "x-powers,axp209";
+	reg = <0x34>;
+	interrupt-parent = <&nmi_intc>;
+	interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+	interrupt-controller;
+	#interrupt-cells = <1>;
+
+	regulators {
+		x-powers,dcdc-freq = <1500>;
+
+		vdd_cpu: dcdc2 {
+			regulator-always-on;
+			regulator-min-microvolt = <1000000>;
+			regulator-max-microvolt = <1450000>;
+			regulator-name = "vdd-cpu";
+		};
+
+		vdd_int_dll: dcdc3 {
+			regulator-always-on;
+			regulator-min-microvolt = <1000000>;
+			regulator-max-microvolt = <1400000>;
+			regulator-name = "vdd-int-dll";
+		};
+
+		vdd_rtc: ldo1 {
+			regulator-always-on;
+			regulator-min-microvolt = <1200000>;
+			regulator-max-microvolt = <1400000>;
+			regulator-name = "vdd-rtc";
+		};
+
+		avcc: ldo2 {
+			regulator-always-on;
+			regulator-min-microvolt = <2700000>;
+			regulator-max-microvolt = <3300000>;
+			regulator-name = "avcc";
+		};
+
+		ldo3 {
+			/* unused but preferred to be managed by OS */
+		};
+	};
+};
Signature · 4 lines
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
#6 lore raw

PATCH v10 2/2 dt-bindings: add vendor-prefix for X-Powers

In reply to Chen-Yu Tsai

From: Carlo Caione <[email protected]>

---
 Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/vendor-prefixes.txt +1 -0
index 96a17541391e..04d63ce07364 100644
@@ -175,6 +175,7 @@ voipac	Voipac Technologies s.r.o.
 winbond Winbond Electronics corp.
 wlf	Wolfson Microelectronics
 wm	Wondermedia Technologies, Inc.
+x-powers	X-Powers
 xes	Extreme Engineering Solutions (X-ES)
 xillybus	Xillybus Ltd.
 xlnx	Xilinx
Signature · 1 line
2.1.4
Applied
#7 lore raw

Re: [PATCH v10 2/2] dt-bindings: add vendor-prefix for X-Powers

Quoted 8 lines · Chen-Yu Tsai

From: Carlo Caione <[email protected]>

---
 Documentation/devicetree/bindings/vendor-prefixes.txt | 1 +
 1 file changed, 1 insertion(+)

Applied, thanks.

Quoted 12 lines
Documentation/devicetree/bindings/vendor-prefixes.txt +1 -0
index 96a17541391e..04d63ce07364 100644
@@ -175,6 +175,7 @@ voipac	Voipac Technologies s.r.o.
 winbond Winbond Electronics corp.
 wlf	Wolfson Microelectronics
 wm	Wondermedia Technologies, Inc.
+x-powers	X-Powers
 xes	Extreme Engineering Solutions (X-ES)
 xillybus	Xillybus Ltd.
 xlnx	Xilinx
Signature · 4 lines
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog