[kernel] r22467 - in dists/sid/linux/debian: . config/armhf patches patches/features/arm

Ian James Campbell ijc at moszumanska.debian.org
Fri Apr 3 14:08:59 UTC 2015


Author: ijc
Date: Fri Apr  3 14:08:57 2015
New Revision: 22467

Log:
[armhf] Enable power control on various sunxi platforms

Enable MFD_AXP20X and REGULATOR_AXP20X and adding the necessary DTB nodes.
(Closes: #781576).

Added:
   dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-Add-AXP209-support-to-various-boards.patch
   dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-cubieboard-add-axp209-regulator-nodes.patch
   dists/sid/linux/debian/patches/features/arm/ARM-dts-sun5i-Enable-axp209-support-on-A13-OLinuxIno.patch
   dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-Add-AXP209-support-to-various-boards.patch
   dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubieboard2-add-axp209-regulator-nodes.patch
   dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubietruck-add-axp209-regulator-nodes.patch
   dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Add-dtsi-for-AXP209-PMIC.patch
   dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Fixup-after-backport-of-axp209-support.patch
Modified:
   dists/sid/linux/debian/changelog
   dists/sid/linux/debian/config/armhf/config.armmp
   dists/sid/linux/debian/patches/series

Modified: dists/sid/linux/debian/changelog
==============================================================================
--- dists/sid/linux/debian/changelog	Tue Mar 31 03:56:35 2015	(r22466)
+++ dists/sid/linux/debian/changelog	Fri Apr  3 14:08:57 2015	(r22467)
@@ -5,6 +5,8 @@
   * [xen] Enable Xen MCE log support. (Closes: #779698)
   * [armhf] mvebu: do not register custom DMA operations when coherency is
     disabled (Closes: #780858)
+  * [armhf] Enable power control on various sunxi platforms, enable MFD_AXP20X
+    and REGULATOR_AXP20X and adding the necessary DTB nodes. (Closes: #781576)
 
   [ Ben Hutchings ]
   * [armel/kirkwood] linux-image: Add versioned Breaks against flash-kernel,

Modified: dists/sid/linux/debian/config/armhf/config.armmp
==============================================================================
--- dists/sid/linux/debian/config/armhf/config.armmp	Tue Mar 31 03:56:35 2015	(r22466)
+++ dists/sid/linux/debian/config/armhf/config.armmp	Fri Apr  3 14:08:57 2015	(r22467)
@@ -355,6 +355,7 @@
 ##
 ## file: drivers/mfd/Kconfig
 ##
+CONFIG_MFD_AXP20X=y
 CONFIG_MFD_DA9052_SPI=y
 CONFIG_MFD_DA9052_I2C=y
 CONFIG_MFD_MC13XXX_SPI=m
@@ -628,6 +629,7 @@
 ##
 CONFIG_REGULATOR=y
 CONFIG_REGULATOR_ANATOP=m
+CONFIG_REGULATOR_AXP20X=m
 CONFIG_REGULATOR_DA9052=m
 CONFIG_REGULATOR_MC13783=m
 CONFIG_REGULATOR_MC13892=m

Added: dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-Add-AXP209-support-to-various-boards.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-Add-AXP209-support-to-various-boards.patch	Fri Apr  3 14:08:57 2015	(r22467)
@@ -0,0 +1,209 @@
+From 04cfc848b5c74c7fe0f3b75c7e977c7311c7e64d Mon Sep 17 00:00:00 2001
+From: Carlo Caione <carlo at caione.org>
+Date: Mon, 30 Jun 2014 23:57:52 +0200
+Subject: [PATCH 1/7] ARM: dts: sun4i: Add AXP209 support to various boards
+Origin: https://git.kernel.org/linus/e288f1bac490791e7564474b89b7c48ee537b6a7
+
+At a node for the axp209, and where necessary the i2c controller to the dts
+for various boards. Note the axp209 regulators are omitted as we don't have
+any use for them yet, and on some boards were not sure how exactly they are
+wired up.
+
+Adding support for just the axp209 without the regulators is still useful, as
+it will give us power-button and poweroff support.
+
+Signed-off-by: Carlo Caione <carlo at caione.org>
+[hdegoede at redhat.com: Drop the regulator bits for now]
+Signed-off-by: Hans de Goede <hdegoede at redhat.com>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+
+---
+ arch/arm/boot/dts/sun4i-a10-a1000.dts          |  9 +++++++++
+ arch/arm/boot/dts/sun4i-a10-cubieboard.dts     |  9 +++++++++
+ arch/arm/boot/dts/sun4i-a10-hackberry.dts      | 15 +++++++++++++++
+ arch/arm/boot/dts/sun4i-a10-inet97fv2.dts      | 21 +++++++++++++++------
+ arch/arm/boot/dts/sun4i-a10-mini-xplus.dts     | 15 +++++++++++++++
+ arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts | 15 +++++++++++++++
+ arch/arm/boot/dts/sun4i-a10-pcduino.dts        |  9 +++++++++
+ 7 files changed, 87 insertions(+), 6 deletions(-)
+
+diff --git a/arch/arm/boot/dts/sun4i-a10-a1000.dts b/arch/arm/boot/dts/sun4i-a10-a1000.dts
+index 0b97c07..55d9510 100644
+--- a/arch/arm/boot/dts/sun4i-a10-a1000.dts
++++ b/arch/arm/boot/dts/sun4i-a10-a1000.dts
+@@ -98,6 +98,15 @@
+ 			pinctrl-names = "default";
+ 			pinctrl-0 = <&i2c0_pins_a>;
+ 			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupts = <0>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
+ 		};
+ 	};
+ 
+diff --git a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
+index c200eac..539b693 100644
+--- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
++++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
+@@ -90,6 +90,15 @@
+ 			pinctrl-names = "default";
+ 			pinctrl-0 = <&i2c0_pins_a>;
+ 			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupts = <0>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
+ 		};
+ 
+ 		i2c1: i2c at 01c2b000 {
+diff --git a/arch/arm/boot/dts/sun4i-a10-hackberry.dts b/arch/arm/boot/dts/sun4i-a10-hackberry.dts
+index 547fadc..21df4e3 100644
+--- a/arch/arm/boot/dts/sun4i-a10-hackberry.dts
++++ b/arch/arm/boot/dts/sun4i-a10-hackberry.dts
+@@ -92,6 +92,21 @@
+ 			pinctrl-0 = <&uart0_pins_a>;
+ 			status = "okay";
+ 		};
++
++		i2c0: i2c at 01c2ac00 {
++			pinctrl-names = "default";
++			pinctrl-0 = <&i2c0_pins_a>;
++			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupts = <0>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
++		};
+ 	};
+ 
+ 	reg_emac_3v3: emac-3v3 {
+diff --git a/arch/arm/boot/dts/sun4i-a10-inet97fv2.dts b/arch/arm/boot/dts/sun4i-a10-inet97fv2.dts
+index f13723e..6b0c378 100644
+--- a/arch/arm/boot/dts/sun4i-a10-inet97fv2.dts
++++ b/arch/arm/boot/dts/sun4i-a10-inet97fv2.dts
+@@ -40,12 +40,6 @@
+ 			status = "okay";
+ 		};
+ 
+-		i2c0: i2c at 01c2ac00 {
+-			pinctrl-names = "default";
+-			pinctrl-0 = <&i2c0_pins_a>;
+-			status = "okay";
+-		};
+-
+ 		usbphy: phy at 01c13400 {
+ 			usb1_vbus-supply = <&reg_usb1_vbus>;
+ 			usb2_vbus-supply = <&reg_usb2_vbus>;
+@@ -67,6 +61,21 @@
+ 		ohci1: usb at 01c1c400 {
+ 			status = "okay";
+ 		};
++
++		i2c0: i2c at 01c2ac00 {
++			pinctrl-names = "default";
++			pinctrl-0 = <&i2c0_pins_a>;
++			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupts = <0>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
++		};
+ 	};
+ 
+ 	reg_usb1_vbus: usb1-vbus {
+diff --git a/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts b/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts
+index c01cea5..387770d 100644
+--- a/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts
++++ b/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts
+@@ -57,6 +57,21 @@
+ 			pinctrl-0 = <&uart0_pins_a>;
+ 			status = "okay";
+ 		};
++
++		i2c0: i2c at 01c2ac00 {
++			pinctrl-names = "default";
++			pinctrl-0 = <&i2c0_pins_a>;
++			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupts = <0>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
++		};
+ 	};
+ 
+ 	reg_usb1_vbus: usb1-vbus {
+diff --git a/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts b/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts
+index d46a7db..d046d56 100644
+--- a/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts
++++ b/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts
+@@ -91,6 +91,21 @@
+ 			pinctrl-0 = <&uart0_pins_a>;
+ 			status = "okay";
+ 		};
++
++		i2c0: i2c at 01c2ac00 {
++			pinctrl-names = "default";
++			pinctrl-0 = <&i2c0_pins_a>;
++			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupts = <0>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
++		};
+ 	};
+ 
+ 	leds {
+diff --git a/arch/arm/boot/dts/sun4i-a10-pcduino.dts b/arch/arm/boot/dts/sun4i-a10-pcduino.dts
+index fb03bcc..6675bcd 100644
+--- a/arch/arm/boot/dts/sun4i-a10-pcduino.dts
++++ b/arch/arm/boot/dts/sun4i-a10-pcduino.dts
+@@ -76,6 +76,15 @@
+ 			pinctrl-names = "default";
+ 			pinctrl-0 = <&i2c0_pins_a>;
+ 			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupts = <0>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
+ 		};
+ 	};
+ 
+-- 
+2.1.4
+

Added: dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-cubieboard-add-axp209-regulator-nodes.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux/debian/patches/features/arm/ARM-dts-sun4i-cubieboard-add-axp209-regulator-nodes.patch	Fri Apr  3 14:08:57 2015	(r22467)
@@ -0,0 +1,81 @@
+From 84d678e330f80376456c764fe1f9c27d9b79610c Mon Sep 17 00:00:00 2001
+From: Chen-Yu Tsai <wens at csie.org>
+Date: Mon, 12 Jan 2015 12:34:09 +0800
+Subject: [PATCH 6/7] ARM: dts: sun4i: cubieboard: add axp209 regulator nodes
+Origin: https://git.kernel.org/linus/ce124f7a18c5ebc9dc93aaec15aaef779c8708ae
+
+This patch adds the regulator nodes for the axp209 by including
+the axp209 dtsi. As the inputs of these regulators are from the
+axp209's PS output, which is basically just a mux over the 2
+inputs, it is considered to be unregulated. Thus we do not provide
+input supply properties for them.
+
+The regulator names and constraints are based on the board
+schematics and the SoC datasheet.
+
+DCDC2 is used as the cpu power supply. This patch also references
+it from the cpu node.
+
+Also get rid of axp209 properties already set in axp209.dtsi.
+
+Signed-off-by: Chen-Yu Tsai <wens at csie.org>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+---
+ arch/arm/boot/dts/sun4i-a10-cubieboard.dts | 35 ++++++++++++++++++++++++++----
+ 1 file changed, 31 insertions(+), 4 deletions(-)
+
+diff --git a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
+index 539b693..5543b76 100644
+--- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
++++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts
+@@ -92,12 +92,8 @@
+ 			status = "okay";
+ 
+ 			axp209: pmic at 34 {
+-				compatible = "x-powers,axp209";
+ 				reg = <0x34>;
+ 				interrupts = <0>;
+-
+-				interrupt-controller;
+-				#interrupt-cells = <1>;
+ 			};
+ 		};
+ 
+@@ -137,3 +133,34 @@
+ 		status = "okay";
+ 	};
+ };
++
++#include "axp209.dtsi"
++
++&cpu0 {
++	cpu-supply = <&reg_dcdc2>;
++};
++
++&reg_dcdc2 {
++	regulator-always-on;
++	regulator-min-microvolt = <1000000>;
++	regulator-max-microvolt = <1450000>;
++	regulator-name = "vdd-cpu";
++};
++
++&reg_dcdc3 {
++	regulator-always-on;
++	regulator-min-microvolt = <1000000>;
++	regulator-max-microvolt = <1400000>;
++	regulator-name = "vdd-int-dll";
++};
++
++&reg_ldo1 {
++	regulator-name = "vdd-rtc";
++};
++
++&reg_ldo2 {
++	regulator-always-on;
++	regulator-min-microvolt = <3000000>;
++	regulator-max-microvolt = <3000000>;
++	regulator-name = "avcc";
++};
+-- 
+2.1.4
+

Added: dists/sid/linux/debian/patches/features/arm/ARM-dts-sun5i-Enable-axp209-support-on-A13-OLinuxIno.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux/debian/patches/features/arm/ARM-dts-sun5i-Enable-axp209-support-on-A13-OLinuxIno.patch	Fri Apr  3 14:08:57 2015	(r22467)
@@ -0,0 +1,37 @@
+From 3e4ab009b2f03bf5153320a52c0c18e0f631a7fa Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede at redhat.com>
+Date: Sun, 25 Jan 2015 15:36:08 +0100
+Subject: [PATCH 7/7] ARM: dts: sun5i: Enable axp209 support on A13-OLinuxIno
+Origin: https://git.kernel.org/linus/c121f45e6291e00c71b919ce4a439e0b6e829668
+
+The (non micro) A13-OLinuxIno has an axp203 pmic, enable support for this.
+
+Signed-off-by: Hans de Goede <hdegoede at redhat.com>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+---
+ arch/arm/boot/dts/sun5i-a13-olinuxino.dts | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/arch/arm/boot/dts/sun5i-a13-olinuxino.dts b/arch/arm/boot/dts/sun5i-a13-olinuxino.dts
+index 429994e..59261aa 100644
+--- a/arch/arm/boot/dts/sun5i-a13-olinuxino.dts
++++ b/arch/arm/boot/dts/sun5i-a13-olinuxino.dts
+@@ -76,6 +76,15 @@
+ 			pinctrl-names = "default";
+ 			pinctrl-0 = <&i2c0_pins_a>;
+ 			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupts = <0>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
+ 		};
+ 
+ 		i2c1: i2c at 01c2b000 {
+-- 
+2.1.4
+

Added: dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-Add-AXP209-support-to-various-boards.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-Add-AXP209-support-to-various-boards.patch	Fri Apr  3 14:08:57 2015	(r22467)
@@ -0,0 +1,119 @@
+From e0158776b23fba49749b776e4bb813572ea911f4 Mon Sep 17 00:00:00 2001
+From: Carlo Caione <carlo at caione.org>
+Date: Mon, 30 Jun 2014 23:57:53 +0200
+Subject: [PATCH 2/7] ARM: dts: sun7i: Add AXP209 support to various boards
+Origin: https://git.kernel.org/linus/ec0c933d972ba69f06251f7d215723f61535fc16
+
+At a node for the axp209, and where necessary the i2c controller to the dts
+for various boards. Note the axp209 regulators are omitted as we don't have
+any use for them yet, and on some boards were not sure how exactly they are
+wired up.
+
+Adding support for just the axp209 without the regulators is still useful, as
+it will give us power-button and poweroff support.
+
+Signed-off-by: Carlo Caione <carlo at caione.org>
+[hdegoede at redhat.com: Drop the regulator bits for now]
+Signed-off-by: Hans de Goede <hdegoede at redhat.com>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+
+---
+ arch/arm/boot/dts/sun7i-a20-cubieboard2.dts     | 10 ++++++++++
+ arch/arm/boot/dts/sun7i-a20-cubietruck.dts      | 10 ++++++++++
+ arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts       | 16 ++++++++++++++++
+ arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts | 10 ++++++++++
+ 4 files changed, 46 insertions(+)
+
+diff --git a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
+index a5ad945..d4648cf 100644
+--- a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
++++ b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
+@@ -76,6 +76,16 @@
+ 			pinctrl-names = "default";
+ 			pinctrl-0 = <&i2c0_pins_a>;
+ 			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupt-parent = <&nmi_intc>;
++				interrupts = <0 8>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
+ 		};
+ 
+ 		i2c1: i2c at 01c2b000 {
+diff --git a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
+index b87fea9..96aee60 100644
+--- a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
++++ b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
+@@ -110,6 +110,16 @@
+ 			pinctrl-names = "default";
+ 			pinctrl-0 = <&i2c0_pins_a>;
+ 			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupt-parent = <&nmi_intc>;
++				interrupts = <0 8>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
+ 		};
+ 
+ 		i2c1: i2c at 01c2b000 {
+diff --git a/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts b/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts
+index b77308e..cba1567 100644
+--- a/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts
++++ b/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts
+@@ -100,6 +100,22 @@
+ 			status = "okay";
+ 		};
+ 
++		i2c0: i2c at 01c2ac00 {
++			pinctrl-names = "default";
++			pinctrl-0 = <&i2c0_pins_a>;
++			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupt-parent = <&nmi_intc>;
++				interrupts = <0 8>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
++		};
++
+ 		gmac: ethernet at 01c50000 {
+ 			pinctrl-names = "default";
+ 			pinctrl-0 = <&gmac_pins_mii_a>;
+diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts
+index b759630..9d669cdf 100644
+--- a/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts
++++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts
+@@ -122,6 +122,16 @@
+ 			pinctrl-names = "default";
+ 			pinctrl-0 = <&i2c0_pins_a>;
+ 			status = "okay";
++
++			axp209: pmic at 34 {
++				compatible = "x-powers,axp209";
++				reg = <0x34>;
++				interrupt-parent = <&nmi_intc>;
++				interrupts = <0 8>;
++
++				interrupt-controller;
++				#interrupt-cells = <1>;
++			};
+ 		};
+ 
+ 		i2c1: i2c at 01c2b000 {
+-- 
+2.1.4
+

Added: dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubieboard2-add-axp209-regulator-nodes.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubieboard2-add-axp209-regulator-nodes.patch	Fri Apr  3 14:08:57 2015	(r22467)
@@ -0,0 +1,85 @@
+From 078a04de9f3a4ad1021ec647040b87381c9e5776 Mon Sep 17 00:00:00 2001
+From: Chen-Yu Tsai <wens at csie.org>
+Date: Mon, 12 Jan 2015 12:34:04 +0800
+Subject: [PATCH 4/7] ARM: dts: sun7i: cubieboard2: add axp209 regulator nodes
+Origin: https://git.kernel.org/linus/ae265c801ffdbd58e4c7a83efc8dc08932de1f74
+
+This patch adds the regulator nodes for the axp209 by including
+the axp209 dtsi. As the inputs of these regulators are from the
+axp209's PS output, which is basically just a mux over the 2
+inputs, it is considered to be unregulated. Thus we do not provide
+input supply properties for them.
+
+The regulator names and constraints are based on the board
+schematics and the SoC datasheet.
+
+DCDC2 is used as the cpu power supply. This patch also references
+it from the cpu node.
+
+Also get rid of axp209 properties already set in axp209.dtsi.
+
+Signed-off-by: Chen-Yu Tsai <wens at csie.org>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+
+Conflicts:
+	arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
+---
+ arch/arm/boot/dts/sun7i-a20-cubieboard2.dts | 35 +++++++++++++++++++++++++----
+ 1 file changed, 31 insertions(+), 4 deletions(-)
+
+diff --git a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
+index d4648cf..7ce74a1 100644
+--- a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
++++ b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts
+@@ -78,13 +78,9 @@
+ 			status = "okay";
+ 
+ 			axp209: pmic at 34 {
+-				compatible = "x-powers,axp209";
+ 				reg = <0x34>;
+ 				interrupt-parent = <&nmi_intc>;
+ 				interrupts = <0 8>;
+-
+-				interrupt-controller;
+-				#interrupt-cells = <1>;
+ 			};
+ 		};
+ 
+@@ -135,3 +131,34 @@
+ 		status = "okay";
+ 	};
+ };
++
++#include "axp209.dtsi"
++
++&cpu0 {
++	cpu-supply = <&reg_dcdc2>;
++};
++
++&reg_dcdc2 {
++	regulator-always-on;
++	regulator-min-microvolt = <1000000>;
++	regulator-max-microvolt = <1450000>;
++	regulator-name = "vdd-cpu";
++};
++
++&reg_dcdc3 {
++	regulator-always-on;
++	regulator-min-microvolt = <1000000>;
++	regulator-max-microvolt = <1400000>;
++	regulator-name = "vdd-int-dll";
++};
++
++&reg_ldo1 {
++	regulator-name = "vdd-rtc";
++};
++
++&reg_ldo2 {
++	regulator-always-on;
++	regulator-min-microvolt = <3000000>;
++	regulator-max-microvolt = <3000000>;
++	regulator-name = "avcc";
++};
+-- 
+2.1.4
+

Added: dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubietruck-add-axp209-regulator-nodes.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux/debian/patches/features/arm/ARM-dts-sun7i-cubietruck-add-axp209-regulator-nodes.patch	Fri Apr  3 14:08:57 2015	(r22467)
@@ -0,0 +1,85 @@
+From 319a5005396069f7c1829cafccbbe918166ec51a Mon Sep 17 00:00:00 2001
+From: Chen-Yu Tsai <wens at csie.org>
+Date: Mon, 12 Jan 2015 12:34:05 +0800
+Subject: [PATCH 5/7] ARM: dts: sun7i: cubietruck: add axp209 regulator nodes
+Origin: https://git.kernel.org/linus/0d4e29343ce6317cf5cf073346c3e66ad82d61a1
+
+This patch adds the regulator nodes for the axp209 by including
+the axp209 dtsi. As the inputs of these regulators are from the
+axp209's PS output, which is basically just a mux over the 2
+inputs, it is considered to be unregulated. Thus we do not provide
+input supply properties for them.
+
+The regulator names and constraints are based on the board
+schematics and the SoC datasheet.
+
+DCDC2 is used as the cpu power supply. This patch also references
+it from the cpu node.
+
+Also get rid of axp209 properties already set in axp209.dtsi.
+
+Signed-off-by: Chen-Yu Tsai <wens at csie.org>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+
+Conflicts:
+	arch/arm/boot/dts/sun7i-a20-cubietruck.dts
+---
+ arch/arm/boot/dts/sun7i-a20-cubietruck.dts | 35 ++++++++++++++++++++++++++----
+ 1 file changed, 31 insertions(+), 4 deletions(-)
+
+diff --git a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
+index 96aee60..eb93cdd 100644
+--- a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
++++ b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts
+@@ -112,13 +112,9 @@
+ 			status = "okay";
+ 
+ 			axp209: pmic at 34 {
+-				compatible = "x-powers,axp209";
+ 				reg = <0x34>;
+ 				interrupt-parent = <&nmi_intc>;
+ 				interrupts = <0 8>;
+-
+-				interrupt-controller;
+-				#interrupt-cells = <1>;
+ 			};
+ 		};
+ 
+@@ -198,3 +194,34 @@
+ 		gpio = <&pio 7 9 0>;
+ 	};
+ };
++
++#include "axp209.dtsi"
++
++&cpu0 {
++	cpu-supply = <&reg_dcdc2>;
++};
++
++&reg_dcdc2 {
++	regulator-always-on;
++	regulator-min-microvolt = <1000000>;
++	regulator-max-microvolt = <1450000>;
++	regulator-name = "vdd-cpu";
++};
++
++&reg_dcdc3 {
++	regulator-always-on;
++	regulator-min-microvolt = <1000000>;
++	regulator-max-microvolt = <1400000>;
++	regulator-name = "vdd-int-dll";
++};
++
++&reg_ldo1 {
++	regulator-name = "vdd-rtc";
++};
++
++&reg_ldo2 {
++	regulator-always-on;
++	regulator-min-microvolt = <3000000>;
++	regulator-max-microvolt = <3000000>;
++	regulator-name = "avcc";
++};
+-- 
+2.1.4
+

Added: dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Add-dtsi-for-AXP209-PMIC.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Add-dtsi-for-AXP209-PMIC.patch	Fri Apr  3 14:08:57 2015	(r22467)
@@ -0,0 +1,123 @@
+From f3fb8c8611d470e40cb3460ede6f339e810d6f19 Mon Sep 17 00:00:00 2001
+From: Chen-Yu Tsai <wens at csie.org>
+Date: Mon, 12 Jan 2015 12:34:02 +0800
+Subject: [PATCH 3/7] ARM: dts: sunxi: Add dtsi for AXP209 PMIC
+Origin: https://git.kernel.org/linus/ddfd0232ede34e673fe338d1e5a7ec7aa022aa99
+
+The AXP209 PMIC is used with some Allwinner SoCs. This patch adds
+a dtsi file listing all the regulator nodes. The regulators are
+initialized based on their device node names.
+
+Signed-off-by: Chen-Yu Tsai <wens at csie.org>
+Signed-off-by: Maxime Ripard <maxime.ripard at free-electrons.com>
+---
+ arch/arm/boot/dts/axp209.dtsi | 97 +++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 97 insertions(+)
+ create mode 100644 arch/arm/boot/dts/axp209.dtsi
+
+diff --git a/arch/arm/boot/dts/axp209.dtsi b/arch/arm/boot/dts/axp209.dtsi
+new file mode 100644
+index 0000000..c20cf53
+--- /dev/null
++++ b/arch/arm/boot/dts/axp209.dtsi
+@@ -0,0 +1,97 @@
++/*
++ * Copyright 2015 Chen-Yu Tsai
++ *
++ * Chen-Yu Tsai <wens at csie.org>
++ *
++ * This file is dual-licensed: you can use it either under the terms
++ * of the GPL or the X11 license, at your option. Note that this dual
++ * licensing only applies to this file, and not this project as a
++ * whole.
++ *
++ *  a) This file is free software; you can redistribute it and/or
++ *     modify it under the terms of the GNU General Public License as
++ *     published by the Free Software Foundation; either version 2 of the
++ *     License, or (at your option) any later version.
++ *
++ *     This file is distributed in the hope that it will be useful,
++ *     but WITHOUT ANY WARRANTY; without even the implied warranty of
++ *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++ *     GNU General Public License for more details.
++ *
++ *     You should have received a copy of the GNU General Public
++ *     License along with this file; if not, write to the Free
++ *     Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
++ *     MA 02110-1301 USA
++ *
++ * Or, alternatively,
++ *
++ *  b) Permission is hereby granted, free of charge, to any person
++ *     obtaining a copy of this software and associated documentation
++ *     files (the "Software"), to deal in the Software without
++ *     restriction, including without limitation the rights to use,
++ *     copy, modify, merge, publish, distribute, sublicense, and/or
++ *     sell copies of the Software, and to permit persons to whom the
++ *     Software is furnished to do so, subject to the following
++ *     conditions:
++ *
++ *     The above copyright notice and this permission notice shall be
++ *     included in all copies or substantial portions of the Software.
++ *
++ *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
++ *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
++ *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
++ *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
++ *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
++ *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
++ *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
++ *     OTHER DEALINGS IN THE SOFTWARE.
++ */
++
++/*
++ * AXP202/209 Integrated Power Management Chip
++ * http://www.x-powers.com/product/AXP20X.php
++ * http://dl.linux-sunxi.org/AXP/AXP209%20Datasheet%20v1.0_cn.pdf
++ */
++
++&axp209 {
++	compatible = "x-powers,axp209";
++	interrupt-controller;
++	#interrupt-cells = <1>;
++
++	regulators {
++		/* Default work frequency for buck regulators */
++		x-powers,dcdc-freq = <1500>;
++
++		reg_dcdc2: dcdc2 {
++			regulator-name = "dcdc2";
++		};
++
++		reg_dcdc3: dcdc3 {
++			regulator-name = "dcdc3";
++		};
++
++		reg_ldo1: ldo1 {
++			/* LDO1 is a fixed output regulator */
++			regulator-always-on;
++			regulator-min-microvolt = <1300000>;
++			regulator-max-microvolt = <1300000>;
++			regulator-name = "ldo1";
++		};
++
++		reg_ldo2: ldo2 {
++			regulator-name = "ldo2";
++		};
++
++		reg_ldo3: ldo3 {
++			regulator-name = "ldo3";
++		};
++
++		reg_ldo4: ldo4 {
++			regulator-name = "ldo4";
++		};
++
++		reg_ldo5: ldo5 {
++			regulator-name = "ldo5";
++		};
++	};
++};
+-- 
+2.1.4
+

Added: dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Fixup-after-backport-of-axp209-support.patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ dists/sid/linux/debian/patches/features/arm/ARM-dts-sunxi-Fixup-after-backport-of-axp209-support.patch	Fri Apr  3 14:08:57 2015	(r22467)
@@ -0,0 +1,61 @@
+From 0737d5a36d9bbb22d9a156055116e710940be98b Mon Sep 17 00:00:00 2001
+From: Ian Campbell <ijc at debian.org>
+Date: Fri, 3 Apr 2015 10:26:04 +0100
+Subject: [PATCH] ARM: dts: sunxi: Fixup after backport of axp209 support
+Forwarded: not-needed
+
+By adding cpu0 label to cpu at 0.
+
+Upstream this was added by "ARM: dts: sun4i: Add cpu clock reference and
+operating points to dtsi" (and similar for sun5i, sun7i) which we have not
+backported.
+
+Signed-off-by: Ian Campbell <ijc at debian.org>
+---
+ arch/arm/boot/dts/sun4i-a10.dtsi | 2 +-
+ arch/arm/boot/dts/sun5i-a13.dtsi | 2 +-
+ arch/arm/boot/dts/sun7i-a20.dtsi | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi
+index eae8bfd..ad2ef45 100644
+--- a/arch/arm/boot/dts/sun4i-a10.dtsi
++++ b/arch/arm/boot/dts/sun4i-a10.dtsi
+@@ -70,7 +70,7 @@
+ 	cpus {
+ 		#address-cells = <1>;
+ 		#size-cells = <0>;
+-		cpu at 0 {
++		cpu0: cpu at 0 {
+ 			device_type = "cpu";
+ 			compatible = "arm,cortex-a8";
+ 			reg = <0x0>;
+diff --git a/arch/arm/boot/dts/sun5i-a13.dtsi b/arch/arm/boot/dts/sun5i-a13.dtsi
+index a194c1e..23bfb8f 100644
+--- a/arch/arm/boot/dts/sun5i-a13.dtsi
++++ b/arch/arm/boot/dts/sun5i-a13.dtsi
+@@ -38,7 +38,7 @@
+ 	cpus {
+ 		#address-cells = <1>;
+ 		#size-cells = <0>;
+-		cpu at 0 {
++		cpu0: cpu at 0 {
+ 			device_type = "cpu";
+ 			compatible = "arm,cortex-a8";
+ 			reg = <0x0>;
+diff --git a/arch/arm/boot/dts/sun7i-a20.dtsi b/arch/arm/boot/dts/sun7i-a20.dtsi
+index 7d47914..648051c 100644
+--- a/arch/arm/boot/dts/sun7i-a20.dtsi
++++ b/arch/arm/boot/dts/sun7i-a20.dtsi
+@@ -63,7 +63,7 @@
+ 		#address-cells = <1>;
+ 		#size-cells = <0>;
+ 
+-		cpu at 0 {
++		cpu0: cpu at 0 {
+ 			compatible = "arm,cortex-a7";
+ 			device_type = "cpu";
+ 			reg = <0>;
+-- 
+2.1.4
+

Modified: dists/sid/linux/debian/patches/series
==============================================================================
--- dists/sid/linux/debian/patches/series	Tue Mar 31 03:56:35 2015	(r22466)
+++ dists/sid/linux/debian/patches/series	Fri Apr  3 14:08:57 2015	(r22467)
@@ -127,6 +127,14 @@
 features/arm/ARM-dts-sunxi-Update-simplefb-nodes-so-that-u-boot-c.patch
 features/arm/ARM-dts-sun4i-Add-simplefb-node-with-de_fe0-de_be0-l.patch
 features/arm/ARM-dts-sunxi-Add-simplefb-nodes-for-de_be0-lcd0-de_.patch
+features/arm/ARM-dts-sun4i-Add-AXP209-support-to-various-boards.patch
+features/arm/ARM-dts-sun7i-Add-AXP209-support-to-various-boards.patch
+features/arm/ARM-dts-sunxi-Add-dtsi-for-AXP209-PMIC.patch
+features/arm/ARM-dts-sun7i-cubieboard2-add-axp209-regulator-nodes.patch
+features/arm/ARM-dts-sun7i-cubietruck-add-axp209-regulator-nodes.patch
+features/arm/ARM-dts-sun4i-cubieboard-add-axp209-regulator-nodes.patch
+features/arm/ARM-dts-sun5i-Enable-axp209-support-on-A13-OLinuxIno.patch
+features/arm/ARM-dts-sunxi-Fixup-after-backport-of-axp209-support.patch
 features/arm64/drivers-net-Add-APM-X-Gene-SoC-ethernet-driver-suppo.patch
 features/arm64/drivers-net-NET_XGENE-should-depend-on-HAS_DMA.patch
 features/arm64/net-xgene-Check-negative-return-value-of-xgene_enet_.patch



More information about the Kernel-svn-changes mailing list