linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball
@ 2012-05-30  4:47 Lee Jones
  2012-05-30  4:47 ` [PATCH 01/22] ARM: ux500: New DT:ed snowball_platform_devs for one-by-one device enablement Lee Jones
                   ` (21 more replies)
  0 siblings, 22 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

This patch-set contains some fixes and clean-ups that will ensure
smooth booting on Snowball. Without them some devices will either
fail on probe, or fail to probe at all. Some patches contained
here work towards suppressing useless warning boot messages which
originate from the non-existent User Interface Board (UIB). Others
aim to fix some previous merge conflict errors previously applied
to the Mainline kernel.

 arch/arm/boot/dts/db8500.dtsi          |  204 +++++++++++++++++++++++++++++++-
 arch/arm/boot/dts/snowball.dts         |   32 +++--
 arch/arm/configs/u8500_defconfig       |    1 +
 arch/arm/mach-ux500/board-mop500-uib.c |    4 +-
 arch/arm/mach-ux500/board-mop500.c     |   32 ++++-
 arch/arm/mach-ux500/board-mop500.h     |    4 +
 arch/arm/mach-ux500/cpu-db8500.c       |   25 +++-
 drivers/mfd/Kconfig                    |   10 --
 drivers/mfd/ab8500-gpadc.c             |    3 +-
 drivers/mfd/db8500-prcmu.c             |    6 +
 drivers/net/ethernet/smsc/smsc911x.c   |    7 +-
 drivers/pinctrl/pinctrl-nomadik.c      |   20 +++-
 drivers/regulator/ab8500.c             |   22 ++--
 drivers/regulator/db8500-prcmu.c       |   40 +++----
 drivers/rtc/rtc-ab8500.c               |    2 +-
 15 files changed, 344 insertions(+), 68 deletions(-)

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 01/22] ARM: ux500: New DT:ed snowball_platform_devs for one-by-one device enablement
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  4:47 ` [PATCH 02/22] ARM: ux500: New DT:ed u8500_init_devices " Lee Jones
                   ` (20 subsequent siblings)
  21 siblings, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

During Device Tree enablement it is necessary to remove snowball_<device>*
platform_data segments one at at time, as and when particular devices are
DT enabled. This patch provides a temporary solution. Once this new struct
is empty it will be removed again.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c |   18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index b23a643..d4132f5 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -676,6 +676,13 @@ static struct platform_device *snowball_platform_devs[] __initdata = {
 	&ab8500_device,
 };
 
+static struct platform_device *snowball_of_platform_devs[] __initdata = {
+	&snowball_led_dev,
+	&snowball_key_dev,
+	&snowball_sbnet_dev,
+	&ab8500_device,
+};
+
 static void __init mop500_init_machine(void)
 {
 	struct device *parent = NULL;
@@ -876,8 +883,15 @@ static void __init u8500_init_machine(void)
 					ARRAY_SIZE(mop500_i2c2_devices));
 
 	} else if (of_machine_is_compatible("calaosystems,snowball-a9500")) {
-		platform_add_devices(snowball_platform_devs,
-				ARRAY_SIZE(snowball_platform_devs));
+		/*
+		 * Devices to be DT:ed:
+		 *   snowball_led_dev   = todo
+		 *   snowball_key_dev   = todo
+		 *   snowball_sbnet_dev = todo
+		 *   ab8500_device      = todo
+		 */
+		platform_add_devices(snowball_of_platform_devs,
+				ARRAY_SIZE(snowball_of_platform_devs));
 
 		snowball_sdi_init(parent);
 	} else if (of_machine_is_compatible("st-ericsson,hrefv60+")) {
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 02/22] ARM: ux500: New DT:ed u8500_init_devices for one-by-one device enablement
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
  2012-05-30  4:47 ` [PATCH 01/22] ARM: ux500: New DT:ed snowball_platform_devs for one-by-one device enablement Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  4:47 ` [PATCH 03/22] ARM: ux500: Disable SMSC911x platform code registration when DT is enabled Lee Jones
                   ` (19 subsequent siblings)
  21 siblings, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

During Device Tree enablement it is necessary to remove
<hw_component>_add_<device> calls one at at time, as and when particular
devices are DT enabled. This patch provides a temporary solution. Once
the new *of_init_devices function has been fully unpopulated it will be
removed again.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c |    2 +-
 arch/arm/mach-ux500/board-mop500.h |    3 +++
 arch/arm/mach-ux500/cpu-db8500.c   |   22 ++++++++++++++++++++++
 3 files changed, 26 insertions(+), 1 deletion(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index d4132f5..ff04010 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -859,7 +859,7 @@ static void __init u8500_init_machine(void)
 	else if (of_machine_is_compatible("st-ericsson,hrefv60+"))
 		hrefv60_pinmaps_init();
 
-	parent = u8500_init_devices();
+	parent = u8500_of_init_devices();
 
 	for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
 		mop500_platform_devs[i]->dev.parent = parent;
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index bc44c07..3be0cb8 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -92,4 +92,7 @@ void __init hrefv60_pinmaps_init(void);
 void mop500_uib_i2c_add(int busnum, struct i2c_board_info *info,
 		unsigned n);
 
+/* TODO: Once all pieces are DT:ed, remove completely. */
+struct device * __init u8500_of_init_devices(void);
+
 #endif
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 16169c4..04244b0 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -222,6 +222,28 @@ struct device * __init u8500_init_devices(void)
 	platform_device_register_data(parent,
 		"cpufreq-u8500", -1, NULL, 0);
 
+	for (i = 0; i < ARRAY_SIZE(platform_devs); i++)
+		platform_devs[i]->dev.parent = parent;
+
+	platform_add_devices(platform_devs, ARRAY_SIZE(platform_devs));
+
+	return parent;
+}
+
+/* TODO: Once all pieces are DT:ed, remove completely. */
+struct device * __init u8500_of_init_devices(void)
+{
+	struct device *parent;
+	int i;
+
+	parent = db8500_soc_device_init();
+
+	db8500_add_rtc(parent);
+	db8500_add_usb(parent, usb_db8500_rx_dma_cfg, usb_db8500_tx_dma_cfg);
+
+	platform_device_register_data(parent,
+		"cpufreq-u8500", -1, NULL, 0);
+
 	for (i = 0; i < ARRAY_SIZE(of_platform_devs); i++)
 		of_platform_devs[i]->dev.parent = parent;
 
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 03/22] ARM: ux500: Disable SMSC911x platform code registration when DT is enabled
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
  2012-05-30  4:47 ` [PATCH 01/22] ARM: ux500: New DT:ed snowball_platform_devs for one-by-one device enablement Lee Jones
  2012-05-30  4:47 ` [PATCH 02/22] ARM: ux500: New DT:ed u8500_init_devices " Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  4:47 ` [PATCH 04/22] ARM: ux500: Remove DB8500 PRCMU platform " Lee Jones
                   ` (18 subsequent siblings)
  21 siblings, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

Now the SCMC911x is correctly enabled in Device Tree, there is no need
to continue registering it from platform code. In fact, if we continue
doing so, the system will throw an error on boot.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index ff04010..f8e0f1d 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -679,7 +679,6 @@ static struct platform_device *snowball_platform_devs[] __initdata = {
 static struct platform_device *snowball_of_platform_devs[] __initdata = {
 	&snowball_led_dev,
 	&snowball_key_dev,
-	&snowball_sbnet_dev,
 	&ab8500_device,
 };
 
@@ -887,7 +886,7 @@ static void __init u8500_init_machine(void)
 		 * Devices to be DT:ed:
 		 *   snowball_led_dev   = todo
 		 *   snowball_key_dev   = todo
-		 *   snowball_sbnet_dev = todo
+		 *   snowball_sbnet_dev = done
 		 *   ab8500_device      = todo
 		 */
 		platform_add_devices(snowball_of_platform_devs,
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 04/22] ARM: ux500: Remove DB8500 PRCMU platform registration when DT is enabled
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (2 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 03/22] ARM: ux500: Disable SMSC911x platform code registration when DT is enabled Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  6:48   ` Linus Walleij
  2012-05-30  4:47 ` [PATCH 05/22] ARM: ux500: PRCMU related configuration and layout corrections for Device Tree Lee Jones
                   ` (17 subsequent siblings)
  21 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

Now the DB8500 has Device Tree support it will be probed when the DT
is parsed, rendering the requirement for platform registration void.
This patch removes DB8500 PRCMU platform registration.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/cpu-db8500.c |    3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 04244b0..33275eb 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -140,7 +140,6 @@ static struct platform_device *platform_devs[] __initdata = {
 static struct platform_device *of_platform_devs[] __initdata = {
 	&u8500_dma40_device,
 	&db8500_pmu_device,
-	&db8500_prcmu_device,
 };
 
 static resource_size_t __initdata db8500_gpio_base[] = {
@@ -251,7 +250,7 @@ struct device * __init u8500_of_init_devices(void)
 	 * Devices to be DT:ed:
 	 *   u8500_dma40_device  = todo
 	 *   db8500_pmu_device   = todo
-	 *   db8500_prcmu_device = todo
+	 *   db8500_prcmu_device = done
 	 */
 	platform_add_devices(of_platform_devs, ARRAY_SIZE(of_platform_devs));
 
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 05/22] ARM: ux500: PRCMU related configuration and layout corrections for Device Tree
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (3 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 04/22] ARM: ux500: Remove DB8500 PRCMU platform " Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  4:47 ` [PATCH 06/22] ARM: ux500: Re-enable SMSC911x platform code registration during non-DT boots Lee Jones
                   ` (16 subsequent siblings)
  21 siblings, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

Apply db8500 related PRCMU Device Tree settings and clean up some formatting
errors. We also remove one of the PRCMU assigned IRQs, as it is currently not
used.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/boot/dts/db8500.dtsi |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/db8500.dtsi b/arch/arm/boot/dts/db8500.dtsi
index 881bc39..7be77df 100644
--- a/arch/arm/boot/dts/db8500.dtsi
+++ b/arch/arm/boot/dts/db8500.dtsi
@@ -169,12 +169,12 @@
 		prcmu at 80157000 {
 			compatible = "stericsson,db8500-prcmu";
 			reg = <0x80157000 0x1000>;
-			interrupts = <46 47>;
+			interrupts = <0 47 0x4>;
 			#address-cells = <1>;
 			#size-cells = <1>;
 			ranges;
 
-				prcmu-timer-4 at 80157450 {
+			prcmu-timer-4 at 80157450 {
 				compatible = "stericsson,db8500-prcmu-timer-4";
 				reg = <0x80157450 0xC>;
 			};
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 06/22] ARM: ux500: Re-enable SMSC911x platform code registration during non-DT boots
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (4 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 05/22] ARM: ux500: PRCMU related configuration and layout corrections for Device Tree Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  4:47 ` [PATCH 07/22] ARM: ux500: Use correct format for dynamic IRQ assignment Lee Jones
                   ` (15 subsequent siblings)
  21 siblings, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

The patch to disable SMSC911x registration was applied twice in the upstream
kernel by mistake. Git interpreted this as 'take the same entry from a
similar struct' which was close by. This was the wrong thing to do. This patch
rectifies this error and re-enables SMSC911x registration when Device Tree is
not enabled.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c |    1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index f8e0f1d..aecb0e1 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -673,6 +673,7 @@ static void __init u8500_cryp1_hash1_init(struct device *parent)
 static struct platform_device *snowball_platform_devs[] __initdata = {
 	&snowball_led_dev,
 	&snowball_key_dev,
+	&snowball_sbnet_dev,
 	&ab8500_device,
 };
 
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 07/22] ARM: ux500: Use correct format for dynamic IRQ assignment
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (5 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 06/22] ARM: ux500: Re-enable SMSC911x platform code registration during non-DT boots Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  4:47 ` [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree Lee Jones
                   ` (14 subsequent siblings)
  21 siblings, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

This patch applies the correct format requested by the irq
domain. For chained IRQs which use GPIO lines as IRQs, we
stipulate that a two cell request is required. The first cell
contains the requested IRQ and the second can contain flags
pertaining to edge detection and level sensitive values. The
zeroth cell specifies the GPIO controller by use of a phandle.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/boot/dts/db8500.dtsi  |   21 ++++++++++++++++++++-
 arch/arm/boot/dts/snowball.dts |   17 ++++++++---------
 2 files changed, 28 insertions(+), 10 deletions(-)

diff --git a/arch/arm/boot/dts/db8500.dtsi b/arch/arm/boot/dts/db8500.dtsi
index 7be77df..7070000 100644
--- a/arch/arm/boot/dts/db8500.dtsi
+++ b/arch/arm/boot/dts/db8500.dtsi
@@ -58,6 +58,8 @@
 				"st,nomadik-gpio";
 			reg =  <0x8012e000 0x80>;
 			interrupts = <0 119 0x4>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
 			supports-sleepmode;
 			gpio-controller;
 			#gpio-cells = <2>;
@@ -69,6 +71,8 @@
 				"st,nomadik-gpio";
 			reg =  <0x8012e080 0x80>;
 			interrupts = <0 120 0x4>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
 			supports-sleepmode;
 			gpio-controller;
 			#gpio-cells = <2>;
@@ -80,6 +84,8 @@
 				"st,nomadik-gpio";
 			reg =  <0x8000e000 0x80>;
 			interrupts = <0 121 0x4>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
 			supports-sleepmode;
 			gpio-controller;
 			#gpio-cells = <2>;
@@ -91,6 +97,8 @@
 				"st,nomadik-gpio";
 			reg =  <0x8000e080 0x80>;
 			interrupts = <0 122 0x4>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
 			supports-sleepmode;
 			gpio-controller;
 			#gpio-cells = <2>;
@@ -102,6 +110,8 @@
 				"st,nomadik-gpio";
 			reg =  <0x8000e100 0x80>;
 			interrupts = <0 123 0x4>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
 			supports-sleepmode;
 			gpio-controller;
 			#gpio-cells = <2>;
@@ -113,6 +123,8 @@
 				"st,nomadik-gpio";
 			reg =  <0x8000e180 0x80>;
 			interrupts = <0 124 0x4>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
 			supports-sleepmode;
 			gpio-controller;
 			#gpio-cells = <2>;
@@ -124,6 +136,8 @@
 				"st,nomadik-gpio";
 			reg =  <0x8011e000 0x80>;
 			interrupts = <0 125 0x4>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
 			supports-sleepmode;
 			gpio-controller;
 			#gpio-cells = <2>;
@@ -135,6 +149,8 @@
 				"st,nomadik-gpio";
 			reg =  <0x8011e080 0x80>;
 			interrupts = <0 126 0x4>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
 			supports-sleepmode;
 			gpio-controller;
 			#gpio-cells = <2>;
@@ -146,6 +162,8 @@
 				"st,nomadik-gpio";
 			reg =  <0xa03fe000 0x80>;
 			interrupts = <0 127 0x4>;
+			interrupt-controller;
+			#interrupt-cells = <2>;
 			supports-sleepmode;
 			gpio-controller;
 			#gpio-cells = <2>;
@@ -235,7 +253,8 @@
 			status = "disabled";
 
 			// Add one of these for each child device
-			cs-gpios = <&gpio0 31 &gpio4 14 &gpio4 16 &gpio6 22 &gpio7 0>;
+			cs-gpios = <&gpio0 31 0x4 &gpio4 14 0x4 &gpio4 16 0x4
+				    &gpio6 22 0x4 &gpio7 0 0x4>;
 
 		};
 
diff --git a/arch/arm/boot/dts/snowball.dts b/arch/arm/boot/dts/snowball.dts
index d99dc04..81ff557 100644
--- a/arch/arm/boot/dts/snowball.dts
+++ b/arch/arm/boot/dts/snowball.dts
@@ -30,35 +30,35 @@
 			wakeup = <1>;
 			linux,code = <2>;
 			label = "userpb";
-			gpios = <&gpio1 0 0>;
+			gpios = <&gpio1 0 0x4>;
 		};
 		button at 2 {
 			debounce_interval = <50>;
 			wakeup = <1>;
 			linux,code = <3>;
 			label = "extkb1";
-			gpios = <&gpio4 23 0>;
+			gpios = <&gpio4 23 0x4>;
 		};
 		button at 3 {
 			debounce_interval = <50>;
 			wakeup = <1>;
 			linux,code = <4>;
 			label = "extkb2";
-			gpios = <&gpio4 24 0>;
+			gpios = <&gpio4 24 0x4>;
 		};
 		button at 4 {
 			debounce_interval = <50>;
 			wakeup = <1>;
 			linux,code = <5>;
 			label = "extkb3";
-			gpios = <&gpio5 1 0>;
+			gpios = <&gpio5 1 0x4>;
 		};
 		button at 5 {
 			debounce_interval = <50>;
 			wakeup = <1>;
 			linux,code = <6>;
 			label = "extkb4";
-			gpios = <&gpio5 2 0>;
+			gpios = <&gpio5 2 0x4>;
 		};
 	};
 
@@ -66,12 +66,11 @@
 		compatible = "gpio-leds";
 		used-led {
 			label = "user_led";
-			gpios = <&gpio4 14>;
+			gpios = <&gpio4 14 0x4>;
 		};
 	};
 
 	soc-u9500 {
-
 		external-bus at 50000000 {
 			status = "okay";
 
@@ -91,7 +90,7 @@
 
 		sdi at 80126000 {
 			status = "enabled";
-			cd-gpios = <&gpio6 26>;
+			cd-gpios  = <&gpio6 26 0x4>; // 218
 		};
 
 		sdi at 80114000 {
@@ -114,7 +113,7 @@
 			tc3589x at 42 {
 				//compatible = "tc3589x";
 				reg = <0x42>;
-				interrupts = <25>;
+				gpios = <&gpio6 25 0x4>;
 				interrupt-parent = <&gpio6>;
 			};
 			tps61052 at 33 {
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (6 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 07/22] ARM: ux500: Use correct format for dynamic IRQ assignment Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  6:58   ` Linus Walleij
  2012-06-01 14:32   ` Mark Brown
  2012-05-30  4:47 ` [PATCH 09/22] regulator: Change db8500-prcmu " Lee Jones
                   ` (13 subsequent siblings)
  21 siblings, 2 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

The 'name' field in 'struct of_regulator_match' expects to match with
its corresponding regulator device node in the Device Tree. This patch
renames each of the regulators in the ab8500 regulator driver so this
is true.

Cc: linux-kernel at vger.kernel.org
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 drivers/regulator/ab8500.c |   22 +++++++++++-----------
 1 file changed, 11 insertions(+), 11 deletions(-)

diff --git a/drivers/regulator/ab8500.c b/drivers/regulator/ab8500.c
index e1b8c54..a739f5c 100644
--- a/drivers/regulator/ab8500.c
+++ b/drivers/regulator/ab8500.c
@@ -794,17 +794,17 @@ static __devinit int ab8500_regulator_register(struct platform_device *pdev,
 }
 
 static struct of_regulator_match ab8500_regulator_matches[] = {
-	{ .name	= "LDO-AUX1",    .driver_data = (void *) AB8500_LDO_AUX1, },
-	{ .name	= "LDO-AUX2",    .driver_data = (void *) AB8500_LDO_AUX2, },
-	{ .name	= "LDO-AUX3",    .driver_data = (void *) AB8500_LDO_AUX3, },
-	{ .name	= "LDO-INTCORE", .driver_data = (void *) AB8500_LDO_INTCORE, },
-	{ .name	= "LDO-TVOUT",   .driver_data = (void *) AB8500_LDO_TVOUT, },
-	{ .name = "LDO-USB",     .driver_data = (void *) AB8500_LDO_USB, },
-	{ .name = "LDO-AUDIO",   .driver_data = (void *) AB8500_LDO_AUDIO, },
-	{ .name	= "LDO-ANAMIC1", .driver_data = (void *) AB8500_LDO_ANAMIC1, },
-	{ .name	= "LDO-ANAMIC2", .driver_data = (void *) AB8500_LDO_ANAMIC2, },
-	{ .name	= "LDO-DMIC",    .driver_data = (void *) AB8500_LDO_DMIC, },
-	{ .name	= "LDO-ANA",     .driver_data = (void *) AB8500_LDO_ANA, },
+	{ .name	= "ab8500_ldo_aux1",    .driver_data = (void *) AB8500_LDO_AUX1, },
+	{ .name	= "ab8500_ldo_aux2",    .driver_data = (void *) AB8500_LDO_AUX2, },
+	{ .name	= "ab8500_ldo_aux3",    .driver_data = (void *) AB8500_LDO_AUX3, },
+	{ .name	= "ab8500_ldo_intcore", .driver_data = (void *) AB8500_LDO_INTCORE, },
+	{ .name	= "ab8500_ldo_tvout",   .driver_data = (void *) AB8500_LDO_TVOUT, },
+	{ .name = "ab8500_ldo_usb",     .driver_data = (void *) AB8500_LDO_USB, },
+	{ .name = "ab8500_ldo_audio",   .driver_data = (void *) AB8500_LDO_AUDIO, },
+	{ .name	= "ab8500_ldo_anamic1", .driver_data = (void *) AB8500_LDO_ANAMIC1, },
+	{ .name	= "ab8500_ldo_amamic2", .driver_data = (void *) AB8500_LDO_ANAMIC2, },
+	{ .name	= "ab8500_ldo_dmic",    .driver_data = (void *) AB8500_LDO_DMIC, },
+	{ .name	= "ab8500_ldo_ana",     .driver_data = (void *) AB8500_LDO_ANA, },
 };
 
 static __devinit int
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (7 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  7:00   ` Linus Walleij
  2012-06-05 10:24   ` Lee Jones
  2012-05-30  4:47 ` [PATCH 10/22] ARM: ux500: Disable platform setup of the ab8500 when DT is enabled Lee Jones
                   ` (12 subsequent siblings)
  21 siblings, 2 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

The 'name' field in 'struct of_regulator_match' expects to match with
its corresponding regulator device node in the Device Tree. This patch
renames each of the regulators in the db8500-prcum regulator driver so
this is true.

Cc: linux-kernel at vger.kernel.org
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 drivers/regulator/db8500-prcmu.c |   40 +++++++++++++++++++-------------------
 1 file changed, 20 insertions(+), 20 deletions(-)

diff --git a/drivers/regulator/db8500-prcmu.c b/drivers/regulator/db8500-prcmu.c
index 968f97f..9dbb491 100644
--- a/drivers/regulator/db8500-prcmu.c
+++ b/drivers/regulator/db8500-prcmu.c
@@ -452,26 +452,26 @@ static __devinit int db8500_regulator_register(struct platform_device *pdev,
 }
 
 static struct of_regulator_match db8500_regulator_matches[] = {
-	{ .name	= "db8500-vape",          .driver_data = (void *) DB8500_REGULATOR_VAPE, },
-	{ .name	= "db8500-varm",          .driver_data = (void *) DB8500_REGULATOR_VARM, },
-	{ .name	= "db8500-vmodem",        .driver_data = (void *) DB8500_REGULATOR_VMODEM, },
-	{ .name	= "db8500-vpll",          .driver_data = (void *) DB8500_REGULATOR_VPLL, },
-	{ .name	= "db8500-vsmps1",        .driver_data = (void *) DB8500_REGULATOR_VSMPS1, },
-	{ .name	= "db8500-vsmps2",        .driver_data = (void *) DB8500_REGULATOR_VSMPS2, },
-	{ .name	= "db8500-vsmps3",        .driver_data = (void *) DB8500_REGULATOR_VSMPS3, },
-	{ .name	= "db8500-vrf1",          .driver_data = (void *) DB8500_REGULATOR_VRF1, },
-	{ .name	= "db8500-sva-mmdsp",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSP, },
-	{ .name	= "db8500-sva-mmdsp-ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSPRET, },
-	{ .name	= "db8500-sva-pipe",      .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAPIPE, },
-	{ .name	= "db8500-sia-mmdsp",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSP, },
-	{ .name	= "db8500-sia-mmdsp-ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSPRET, },
-	{ .name	= "db8500-sia-pipe",      .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAPIPE, },
-	{ .name	= "db8500-sga",           .driver_data = (void *) DB8500_REGULATOR_SWITCH_SGA, },
-	{ .name	= "db8500-b2r2-mcde",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_B2R2_MCDE, },
-	{ .name	= "db8500-esram12",       .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12, },
-	{ .name	= "db8500-esram12-ret",   .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12RET, },
-	{ .name	= "db8500-esram34",       .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34, },
-	{ .name	= "db8500-esram34-ret",   .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34RET, },
+	{ .name	= "db8500_vape",          .driver_data = (void *) DB8500_REGULATOR_VAPE, },
+	{ .name	= "db8500_varm",          .driver_data = (void *) DB8500_REGULATOR_VARM, },
+	{ .name	= "db8500_vmodem",        .driver_data = (void *) DB8500_REGULATOR_VMODEM, },
+	{ .name	= "db8500_vpll",          .driver_data = (void *) DB8500_REGULATOR_VPLL, },
+	{ .name	= "db8500_vsmps1",        .driver_data = (void *) DB8500_REGULATOR_VSMPS1, },
+	{ .name	= "db8500_vsmps2",        .driver_data = (void *) DB8500_REGULATOR_VSMPS2, },
+	{ .name	= "db8500_vsmps3",        .driver_data = (void *) DB8500_REGULATOR_VSMPS3, },
+	{ .name	= "db8500_vrf1",          .driver_data = (void *) DB8500_REGULATOR_VRF1, },
+	{ .name	= "db8500_sva_mmdsp",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSP, },
+	{ .name	= "db8500_sva_mmdsp_ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSPRET, },
+	{ .name	= "db8500_sva_pipe",      .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAPIPE, },
+	{ .name	= "db8500_sia_mmdsp",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSP, },
+	{ .name	= "db8500_sia_mmdsp_ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSPRET, },
+	{ .name	= "db8500_sia_pipe",      .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAPIPE, },
+	{ .name	= "db8500_sga",           .driver_data = (void *) DB8500_REGULATOR_SWITCH_SGA, },
+	{ .name	= "db8500_b2r2_mcde",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_B2R2_MCDE, },
+	{ .name	= "db8500_esram12",       .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12, },
+	{ .name	= "db8500_esram12_ret",   .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12RET, },
+	{ .name	= "db8500_esram34",       .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34, },
+	{ .name	= "db8500_esram34_ret",   .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34RET, },
 };
 
 static __devinit int
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 10/22] ARM: ux500: Disable platform setup of the ab8500 when DT is enabled
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (8 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 09/22] regulator: Change db8500-prcmu " Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  4:47 ` [PATCH 11/22] ARM: ux500: Only initialise STE's UIBs on boards which support them Lee Jones
                   ` (11 subsequent siblings)
  21 siblings, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

The final piece of the ab8500 puzzle. Here we prevent any of the ab8500-*
drivers from being registered from platform code when Device Tree is
enabled, as we expect DT do probe each of these individually. We also
provide the relevant compatible strings, so that DT knows which nodes
it needs to pay attention to during population.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c |    7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index aecb0e1..ea6082a 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -680,7 +680,6 @@ static struct platform_device *snowball_platform_devs[] __initdata = {
 static struct platform_device *snowball_of_platform_devs[] __initdata = {
 	&snowball_led_dev,
 	&snowball_key_dev,
-	&ab8500_device,
 };
 
 static void __init mop500_init_machine(void)
@@ -841,6 +840,9 @@ struct of_dev_auxdata u8500_auxdata_lookup[] __initdata = {
 static const struct of_device_id u8500_local_bus_nodes[] = {
 	/* only create devices below soc node */
 	{ .compatible = "stericsson,db8500", },
+	{ .compatible = "stericsson,db8500-prcmu", },
+	{ .compatible = "stericsson,ab8500", },
+	{ .compatible = "stericsson,ab8500-regulator", },
 	{ .compatible = "simple-bus"},
 	{ },
 };
@@ -876,7 +878,6 @@ static void __init u8500_init_machine(void)
 				ARRAY_SIZE(mop500_platform_devs));
 
 		mop500_sdi_init(parent);
-
 		i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);
 		i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
 		i2c_register_board_info(2, mop500_i2c2_devices,
@@ -888,7 +889,7 @@ static void __init u8500_init_machine(void)
 		 *   snowball_led_dev   = todo
 		 *   snowball_key_dev   = todo
 		 *   snowball_sbnet_dev = done
-		 *   ab8500_device      = todo
+		 *   ab8500_device      = done
 		 */
 		platform_add_devices(snowball_of_platform_devs,
 				ARRAY_SIZE(snowball_of_platform_devs));
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 11/22] ARM: ux500: Only initialise STE's UIBs on boards which support them
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (9 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 10/22] ARM: ux500: Disable platform setup of the ab8500 when DT is enabled Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  4:47 ` [PATCH 12/22] ARM: ux500: Apply db8500-prcmu regulator information to db8500 Device Tree Lee Jones
                   ` (10 subsequent siblings)
  21 siblings, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

ST-Ericsson uses User Interface Boards to extend functionality of
some of their development boards. However, these aren't compatible
with all the supported boards found in Mainline (Snowball for
instance). This patch ensures that the UIBs are only probed on
boards which can actually support them. This in turn saves lots of
unnecessary error messages normally found in Snowball's boot log.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-uib.c |    4 +---
 arch/arm/mach-ux500/board-mop500.c     |    8 ++++++++
 arch/arm/mach-ux500/board-mop500.h     |    1 +
 3 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-uib.c b/arch/arm/mach-ux500/board-mop500-uib.c
index b29a788..1f47d96 100644
--- a/arch/arm/mach-ux500/board-mop500-uib.c
+++ b/arch/arm/mach-ux500/board-mop500-uib.c
@@ -96,7 +96,7 @@ static void __init __mop500_uib_init(struct uib *uib, const char *why)
 /*
  * Detect the UIB attached based on the presence or absence of i2c devices.
  */
-static int __init mop500_uib_init(void)
+int __init mop500_uib_init(void)
 {
 	struct uib *uib = mop500_uib;
 	struct i2c_adapter *i2c0;
@@ -131,5 +131,3 @@ static int __init mop500_uib_init(void)
 
 	return 0;
 }
-
-module_init(mop500_uib_init);
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index ea6082a..6b3fef5 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -716,6 +716,8 @@ static void __init mop500_init_machine(void)
 
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
+
+	mop500_uib_init();
 }
 
 static void __init snowball_init_machine(void)
@@ -780,6 +782,8 @@ static void __init hrefv60_init_machine(void)
 
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
+
+	mop500_uib_init();
 }
 
 MACHINE_START(U8500, "ST-Ericsson MOP500 platform")
@@ -883,6 +887,8 @@ static void __init u8500_init_machine(void)
 		i2c_register_board_info(2, mop500_i2c2_devices,
 					ARRAY_SIZE(mop500_i2c2_devices));
 
+		mop500_uib_init();
+
 	} else if (of_machine_is_compatible("calaosystems,snowball-a9500")) {
 		/*
 		 * Devices to be DT:ed:
@@ -913,6 +919,8 @@ static void __init u8500_init_machine(void)
 		i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
 		i2c_register_board_info(2, mop500_i2c2_devices,
 					ARRAY_SIZE(mop500_i2c2_devices));
+
+		mop500_uib_init();
 	}
 	mop500_i2c_init(parent);
 
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 3be0cb8..2f87b25 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -89,6 +89,7 @@ void __init mop500_pinmaps_init(void);
 void __init snowball_pinmaps_init(void);
 void __init hrefv60_pinmaps_init(void);
 
+int __init mop500_uib_init(void);
 void mop500_uib_i2c_add(int busnum, struct i2c_board_info *info,
 		unsigned n);
 
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 12/22] ARM: ux500: Apply db8500-prcmu regulator information to db8500 Device Tree
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (10 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 11/22] ARM: ux500: Only initialise STE's UIBs on boards which support them Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  4:47 ` [PATCH 13/22] ARM: ux500: Allow PRCMU regulator to be probed during a DT enabled boot Lee Jones
                   ` (9 subsequent siblings)
  21 siblings, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

Here we inform Device Tree of which regulators are provided by the db8500-
prcmu. This way we can reference some of their consumers directly from the
Device Tree e.g. SMSC911x Ethernet chip.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/boot/dts/db8500.dtsi |  107 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 107 insertions(+)

diff --git a/arch/arm/boot/dts/db8500.dtsi b/arch/arm/boot/dts/db8500.dtsi
index 7070000..646c80b 100644
--- a/arch/arm/boot/dts/db8500.dtsi
+++ b/arch/arm/boot/dts/db8500.dtsi
@@ -197,6 +197,113 @@
 				reg = <0x80157450 0xC>;
 			};
 
+			db8500-prcmu-regulators {
+				compatible = "stericsson,db8500-prcmu-regulator";
+
+				// DB8500_REGULATOR_VAPE
+				db8500_vape_reg: db8500_vape {
+					regulator-name = "db8500-vape";
+					regulator-always-on;
+				};
+
+				// DB8500_REGULATOR_VARM
+				db8500_varm_reg: db8500_varm {
+					regulator-name = "db8500-varm";
+				};
+
+				// DB8500_REGULATOR_VMODEM
+				db8500_vmodem_reg: db8500_vmodem {
+					regulator-name = "db8500-vmodem";
+				};
+
+				// DB8500_REGULATOR_VPLL
+				db8500_vpll_reg: db8500_vpll {
+					regulator-name = "db8500-vpll";
+				};
+
+				// DB8500_REGULATOR_VSMPS1
+				db8500_vsmps1_reg: db8500_vsmps1 {
+					regulator-name = "db8500-vsmps1";
+				};
+
+				// DB8500_REGULATOR_VSMPS2
+				db8500_vsmps2_reg: db8500_vsmps2 {
+					regulator-name = "db8500-vsmps2";
+				};
+
+				// DB8500_REGULATOR_VSMPS3
+				db8500_vsmps3_reg: db8500_vsmps3 {
+					regulator-name = "db8500-vsmps3";
+				};
+
+				// DB8500_REGULATOR_VRF1
+				db8500_vrf1_reg: db8500_vrf1 {
+					regulator-name = "db8500-vrf1";
+				};
+
+				// DB8500_REGULATOR_SWITCH_SVAMMDSP
+				db8500_sva_mmdsp_reg: db8500_sva_mmdsp {
+					regulator-name = "db8500-sva-mmdsp";
+				};
+
+				// DB8500_REGULATOR_SWITCH_SVAMMDSPRET
+				db8500_sva_mmdsp_ret_reg: db8500_sva_mmdsp_ret {
+					regulator-name = "db8500-sva-mmdsp-ret";
+				};
+
+				// DB8500_REGULATOR_SWITCH_SVAPIPE
+				db8500_sva_pipe_reg: db8500_sva_pipe {
+					regulator-name = "db8500_sva_pipe";
+				};
+
+				// DB8500_REGULATOR_SWITCH_SIAMMDSP
+				db8500_sia_mmdsp_reg: db8500_sia_mmdsp {
+					regulator-name = "db8500_sia_mmdsp";
+				};
+
+				// DB8500_REGULATOR_SWITCH_SIAMMDSPRET
+				db8500_sia_mmdsp_ret_reg: db8500_sia_mmdsp_ret {
+					regulator-name = "db8500-sia-mmdsp-ret";
+				};
+
+				// DB8500_REGULATOR_SWITCH_SIAPIPE
+				db8500_sia_pipe_reg: db8500_sia_pipe {
+					regulator-name = "db8500-sia-pipe";
+				};
+
+				// DB8500_REGULATOR_SWITCH_SGA
+				db8500_sga_reg: db8500_sga {
+					regulator-name = "db8500-sga";
+					vin-supply = <&db8500_vape_reg>;
+				};
+
+				// DB8500_REGULATOR_SWITCH_B2R2_MCDE
+				db8500_b2r2_mcde_reg: db8500_b2r2_mcde {
+					regulator-name = "db8500-b2r2-mcde";
+					vin-supply = <&db8500_vape_reg>;
+				};
+
+				// DB8500_REGULATOR_SWITCH_ESRAM12
+				db8500_esram12_reg: db8500_esram12 {
+					regulator-name = "db8500-esram12";
+				};
+
+				// DB8500_REGULATOR_SWITCH_ESRAM12RET
+				db8500_esram12_ret_reg: db8500_esram12_ret {
+					regulator-name = "db8500-esram12-ret";
+				};
+
+				// DB8500_REGULATOR_SWITCH_ESRAM34
+				db8500_esram34_reg: db8500_esram34 {
+					regulator-name = "db8500-esram34";
+				};
+
+				// DB8500_REGULATOR_SWITCH_ESRAM34RET
+				db8500_esram34_ret_reg: db8500_esram34_ret {
+					regulator-name = "db8500-esram34-ret";
+				};
+			};
+
 			ab8500 at 5 {
 				compatible = "stericsson,ab8500";
 				reg = <5>; /* mailbox 5 is i2c */
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 13/22] ARM: ux500: Allow PRCMU regulator to be probed during a DT enabled boot
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (11 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 12/22] ARM: ux500: Apply db8500-prcmu regulator information to db8500 Device Tree Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  4:47 ` [PATCH 14/22] ARM: ux500: Provide regulator support for SMSC911x via Device Tree Lee Jones
                   ` (8 subsequent siblings)
  21 siblings, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

This patch adds the correct compatible string for use during Device Tree
population. Without it the DB8500 PRCMU regulators would be processed
when DT is enabled.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c |    1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 6b3fef5..353d381 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -845,6 +845,7 @@ static const struct of_device_id u8500_local_bus_nodes[] = {
 	/* only create devices below soc node */
 	{ .compatible = "stericsson,db8500", },
 	{ .compatible = "stericsson,db8500-prcmu", },
+	{ .compatible = "stericsson,db8500-prcmu-regulator", },
 	{ .compatible = "stericsson,ab8500", },
 	{ .compatible = "stericsson,ab8500-regulator", },
 	{ .compatible = "simple-bus"},
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 14/22] ARM: ux500: Provide regulator support for SMSC911x via Device Tree
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (12 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 13/22] ARM: ux500: Allow PRCMU regulator to be probed during a DT enabled boot Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  7:05   ` Linus Walleij
  2012-05-30  4:47 ` [PATCH 15/22] ARM: ux500: Add support for ab8500 regulators into the " Lee Jones
                   ` (7 subsequent siblings)
  21 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

This patch adds a fixed regulator for use by the SMSC911x Ethernet
chip driver into the db8500 Device Tree. It also references other
regulators required by the same device.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/boot/dts/snowball.dts   |   13 +++++++++++++
 arch/arm/configs/u8500_defconfig |    1 +
 drivers/mfd/db8500-prcmu.c       |    1 +
 3 files changed, 15 insertions(+)

diff --git a/arch/arm/boot/dts/snowball.dts b/arch/arm/boot/dts/snowball.dts
index 81ff557..d6c05ea 100644
--- a/arch/arm/boot/dts/snowball.dts
+++ b/arch/arm/boot/dts/snowball.dts
@@ -20,6 +20,16 @@
 		reg = <0x00000000 0x20000000>;
 	};
 
+	en_3v3_reg: en_3v3 {
+		compatible = "regulator-fixed";
+                regulator-name = "en-3v3-fixed-supply";
+                regulator-min-microvolt = <3300000>;
+                regulator-max-microvolt = <3300000>;
+                gpios = <&gpio0 26  0x4>; // 26
+                startup-delay-us = <5000>;
+                enable-active-high;
+	};
+
 	gpio_keys {
 		compatible = "gpio-keys";
 		#address-cells = <1>;
@@ -79,6 +89,9 @@
 				reg = <0 0x10000>;
 				interrupts = <12 0x1>;
 				interrupt-parent = <&gpio4>;
+				vdd33a-supply = <&en_3v3_reg>;
+				vddvario-supply = <&db8500_vape_reg>;
+
 
 				reg-shift = <1>;
 				reg-io-width = <2>;
diff --git a/arch/arm/configs/u8500_defconfig b/arch/arm/configs/u8500_defconfig
index 7e84f45..2d4f661 100644
--- a/arch/arm/configs/u8500_defconfig
+++ b/arch/arm/configs/u8500_defconfig
@@ -75,6 +75,7 @@ CONFIG_AB5500_CORE=y
 CONFIG_AB8500_CORE=y
 CONFIG_REGULATOR=y
 CONFIG_REGULATOR_AB8500=y
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
 # CONFIG_HID_SUPPORT is not set
 CONFIG_USB_GADGET=y
 CONFIG_AB8500_USB=y
diff --git a/drivers/mfd/db8500-prcmu.c b/drivers/mfd/db8500-prcmu.c
index 5be3248..74595e1 100644
--- a/drivers/mfd/db8500-prcmu.c
+++ b/drivers/mfd/db8500-prcmu.c
@@ -2734,6 +2734,7 @@ static struct regulator_consumer_supply db8500_vape_consumers[] = {
 	REGULATOR_SUPPLY("vcore", "uart2"),
 	REGULATOR_SUPPLY("v-ape", "nmk-ske-keypad.0"),
 	REGULATOR_SUPPLY("v-hsi", "ste_hsi.0"),
+	REGULATOR_SUPPLY("vddvario", "smsc911x.0"),
 };
 
 static struct regulator_consumer_supply db8500_vsmps2_consumers[] = {
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 15/22] ARM: ux500: Add support for ab8500 regulators into the Device Tree
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (13 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 14/22] ARM: ux500: Provide regulator support for SMSC911x via Device Tree Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  4:47 ` [PATCH 16/22] mfd: ab8500-gpadc: Enable IRQF_ONESHOT when requesting a threaded IRQ Lee Jones
                   ` (6 subsequent siblings)
  21 siblings, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

Here we supply the information required to setup regulators successfully
on Snowball and other db8500 variants which use the ab8500 regulators.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/boot/dts/db8500.dtsi  |   68 ++++++++++++++++++++++++++++++++++++++++
 arch/arm/boot/dts/snowball.dts |    2 ++
 2 files changed, 70 insertions(+)

diff --git a/arch/arm/boot/dts/db8500.dtsi b/arch/arm/boot/dts/db8500.dtsi
index 646c80b..1fa5546 100644
--- a/arch/arm/boot/dts/db8500.dtsi
+++ b/arch/arm/boot/dts/db8500.dtsi
@@ -308,6 +308,74 @@
 				compatible = "stericsson,ab8500";
 				reg = <5>; /* mailbox 5 is i2c */
 				interrupts = <0 40 0x4>;
+
+				ab8500-regulators {
+					compatible = "stericsson,ab8500-regulator";
+
+					// supplies to the display/camera
+					ab8500_ldo_aux1_reg: ab8500_ldo_aux1 {
+						regulator-name = "V-DISPLAY";
+						regulator-min-microvolt = <2500000>;
+						regulator-max-microvolt = <2900000>;
+						regulator-boot-on;
+						/* BUG: If turned off MMC will be affected. */
+						regulator-always-on;
+					};
+
+					// supplies to the on-board eMMC
+					ab8500_ldo_aux2_reg: ab8500_ldo_aux2 {
+						regulator-name = "V-eMMC1";
+						regulator-min-microvolt = <1100000>;
+						regulator-max-microvolt = <3300000>;
+					};
+
+					// supply for VAUX3; SDcard slots
+					ab8500_ldo_aux3_reg: ab8500_ldo_aux3 {
+						regulator-name = "V-MMC-SD";
+						regulator-min-microvolt = <1100000>;
+						regulator-max-microvolt = <3300000>;
+					};
+
+					// supply for v-intcore12; VINTCORE12 LDO
+					ab8500_ldo_initcore_reg: ab8500_ldo_initcore {
+						regulator-name = "V-INTCORE";
+					};
+
+					// supply for tvout; gpadc; TVOUT LDO
+					ab8500_ldo_tvout_reg: ab8500_ldo_tvout {
+						regulator-name = "V-TVOUT";
+					};
+
+					// supply for ab8500-usb; USB LDO
+					ab8500_ldo_usb_reg: ab8500_ldo_usb {
+						regulator-name = "dummy";
+					};
+
+					// supply for ab8500-vaudio; VAUDIO LDO
+					ab8500_ldo_audio_reg: ab8500_ldo_audio {
+						regulator-name = "V-AUD";
+					};
+
+					// supply for v-anamic1 VAMic1-LDO
+					ab8500_ldo_anamic1_reg: ab8500_ldo_anamic1 {
+						regulator-name = "V-AMIC1";
+					};
+
+					// supply for v-amic2; VAMIC2 LDO; reuse constants for AMIC1
+					ab8500_ldo_amamic2_reg: ab8500_ldo_amamic2 {
+						regulator-name = "V-AMIC2";
+					};
+
+					// supply for v-dmic; VDMIC LDO
+					ab8500_ldo_dmic_reg: ab8500_ldo_dmic {
+						regulator-name = "V-DMIC";
+					};
+
+					// supply for U8500 CSI/DSI; VANA LDO
+					ab8500_ldo_ana_reg: ab8500_ldo_ana {
+						regulator-name = "V-CSI/DSI";
+					};
+				};
 			};
 		};
 
diff --git a/arch/arm/boot/dts/snowball.dts b/arch/arm/boot/dts/snowball.dts
index d6c05ea..ec3c339 100644
--- a/arch/arm/boot/dts/snowball.dts
+++ b/arch/arm/boot/dts/snowball.dts
@@ -103,11 +103,13 @@
 
 		sdi at 80126000 {
 			status = "enabled";
+			vmmc-supply = <&ab8500_ldo_aux3_reg>;
 			cd-gpios  = <&gpio6 26 0x4>; // 218
 		};
 
 		sdi at 80114000 {
 			status = "enabled";
+			vmmc-supply = <&ab8500_ldo_aux2_reg>;
 		};
 
 		uart at 80120000 {
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 16/22] mfd: ab8500-gpadc: Enable IRQF_ONESHOT when requesting a threaded IRQ
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (14 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 15/22] ARM: ux500: Add support for ab8500 regulators into the " Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  7:10   ` Linus Walleij
  2012-06-29 13:21   ` Samuel Ortiz
  2012-05-30  4:47 ` [PATCH 17/22] rtc: ab8500-rtc: " Lee Jones
                   ` (5 subsequent siblings)
  21 siblings, 2 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

The kernel now forces IRQs to be ONESHOT if no IRQ handler is passed.

Cc: Samuel Ortiz <sameo@linux.intel.com>
Cc: linux-kernel at vger.kernel.org
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 drivers/mfd/ab8500-gpadc.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/mfd/ab8500-gpadc.c b/drivers/mfd/ab8500-gpadc.c
index c39fc71..358d502 100644
--- a/drivers/mfd/ab8500-gpadc.c
+++ b/drivers/mfd/ab8500-gpadc.c
@@ -599,7 +599,8 @@ static int __devinit ab8500_gpadc_probe(struct platform_device *pdev)
 	/* Register interrupt  - SwAdcComplete */
 	ret = request_threaded_irq(gpadc->irq, NULL,
 		ab8500_bm_gpswadcconvend_handler,
-		IRQF_NO_SUSPEND | IRQF_SHARED, "ab8500-gpadc", gpadc);
+		IRQF_ONESHOT | IRQF_NO_SUSPEND | IRQF_SHARED,
+				"ab8500-gpadc", gpadc);
 	if (ret < 0) {
 		dev_err(gpadc->dev, "Failed to register interrupt, irq: %d\n",
 			gpadc->irq);
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 17/22] rtc: ab8500-rtc: IRQF_ONESHOT when requesting a threaded IRQ
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (15 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 16/22] mfd: ab8500-gpadc: Enable IRQF_ONESHOT when requesting a threaded IRQ Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  7:11   ` [rtc-linux] " Linus Walleij
  2012-05-30  4:47 ` [PATCH 18/22] mfd: Remove redundant Kconfig entry Lee Jones
                   ` (4 subsequent siblings)
  21 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

The kernel now forces IRQs to be ONESHOT if no IRQ handler is passed.

Cc: Alessandro Zummo <a.zummo@towertech.it>
Cc: rtc-linux at googlegroups.com
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 drivers/rtc/rtc-ab8500.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/rtc/rtc-ab8500.c b/drivers/rtc/rtc-ab8500.c
index 4bcf9ca..b11a2ec 100644
--- a/drivers/rtc/rtc-ab8500.c
+++ b/drivers/rtc/rtc-ab8500.c
@@ -422,7 +422,7 @@ static int __devinit ab8500_rtc_probe(struct platform_device *pdev)
 	}
 
 	err = request_threaded_irq(irq, NULL, rtc_alarm_handler,
-		IRQF_NO_SUSPEND, "ab8500-rtc", rtc);
+		IRQF_NO_SUSPEND | IRQF_ONESHOT, "ab8500-rtc", rtc);
 	if (err < 0) {
 		rtc_device_unregister(rtc);
 		return err;
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 18/22] mfd: Remove redundant Kconfig entry
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (16 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 17/22] rtc: ab8500-rtc: " Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  7:15   ` Linus Walleij
  2012-06-29 13:24   ` Samuel Ortiz
  2012-05-30  4:47 ` [PATCH 19/22] net/smsc911x: Repair broken failure paths Lee Jones
                   ` (3 subsequent siblings)
  21 siblings, 2 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

During ab8500-core clean-up the Kconfig entry for AB8500_I2C_CORE
was left remnant. This patch simply removes it.

Cc: Samuel Ortiz <sameo@linux.intel.com>
Cc: linux-kernel at vger.kernel.org
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 drivers/mfd/Kconfig |   10 ----------
 1 file changed, 10 deletions(-)

diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
index 11a1b65..b697136 100644
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -660,16 +660,6 @@ config AB8500_CORE
 	  the irq_chip parts for handling the Mixed Signal chip events.
 	  This chip embeds various other multimedia funtionalities as well.
 
-config AB8500_I2C_CORE
-	bool "AB8500 register access via PRCMU I2C"
-	depends on AB8500_CORE && MFD_DB8500_PRCMU
-	default y
-	help
-	  This enables register access to the AB8500 chip via PRCMU I2C.
-	  The AB8500 chip can be accessed via SPI or I2C. On DB8500 hardware
-	  the I2C bus is connected to the Power Reset
-	  and Mangagement Unit, PRCMU.
-
 config AB8500_DEBUG
        bool "Enable debug info via debugfs"
        depends on AB8500_CORE && DEBUG_FS
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 19/22] net/smsc911x: Repair broken failure paths
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (17 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 18/22] mfd: Remove redundant Kconfig entry Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  7:16   ` Linus Walleij
  2012-05-30  4:47 ` [PATCH 20/22] pinctrl-nomadik: Allow Device Tree driver probing Lee Jones
                   ` (2 subsequent siblings)
  21 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

Current failure paths attempt to free resources which we failed to request
and disable resources which we failed to enable ones. This leads to kernel
oops/panic. This patch does some simple re-ordering to prevent this from
happening.

Cc: netdev at vger.kernel.org
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 drivers/net/ethernet/smsc/smsc911x.c |    7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/smsc/smsc911x.c b/drivers/net/ethernet/smsc/smsc911x.c
index dab9c6f..1466e5d 100644
--- a/drivers/net/ethernet/smsc/smsc911x.c
+++ b/drivers/net/ethernet/smsc/smsc911x.c
@@ -2390,11 +2390,11 @@ static int __devinit smsc911x_drv_probe(struct platform_device *pdev)
 
 	retval = smsc911x_request_resources(pdev);
 	if (retval)
-		goto out_return_resources;
+		goto out_request_resources_fail;
 
 	retval = smsc911x_enable_resources(pdev);
 	if (retval)
-		goto out_disable_resources;
+		goto out_enable_resources_fail;
 
 	if (pdata->ioaddr == NULL) {
 		SMSC_WARN(pdata, probe, "Error smsc911x base address invalid");
@@ -2501,8 +2501,9 @@ out_free_irq:
 	free_irq(dev->irq, dev);
 out_disable_resources:
 	(void)smsc911x_disable_resources(pdev);
-out_return_resources:
+out_enable_resources_fail:
 	smsc911x_free_resources(pdev);
+out_request_resources_fail:
 	platform_set_drvdata(pdev, NULL);
 	iounmap(pdata->ioaddr);
 	free_netdev(dev);
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 20/22] pinctrl-nomadik: Allow Device Tree driver probing
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (18 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 19/22] net/smsc911x: Repair broken failure paths Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  7:18   ` Linus Walleij
  2012-05-30  4:47 ` [PATCH 21/22] ARM: ux500: Enable probing of pinctrl through Device Tree Lee Jones
  2012-05-30  4:47 ` [PATCH 22/22] mfd: Enable DT probing of the DB8500 PRCMU Lee Jones
  21 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

The Nomadik GPIO controller now relies on Nomadik pinctrl, however
the pinctrl driver is not currently started by any ux500 platform.
This is requred or GPIOs do not work at all.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 drivers/pinctrl/pinctrl-nomadik.c |   20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/drivers/pinctrl/pinctrl-nomadik.c b/drivers/pinctrl/pinctrl-nomadik.c
index b8e01c3..b26395d 100644
--- a/drivers/pinctrl/pinctrl-nomadik.c
+++ b/drivers/pinctrl/pinctrl-nomadik.c
@@ -24,6 +24,7 @@
 #include <linux/irq.h>
 #include <linux/irqdomain.h>
 #include <linux/slab.h>
+#include <linux/of_device.h>
 #include <linux/pinctrl/pinctrl.h>
 #include <linux/pinctrl/pinmux.h>
 #include <linux/pinctrl/pinconf.h>
@@ -1688,18 +1689,34 @@ static struct pinctrl_desc nmk_pinctrl_desc = {
 	.owner = THIS_MODULE,
 };
 
+static const struct of_device_id nmk_pinctrl_match[] = {
+	{
+		.compatible = "stericsson,nmk_pinctrl",
+		.data = (void *)PINCTRL_NMK_DB8500,
+	},
+	{},
+};
+
 static int __devinit nmk_pinctrl_probe(struct platform_device *pdev)
 {
 	const struct platform_device_id *platid = platform_get_device_id(pdev);
+	struct device_node *np = pdev->dev.of_node;
 	struct nmk_pinctrl *npct;
+	unsigned int version = 0;
 	int i;
 
 	npct = devm_kzalloc(&pdev->dev, sizeof(*npct), GFP_KERNEL);
 	if (!npct)
 		return -ENOMEM;
 
+	if (platid)
+		version = platid->driver_data;
+	else if (np)
+		version = (unsigned int)
+			of_match_device(nmk_pinctrl_match, &pdev->dev)->data;
+
 	/* Poke in other ASIC variants here */
-	if (platid->driver_data == PINCTRL_NMK_DB8500)
+	if (version == PINCTRL_NMK_DB8500)
 		nmk_pinctrl_db8500_init(&npct->soc);
 
 	/*
@@ -1758,6 +1775,7 @@ static struct platform_driver nmk_pinctrl_driver = {
 	.driver = {
 		.owner = THIS_MODULE,
 		.name = "pinctrl-nomadik",
+		.of_match_table = nmk_pinctrl_match,
 	},
 	.probe = nmk_pinctrl_probe,
 	.id_table = nmk_pinctrl_id,
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 21/22] ARM: ux500: Enable probing of pinctrl through Device Tree
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (19 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 20/22] pinctrl-nomadik: Allow Device Tree driver probing Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  7:18   ` Linus Walleij
  2012-05-30  4:47 ` [PATCH 22/22] mfd: Enable DT probing of the DB8500 PRCMU Lee Jones
  21 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

The Nomadik GPIO controller now relies on Nomadik pinctrl, however
the pinctrl driver is not currently started by any ux500 platform.
This is requred or GPIOs do not work at all.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/boot/dts/db8500.dtsi |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/arch/arm/boot/dts/db8500.dtsi b/arch/arm/boot/dts/db8500.dtsi
index 1fa5546..4ad5160 100644
--- a/arch/arm/boot/dts/db8500.dtsi
+++ b/arch/arm/boot/dts/db8500.dtsi
@@ -170,6 +170,10 @@
 			gpio-bank = <8>;
 		};
 
+		pinctrl {
+			compatible = "stericsson,nmk_pinctrl";
+		};
+
 		usb at a03e0000 {
 			compatible = "stericsson,db8500-musb",
 				"mentor,musb";
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 22/22] mfd: Enable DT probing of the DB8500 PRCMU
  2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
                   ` (20 preceding siblings ...)
  2012-05-30  4:47 ` [PATCH 21/22] ARM: ux500: Enable probing of pinctrl through Device Tree Lee Jones
@ 2012-05-30  4:47 ` Lee Jones
  2012-05-30  7:19   ` Linus Walleij
  21 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-05-30  4:47 UTC (permalink / raw)
  To: linux-arm-kernel

This patch adds the correct compatible string for use during Device Tree
population. Without it the DB8500 PRCMU will not be probed.

Cc: Samuel Ortiz <sameo@linux.intel.com>
Cc: linux-kernel at vger.kernel.org
Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 drivers/mfd/db8500-prcmu.c |    5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/mfd/db8500-prcmu.c b/drivers/mfd/db8500-prcmu.c
index 74595e1..01f01f3 100644
--- a/drivers/mfd/db8500-prcmu.c
+++ b/drivers/mfd/db8500-prcmu.c
@@ -2994,11 +2994,16 @@ static int __init db8500_prcmu_probe(struct platform_device *pdev)
 no_irq_return:
 	return err;
 }
+static const struct of_device_id db8500_prcmu_match[] = {
+	{ .compatible = "stericsson,db8500-prcmu"},
+	{ },
+};
 
 static struct platform_driver db8500_prcmu_driver = {
 	.driver = {
 		.name = "db8500-prcmu",
 		.owner = THIS_MODULE,
+		.of_match_table = db8500_prcmu_match,
 	},
 };
 
-- 
1.7.9.5

^ permalink raw reply related	[flat|nested] 73+ messages in thread

* [PATCH 04/22] ARM: ux500: Remove DB8500 PRCMU platform registration when DT is enabled
  2012-05-30  4:47 ` [PATCH 04/22] ARM: ux500: Remove DB8500 PRCMU platform " Lee Jones
@ 2012-05-30  6:48   ` Linus Walleij
  0 siblings, 0 replies; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  6:48 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> Now the DB8500 has Device Tree support it will be probed when the DT
> is parsed, rendering the requirement for platform registration void.
> This patch removes DB8500 PRCMU platform registration.
>
> Signed-off-by: Lee Jones <lee.jones@linaro.org>

Acked-by: Linus Walleij <linus.walleij@linaro.org>

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30  4:47 ` [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree Lee Jones
@ 2012-05-30  6:58   ` Linus Walleij
  2012-05-30 10:03     ` Mark Brown
  2012-05-31  1:40     ` Linus Walleij
  2012-06-01 14:32   ` Mark Brown
  1 sibling, 2 replies; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  6:58 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> The 'name' field in 'struct of_regulator_match' expects to match with
> its corresponding regulator device node in the Device Tree. This patch
> renames each of the regulators in the ab8500 regulator driver so this
> is true.

OK...

> ?static struct of_regulator_match ab8500_regulator_matches[] = {
> - ? ? ? { .name = "LDO-AUX1", ? ?.driver_data = (void *) AB8500_LDO_AUX1, },
> - ? ? ? { .name = "LDO-AUX2", ? ?.driver_data = (void *) AB8500_LDO_AUX2, },
> - ? ? ? { .name = "LDO-AUX3", ? ?.driver_data = (void *) AB8500_LDO_AUX3, },
> - ? ? ? { .name = "LDO-INTCORE", .driver_data = (void *) AB8500_LDO_INTCORE, },
> - ? ? ? { .name = "LDO-TVOUT", ? .driver_data = (void *) AB8500_LDO_TVOUT, },
> - ? ? ? { .name = "LDO-USB", ? ? .driver_data = (void *) AB8500_LDO_USB, },
> - ? ? ? { .name = "LDO-AUDIO", ? .driver_data = (void *) AB8500_LDO_AUDIO, },
> - ? ? ? { .name = "LDO-ANAMIC1", .driver_data = (void *) AB8500_LDO_ANAMIC1, },
> - ? ? ? { .name = "LDO-ANAMIC2", .driver_data = (void *) AB8500_LDO_ANAMIC2, },
> - ? ? ? { .name = "LDO-DMIC", ? ?.driver_data = (void *) AB8500_LDO_DMIC, },
> - ? ? ? { .name = "LDO-ANA", ? ? .driver_data = (void *) AB8500_LDO_ANA, },
> + ? ? ? { .name = "ab8500_ldo_aux1", ? ?.driver_data = (void *) AB8500_LDO_AUX1, },
> + ? ? ? { .name = "ab8500_ldo_aux2", ? ?.driver_data = (void *) AB8500_LDO_AUX2, },
> + ? ? ? { .name = "ab8500_ldo_aux3", ? ?.driver_data = (void *) AB8500_LDO_AUX3, },
> + ? ? ? { .name = "ab8500_ldo_intcore", .driver_data = (void *) AB8500_LDO_INTCORE, },
> + ? ? ? { .name = "ab8500_ldo_tvout", ? .driver_data = (void *) AB8500_LDO_TVOUT, },
> + ? ? ? { .name = "ab8500_ldo_usb", ? ? .driver_data = (void *) AB8500_LDO_USB, },
> + ? ? ? { .name = "ab8500_ldo_audio", ? .driver_data = (void *) AB8500_LDO_AUDIO, },
> + ? ? ? { .name = "ab8500_ldo_anamic1", .driver_data = (void *) AB8500_LDO_ANAMIC1, },
> + ? ? ? { .name = "ab8500_ldo_amamic2", .driver_data = (void *) AB8500_LDO_ANAMIC2, },
> + ? ? ? { .name = "ab8500_ldo_dmic", ? ?.driver_data = (void *) AB8500_LDO_DMIC, },
> + ? ? ? { .name = "ab8500_ldo_ana", ? ? .driver_data = (void *) AB8500_LDO_ANA, },
> ?};

So why is the device tree going to use these lowercase names etc?
I guess there is a rationale...

Anyway: the name is used in more parts of the file, so please change
it everywhere if you change it.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-05-30  4:47 ` [PATCH 09/22] regulator: Change db8500-prcmu " Lee Jones
@ 2012-05-30  7:00   ` Linus Walleij
  2012-06-05 10:24   ` Lee Jones
  1 sibling, 0 replies; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  7:00 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> ?static struct of_regulator_match db8500_regulator_matches[] = {
> - ? ? ? { .name = "db8500-vape", ? ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VAPE, },
> - ? ? ? { .name = "db8500-varm", ? ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VARM, },
> - ? ? ? { .name = "db8500-vmodem", ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VMODEM, },
> - ? ? ? { .name = "db8500-vpll", ? ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VPLL, },
> - ? ? ? { .name = "db8500-vsmps1", ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VSMPS1, },
> - ? ? ? { .name = "db8500-vsmps2", ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VSMPS2, },
> - ? ? ? { .name = "db8500-vsmps3", ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VSMPS3, },
> - ? ? ? { .name = "db8500-vrf1", ? ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VRF1, },
> - ? ? ? { .name = "db8500-sva-mmdsp", ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSP, },
> - ? ? ? { .name = "db8500-sva-mmdsp-ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSPRET, },
> - ? ? ? { .name = "db8500-sva-pipe", ? ? ?.driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAPIPE, },
> - ? ? ? { .name = "db8500-sia-mmdsp", ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSP, },
> - ? ? ? { .name = "db8500-sia-mmdsp-ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSPRET, },
> - ? ? ? { .name = "db8500-sia-pipe", ? ? ?.driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAPIPE, },
> - ? ? ? { .name = "db8500-sga", ? ? ? ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_SGA, },
> - ? ? ? { .name = "db8500-b2r2-mcde", ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_B2R2_MCDE, },
> - ? ? ? { .name = "db8500-esram12", ? ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12, },
> - ? ? ? { .name = "db8500-esram12-ret", ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12RET, },
> - ? ? ? { .name = "db8500-esram34", ? ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34, },
> - ? ? ? { .name = "db8500-esram34-ret", ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34RET, },
> + ? ? ? { .name = "db8500_vape", ? ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VAPE, },
> + ? ? ? { .name = "db8500_varm", ? ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VARM, },
> + ? ? ? { .name = "db8500_vmodem", ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VMODEM, },
> + ? ? ? { .name = "db8500_vpll", ? ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VPLL, },
> + ? ? ? { .name = "db8500_vsmps1", ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VSMPS1, },
> + ? ? ? { .name = "db8500_vsmps2", ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VSMPS2, },
> + ? ? ? { .name = "db8500_vsmps3", ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VSMPS3, },
> + ? ? ? { .name = "db8500_vrf1", ? ? ? ? ?.driver_data = (void *) DB8500_REGULATOR_VRF1, },
> + ? ? ? { .name = "db8500_sva_mmdsp", ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSP, },
> + ? ? ? { .name = "db8500_sva_mmdsp_ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSPRET, },
> + ? ? ? { .name = "db8500_sva_pipe", ? ? ?.driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAPIPE, },
> + ? ? ? { .name = "db8500_sia_mmdsp", ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSP, },
> + ? ? ? { .name = "db8500_sia_mmdsp_ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSPRET, },
> + ? ? ? { .name = "db8500_sia_pipe", ? ? ?.driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAPIPE, },
> + ? ? ? { .name = "db8500_sga", ? ? ? ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_SGA, },
> + ? ? ? { .name = "db8500_b2r2_mcde", ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_B2R2_MCDE, },
> + ? ? ? { .name = "db8500_esram12", ? ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12, },
> + ? ? ? { .name = "db8500_esram12_ret", ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12RET, },
> + ? ? ? { .name = "db8500_esram34", ? ? ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34, },
> + ? ? ? { .name = "db8500_esram34_ret", ? .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34RET, },

So again what is the rationale for changing the names, and
again the strings are in several places in this file.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 14/22] ARM: ux500: Provide regulator support for SMSC911x via Device Tree
  2012-05-30  4:47 ` [PATCH 14/22] ARM: ux500: Provide regulator support for SMSC911x via Device Tree Lee Jones
@ 2012-05-30  7:05   ` Linus Walleij
  0 siblings, 0 replies; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  7:05 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> This patch adds a fixed regulator for use by the SMSC911x Ethernet
> chip driver into the db8500 Device Tree. It also references other
> regulators required by the same device.
>
> Signed-off-by: Lee Jones <lee.jones@linaro.org>

Acked-by: Linus Walleij <linus.walleij@linaro.org>

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 16/22] mfd: ab8500-gpadc: Enable IRQF_ONESHOT when requesting a threaded IRQ
  2012-05-30  4:47 ` [PATCH 16/22] mfd: ab8500-gpadc: Enable IRQF_ONESHOT when requesting a threaded IRQ Lee Jones
@ 2012-05-30  7:10   ` Linus Walleij
  2012-06-29 13:21   ` Samuel Ortiz
  1 sibling, 0 replies; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  7:10 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> The kernel now forces IRQs to be ONESHOT if no IRQ handler is passed.
>
> Cc: Samuel Ortiz <sameo@linux.intel.com>
> Cc: linux-kernel at vger.kernel.org
> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> ---
> ?drivers/mfd/ab8500-gpadc.c | ? ?3 ++-
> ?1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mfd/ab8500-gpadc.c b/drivers/mfd/ab8500-gpadc.c
> index c39fc71..358d502 100644
> --- a/drivers/mfd/ab8500-gpadc.c
> +++ b/drivers/mfd/ab8500-gpadc.c
> @@ -599,7 +599,8 @@ static int __devinit ab8500_gpadc_probe(struct platform_device *pdev)
> ? ? ? ?/* Register interrupt ?- SwAdcComplete */
> ? ? ? ?ret = request_threaded_irq(gpadc->irq, NULL,
> ? ? ? ? ? ? ? ?ab8500_bm_gpswadcconvend_handler,
> - ? ? ? ? ? ? ? IRQF_NO_SUSPEND | IRQF_SHARED, "ab8500-gpadc", gpadc);
> + ? ? ? ? ? ? ? IRQF_ONESHOT | IRQF_NO_SUSPEND | IRQF_SHARED,
> + ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? "ab8500-gpadc", gpadc);

Looks correct to me I think this one should be ONESHOT anyway.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [rtc-linux] [PATCH 17/22] rtc: ab8500-rtc: IRQF_ONESHOT when requesting a threaded IRQ
  2012-05-30  4:47 ` [PATCH 17/22] rtc: ab8500-rtc: " Lee Jones
@ 2012-05-30  7:11   ` Linus Walleij
  0 siblings, 0 replies; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  7:11 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> The kernel now forces IRQs to be ONESHOT if no IRQ handler is passed.
>
> Cc: Alessandro Zummo <a.zummo@towertech.it>
> Cc: rtc-linux at googlegroups.com
> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> ---
> ?drivers/rtc/rtc-ab8500.c | ? ?2 +-
> ?1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/rtc/rtc-ab8500.c b/drivers/rtc/rtc-ab8500.c
> index 4bcf9ca..b11a2ec 100644
> --- a/drivers/rtc/rtc-ab8500.c
> +++ b/drivers/rtc/rtc-ab8500.c
> @@ -422,7 +422,7 @@ static int __devinit ab8500_rtc_probe(struct platform_device *pdev)
> ? ? ? ?}
>
> ? ? ? ?err = request_threaded_irq(irq, NULL, rtc_alarm_handler,
> - ? ? ? ? ? ? ? IRQF_NO_SUSPEND, "ab8500-rtc", rtc);
> + ? ? ? ? ? ? ? IRQF_NO_SUSPEND | IRQF_ONESHOT, "ab8500-rtc", rtc);
> ? ? ? ?if (err < 0) {
> ? ? ? ? ? ? ? ?rtc_device_unregister(rtc);
> ? ? ? ? ? ? ? ?return err;

Looks correct, Acked-by (also for the previous patch).

Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 18/22] mfd: Remove redundant Kconfig entry
  2012-05-30  4:47 ` [PATCH 18/22] mfd: Remove redundant Kconfig entry Lee Jones
@ 2012-05-30  7:15   ` Linus Walleij
  2012-05-30  7:37     ` Lee Jones
  2012-06-29 13:24   ` Samuel Ortiz
  1 sibling, 1 reply; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  7:15 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> During ab8500-core clean-up the Kconfig entry for AB8500_I2C_CORE
> was left remnant. This patch simply removes it.
>
> Cc: Samuel Ortiz <sameo@linux.intel.com>
> Cc: linux-kernel at vger.kernel.org
> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> ---
> ?drivers/mfd/Kconfig | ? 10 ----------
> ?1 file changed, 10 deletions(-)
>
> diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
> index 11a1b65..b697136 100644
> --- a/drivers/mfd/Kconfig
> +++ b/drivers/mfd/Kconfig
> @@ -660,16 +660,6 @@ config AB8500_CORE
> ? ? ? ? ?the irq_chip parts for handling the Mixed Signal chip events.
> ? ? ? ? ?This chip embeds various other multimedia funtionalities as well.
>
> -config AB8500_I2C_CORE
> - ? ? ? bool "AB8500 register access via PRCMU I2C"
> - ? ? ? depends on AB8500_CORE && MFD_DB8500_PRCMU

You need to move these dependencies under the AB8500_CORE config
entry instead.

> - ? ? ? default y

I wonder if in  arch/arm/mach-ux500/Kconfig MACH_MOP500 should
select this instead, all MOP500 children have this an *won't* work
without it.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 19/22] net/smsc911x: Repair broken failure paths
  2012-05-30  4:47 ` [PATCH 19/22] net/smsc911x: Repair broken failure paths Lee Jones
@ 2012-05-30  7:16   ` Linus Walleij
  2012-05-30 21:52     ` David Miller
  0 siblings, 1 reply; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  7:16 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> Current failure paths attempt to free resources which we failed to request
> and disable resources which we failed to enable ones. This leads to kernel
> oops/panic. This patch does some simple re-ordering to prevent this from
> happening.
>
> Cc: netdev at vger.kernel.org
> Signed-off-by: Lee Jones <lee.jones@linaro.org>

Acked-by: Linus Walleij <linus.walleij@linaro.org>

Thanks,
Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 20/22] pinctrl-nomadik: Allow Device Tree driver probing
  2012-05-30  4:47 ` [PATCH 20/22] pinctrl-nomadik: Allow Device Tree driver probing Lee Jones
@ 2012-05-30  7:18   ` Linus Walleij
  0 siblings, 0 replies; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  7:18 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> The Nomadik GPIO controller now relies on Nomadik pinctrl, however
> the pinctrl driver is not currently started by any ux500 platform.
> This is requred or GPIOs do not work at all.
>
> Signed-off-by: Lee Jones <lee.jones@linaro.org>

Acked-by: Linus Walleij <linus.walleij@linaro.org>

And it seems reasonable to push for the -rc:s since it's
a consequence of parallell development up til the merge window.

Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 21/22] ARM: ux500: Enable probing of pinctrl through Device Tree
  2012-05-30  4:47 ` [PATCH 21/22] ARM: ux500: Enable probing of pinctrl through Device Tree Lee Jones
@ 2012-05-30  7:18   ` Linus Walleij
  0 siblings, 0 replies; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  7:18 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> The Nomadik GPIO controller now relies on Nomadik pinctrl, however
> the pinctrl driver is not currently started by any ux500 platform.
> This is requred or GPIOs do not work at all.
>
> Signed-off-by: Lee Jones <lee.jones@linaro.org>

Acked-by: Linus Walleij <linus.walleij@linaro.org>

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 22/22] mfd: Enable DT probing of the DB8500 PRCMU
  2012-05-30  4:47 ` [PATCH 22/22] mfd: Enable DT probing of the DB8500 PRCMU Lee Jones
@ 2012-05-30  7:19   ` Linus Walleij
  0 siblings, 0 replies; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  7:19 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> This patch adds the correct compatible string for use during Device Tree
> population. Without it the DB8500 PRCMU will not be probed.
>
> Cc: Samuel Ortiz <sameo@linux.intel.com>
> Cc: linux-kernel at vger.kernel.org
> Signed-off-by: Lee Jones <lee.jones@linaro.org>

Acked-by: Linus Walleij <linus.walleij@linaro.org>

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 18/22] mfd: Remove redundant Kconfig entry
  2012-05-30  7:15   ` Linus Walleij
@ 2012-05-30  7:37     ` Lee Jones
  2012-05-30  7:43       ` Linus Walleij
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-05-30  7:37 UTC (permalink / raw)
  To: linux-arm-kernel

On 30/05/12 15:15, Linus Walleij wrote:
> On Wed, May 30, 2012 at 12:47 PM, Lee Jones<lee.jones@linaro.org>  wrote:
>
>> During ab8500-core clean-up the Kconfig entry for AB8500_I2C_CORE
>> was left remnant. This patch simply removes it.
>>
>> Cc: Samuel Ortiz<sameo@linux.intel.com>
>> Cc: linux-kernel at vger.kernel.org
>> Signed-off-by: Lee Jones<lee.jones@linaro.org>
>> ---
>>   drivers/mfd/Kconfig |   10 ----------
>>   1 file changed, 10 deletions(-)
>>
>> diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
>> index 11a1b65..b697136 100644
>> --- a/drivers/mfd/Kconfig
>> +++ b/drivers/mfd/Kconfig
>> @@ -660,16 +660,6 @@ config AB8500_CORE
>>           the irq_chip parts for handling the Mixed Signal chip events.
>>           This chip embeds various other multimedia funtionalities as well.
>>
>> -config AB8500_I2C_CORE
>> -       bool "AB8500 register access via PRCMU I2C"
>> -       depends on AB8500_CORE&&  MFD_DB8500_PRCMU
>
> You need to move these dependencies under the AB8500_CORE config
> entry instead.

Already done and upstreamed: 21f082a66177852365df0c955ecaef50fba9a691

>> -       default y
>
> I wonder if in  arch/arm/mach-ux500/Kconfig MACH_MOP500 should
> select this instead, all MOP500 children have this an *won't* work
> without it.

As described, I have already moved the dependency in the Kconfig file.

I guess what you've just mentioned is a separate patch (for another 
time). I'll stick it on my ever growing TODO.

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 18/22] mfd: Remove redundant Kconfig entry
  2012-05-30  7:37     ` Lee Jones
@ 2012-05-30  7:43       ` Linus Walleij
  0 siblings, 0 replies; 73+ messages in thread
From: Linus Walleij @ 2012-05-30  7:43 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 3:37 PM, Lee Jones <lee.jones@linaro.org> wrote:

>> You need to move these dependencies under the AB8500_CORE config
>> entry instead.
>
> Already done and upstreamed: 21f082a66177852365df0c955ecaef50fba9a691

Yes the PRCMU driver will select this one, I was more thinking if it shoul
select both but this will work.
Acked-by.

Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30  6:58   ` Linus Walleij
@ 2012-05-30 10:03     ` Mark Brown
  2012-05-30 11:40       ` Lee Jones
  2012-05-31  1:40     ` Linus Walleij
  1 sibling, 1 reply; 73+ messages in thread
From: Mark Brown @ 2012-05-30 10:03 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 02:58:44PM +0800, Linus Walleij wrote:
> On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:

> > + ? ? ? { .name = "ab8500_ldo_ana", ? ? .driver_data = (void *) AB8500_LDO_ANA, },

> So why is the device tree going to use these lowercase names etc?
> I guess there is a rationale...

If we are changing the names then not including the ab8500 bit would
seem more idiomatic - we've already worked out which chip this is by the
time we're looking here.

> Anyway: the name is used in more parts of the file, so please change
> it everywhere if you change it.

It's only used for a few debug prints AFAICT?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120530/dc26ede7/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30 10:03     ` Mark Brown
@ 2012-05-30 11:40       ` Lee Jones
  2012-05-30 12:15         ` Mark Brown
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-05-30 11:40 UTC (permalink / raw)
  To: linux-arm-kernel

On May 30, 2012 6:03 PM, "Mark Brown" <broonie@opensource.wolfsonmicro.com>
wrote:
>
> On Wed, May 30, 2012 at 02:58:44PM +0800, Linus Walleij wrote:
> > On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org>
wrote:
>
> > > +       { .name = "ab8500_ldo_ana",     .driver_data = (void *)
AB8500_LDO_ANA, },
>
> > So why is the device tree going to use these lowercase names etc?
> > I guess there is a rationale...
>
> If we are changing the names then not including the ab8500 bit would
> seem more idiomatic - we've already worked out which chip this is by the
> time we're looking here.
>
> > Anyway: the name is used in more parts of the file, so please change
> > it everywhere if you change it.
>
> It's only used for a few debug prints AFAICT?

No, Linus had the wrong end of the stick. I've just spoken to him in person.

Those are not the names of the regulators. They're the names of the Device
Tree nodes. The regulator names shall remain the same.

Sent from my Linux based mobile device.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120530/4aa7acc2/attachment-0001.html>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30 11:40       ` Lee Jones
@ 2012-05-30 12:15         ` Mark Brown
  2012-05-30 15:01           ` Lee Jones
  0 siblings, 1 reply; 73+ messages in thread
From: Mark Brown @ 2012-05-30 12:15 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 07:40:49PM +0800, Lee Jones wrote:
> On May 30, 2012 6:03 PM, "Mark Brown" <broonie@opensource.wolfsonmicro.com>

> > If we are changing the names then not including the ab8500 bit would
> > seem more idiomatic - we've already worked out which chip this is by the
> > time we're looking here.

> No, Linus had the wrong end of the stick. I've just spoken to him in person.

> Those are not the names of the regulators. They're the names of the Device
> Tree nodes. The regulator names shall remain the same.

Fair enough.  My point about the ab8500_ bit still stands though.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120530/b62cd32e/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30 12:15         ` Mark Brown
@ 2012-05-30 15:01           ` Lee Jones
  2012-05-30 15:11             ` Mark Brown
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-05-30 15:01 UTC (permalink / raw)
  To: linux-arm-kernel

On 30/05/12 20:15, Mark Brown wrote:
> On Wed, May 30, 2012 at 07:40:49PM +0800, Lee Jones wrote:
>> On May 30, 2012 6:03 PM, "Mark Brown"<broonie@opensource.wolfsonmicro.com>
>
>>> If we are changing the names then not including the ab8500 bit would
>>> seem more idiomatic - we've already worked out which chip this is by the
>>> time we're looking here.
>
>> No, Linus had the wrong end of the stick. I've just spoken to him in person.
>
>> Those are not the names of the regulators. They're the names of the Device
>> Tree nodes. The regulator names shall remain the same.
>
> Fair enough.  My point about the ab8500_ bit still stands though.

It's a Device Tree thing. I do it so we can easily see which regulator 
is driving which device(s).

I personally think:

	vin-supply = <&db8500_vape_reg>;
	vmmc-supply = <&ab8500_ldo_aux2_reg>;

Tells us so much more and is simpler to decrypt at a glance than 
something like:

	vin-supply = <&vape_reg>;
	vmmc-supply = <&ldo_aux2_reg>;

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30 15:01           ` Lee Jones
@ 2012-05-30 15:11             ` Mark Brown
  2012-05-30 15:22               ` Lee Jones
  0 siblings, 1 reply; 73+ messages in thread
From: Mark Brown @ 2012-05-30 15:11 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 11:01:06PM +0800, Lee Jones wrote:
> On 30/05/12 20:15, Mark Brown wrote:

> I personally think:

> 	vin-supply = <&db8500_vape_reg>;
> 	vmmc-supply = <&ab8500_ldo_aux2_reg>;

Oh, oops.  This is going to be fun when someone puts down two of the
same PMIC on a system...
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120530/4420c68d/attachment-0001.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30 15:11             ` Mark Brown
@ 2012-05-30 15:22               ` Lee Jones
  2012-05-30 16:41                 ` Mark Brown
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-05-30 15:22 UTC (permalink / raw)
  To: linux-arm-kernel

On 30/05/12 23:11, Mark Brown wrote:
> On Wed, May 30, 2012 at 11:01:06PM +0800, Lee Jones wrote:
>> On 30/05/12 20:15, Mark Brown wrote:
>
>> I personally think:
>
>> 	vin-supply =<&db8500_vape_reg>;
>> 	vmmc-supply =<&ab8500_ldo_aux2_reg>;
>
> Oh, oops.  This is going to be fun when someone puts down two of the
> same PMIC on a system...

What does that mean sorry?

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30 15:22               ` Lee Jones
@ 2012-05-30 16:41                 ` Mark Brown
  2012-05-31  0:42                   ` Lee Jones
  2012-06-01  4:36                   ` Lee Jones
  0 siblings, 2 replies; 73+ messages in thread
From: Mark Brown @ 2012-05-30 16:41 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 11:22:33PM +0800, Lee Jones wrote:
> On 30/05/12 23:11, Mark Brown wrote:

> >>	vin-supply =<&db8500_vape_reg>;
> >>	vmmc-supply =<&ab8500_ldo_aux2_reg>;

> >Oh, oops.  This is going to be fun when someone puts down two of the
> >same PMIC on a system...

> What does that mean sorry?

Lots of regulators are using this mechanism for identifying child nodes.
If the node name is also used as a handle by other things to reference
the regulator then if you have two PMICs of the same type DTC isn't
going to be able to figure out which node you mean.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120530/76db2164/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 19/22] net/smsc911x: Repair broken failure paths
  2012-05-30  7:16   ` Linus Walleij
@ 2012-05-30 21:52     ` David Miller
  0 siblings, 0 replies; 73+ messages in thread
From: David Miller @ 2012-05-30 21:52 UTC (permalink / raw)
  To: linux-arm-kernel

From: Linus Walleij <linus.walleij@linaro.org>
Date: Wed, 30 May 2012 15:16:39 +0800

> On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:
> 
>> Current failure paths attempt to free resources which we failed to request
>> and disable resources which we failed to enable ones. This leads to kernel
>> oops/panic. This patch does some simple re-ordering to prevent this from
>> happening.
>>
>> Cc: netdev at vger.kernel.org
>> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> 
> Acked-by: Linus Walleij <linus.walleij@linaro.org>

Applied, thanks.

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30 16:41                 ` Mark Brown
@ 2012-05-31  0:42                   ` Lee Jones
  2012-06-01  4:36                   ` Lee Jones
  1 sibling, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-05-31  0:42 UTC (permalink / raw)
  To: linux-arm-kernel

On 31/05/12 00:41, Mark Brown wrote:
> On Wed, May 30, 2012 at 11:22:33PM +0800, Lee Jones wrote:
>> On 30/05/12 23:11, Mark Brown wrote:
>
>>>> 	vin-supply =<&db8500_vape_reg>;
>>>> 	vmmc-supply =<&ab8500_ldo_aux2_reg>;
>
>>> Oh, oops.  This is going to be fun when someone puts down two of the
>>> same PMIC on a system...
>
>> What does that mean sorry?
>
> Lots of regulators are using this mechanism for identifying child nodes.
> If the node name is also used as a handle by other things to reference
> the regulator then if you have two PMICs of the same type DTC isn't
> going to be able to figure out which node you mean.

I haven't looked at the code yet, so I don't know the answer to this 
question, but; aren't they protected by the compatible string? If not, I 
think they should be. We shouldn't be parsing other platform's Device Trees.

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30  6:58   ` Linus Walleij
  2012-05-30 10:03     ` Mark Brown
@ 2012-05-31  1:40     ` Linus Walleij
  1 sibling, 0 replies; 73+ messages in thread
From: Linus Walleij @ 2012-05-31  1:40 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 2:58 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
> On Wed, May 30, 2012 at 12:47 PM, Lee Jones <lee.jones@linaro.org> wrote:
>
>> The 'name' field in 'struct of_regulator_match' expects to match with
>> its corresponding regulator device node in the Device Tree. This patch
>> renames each of the regulators in the ab8500 regulator driver so this
>> is true.
>
> Anyway: the name is used in more parts of the file, so please change
> it everywhere if you change it.

I was wrong on this, ignore that comment. I understand this now...
Acked-by: Linus Walleij <linus.walleij@linaro.org>

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30 16:41                 ` Mark Brown
  2012-05-31  0:42                   ` Lee Jones
@ 2012-06-01  4:36                   ` Lee Jones
  2012-06-01  8:48                     ` Mark Brown
  1 sibling, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-01  4:36 UTC (permalink / raw)
  To: linux-arm-kernel

On 31/05/12 00:41, Mark Brown wrote:
> On Wed, May 30, 2012 at 11:22:33PM +0800, Lee Jones wrote:
>> On 30/05/12 23:11, Mark Brown wrote:
>
>>>> 	vin-supply =<&db8500_vape_reg>;
>>>> 	vmmc-supply =<&ab8500_ldo_aux2_reg>;
>
>>> Oh, oops.  This is going to be fun when someone puts down two of the
>>> same PMIC on a system...
>
>> What does that mean sorry?
>
> Lots of regulators are using this mechanism for identifying child nodes.
> If the node name is also used as a handle by other things to reference
> the regulator then if you have two PMICs of the same type DTC isn't
> going to be able to figure out which node you mean.

Yes, so it doesn't look like this is an issue.

This:

> sdi at 80126000 {
>          vmmc-supply = <&ab8500_ldo_aux3_reg>;
> };

Is the same as, and will cause no more issues than:

> static struct regulator_consumer_supply ab8500_vaux3_consumers[] = {
>         REGULATOR_SUPPLY("vmmc", "sdi0"),
> };

... because only nodes which we care about (dictated by compatible 
declaration protections) will be parsed. So different platforms will not 
affect each other.

Kind regards,
Lee

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-06-01  4:36                   ` Lee Jones
@ 2012-06-01  8:48                     ` Mark Brown
  2012-06-05 10:31                       ` Lee Jones
  0 siblings, 1 reply; 73+ messages in thread
From: Mark Brown @ 2012-06-01  8:48 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Jun 01, 2012 at 12:36:28PM +0800, Lee Jones wrote:

> This:

> >sdi at 80126000 {
> >         vmmc-supply = <&ab8500_ldo_aux3_reg>;
> >};

> Is the same as, and will cause no more issues than:

> >static struct regulator_consumer_supply ab8500_vaux3_consumers[] = {
> >        REGULATOR_SUPPLY("vmmc", "sdi0"),
> >};

> ... because only nodes which we care about (dictated by compatible
> declaration protections) will be parsed. So different platforms will
> not affect each other.

What makes you say the two are equivalent?  The former is a reference
from a consumer device to a named regulator while the latter is a
reference from a regulator to a named consumer.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120601/da25c84f/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-05-30  4:47 ` [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree Lee Jones
  2012-05-30  6:58   ` Linus Walleij
@ 2012-06-01 14:32   ` Mark Brown
  1 sibling, 0 replies; 73+ messages in thread
From: Mark Brown @ 2012-06-01 14:32 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, May 30, 2012 at 12:47:26PM +0800, Lee Jones wrote:
> The 'name' field in 'struct of_regulator_match' expects to match with
> its corresponding regulator device node in the Device Tree. This patch
> renames each of the regulators in the ab8500 regulator driver so this
> is true.

Applied both, thanks.

> Cc: linux-kernel at vger.kernel.org

It's helpful to avoid inclding things like this (I mostly point this out
as you've got a much wider CC list so you clearly have some other system
that you're using to track where to send things).
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120601/66f2b964/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-05-30  4:47 ` [PATCH 09/22] regulator: Change db8500-prcmu " Lee Jones
  2012-05-30  7:00   ` Linus Walleij
@ 2012-06-05 10:24   ` Lee Jones
  2012-06-05 10:29     ` Mark Brown
  1 sibling, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-05 10:24 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Mark,

Are you sending this for -rc2?

Kind regards,
Lee

On 30/05/12 05:47, Lee Jones wrote:
> The 'name' field in 'struct of_regulator_match' expects to match with
> its corresponding regulator device node in the Device Tree. This patch
> renames each of the regulators in the db8500-prcum regulator driver so
> this is true.
>
> Cc: linux-kernel at vger.kernel.org
> Signed-off-by: Lee Jones<lee.jones@linaro.org>
> ---
>   drivers/regulator/db8500-prcmu.c |   40 +++++++++++++++++++-------------------
>   1 file changed, 20 insertions(+), 20 deletions(-)
>
> diff --git a/drivers/regulator/db8500-prcmu.c b/drivers/regulator/db8500-prcmu.c
> index 968f97f..9dbb491 100644
> --- a/drivers/regulator/db8500-prcmu.c
> +++ b/drivers/regulator/db8500-prcmu.c
> @@ -452,26 +452,26 @@ static __devinit int db8500_regulator_register(struct platform_device *pdev,
>   }
>
>   static struct of_regulator_match db8500_regulator_matches[] = {
> -	{ .name	= "db8500-vape",          .driver_data = (void *) DB8500_REGULATOR_VAPE, },
> -	{ .name	= "db8500-varm",          .driver_data = (void *) DB8500_REGULATOR_VARM, },
> -	{ .name	= "db8500-vmodem",        .driver_data = (void *) DB8500_REGULATOR_VMODEM, },
> -	{ .name	= "db8500-vpll",          .driver_data = (void *) DB8500_REGULATOR_VPLL, },
> -	{ .name	= "db8500-vsmps1",        .driver_data = (void *) DB8500_REGULATOR_VSMPS1, },
> -	{ .name	= "db8500-vsmps2",        .driver_data = (void *) DB8500_REGULATOR_VSMPS2, },
> -	{ .name	= "db8500-vsmps3",        .driver_data = (void *) DB8500_REGULATOR_VSMPS3, },
> -	{ .name	= "db8500-vrf1",          .driver_data = (void *) DB8500_REGULATOR_VRF1, },
> -	{ .name	= "db8500-sva-mmdsp",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSP, },
> -	{ .name	= "db8500-sva-mmdsp-ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSPRET, },
> -	{ .name	= "db8500-sva-pipe",      .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAPIPE, },
> -	{ .name	= "db8500-sia-mmdsp",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSP, },
> -	{ .name	= "db8500-sia-mmdsp-ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSPRET, },
> -	{ .name	= "db8500-sia-pipe",      .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAPIPE, },
> -	{ .name	= "db8500-sga",           .driver_data = (void *) DB8500_REGULATOR_SWITCH_SGA, },
> -	{ .name	= "db8500-b2r2-mcde",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_B2R2_MCDE, },
> -	{ .name	= "db8500-esram12",       .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12, },
> -	{ .name	= "db8500-esram12-ret",   .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12RET, },
> -	{ .name	= "db8500-esram34",       .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34, },
> -	{ .name	= "db8500-esram34-ret",   .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34RET, },
> +	{ .name	= "db8500_vape",          .driver_data = (void *) DB8500_REGULATOR_VAPE, },
> +	{ .name	= "db8500_varm",          .driver_data = (void *) DB8500_REGULATOR_VARM, },
> +	{ .name	= "db8500_vmodem",        .driver_data = (void *) DB8500_REGULATOR_VMODEM, },
> +	{ .name	= "db8500_vpll",          .driver_data = (void *) DB8500_REGULATOR_VPLL, },
> +	{ .name	= "db8500_vsmps1",        .driver_data = (void *) DB8500_REGULATOR_VSMPS1, },
> +	{ .name	= "db8500_vsmps2",        .driver_data = (void *) DB8500_REGULATOR_VSMPS2, },
> +	{ .name	= "db8500_vsmps3",        .driver_data = (void *) DB8500_REGULATOR_VSMPS3, },
> +	{ .name	= "db8500_vrf1",          .driver_data = (void *) DB8500_REGULATOR_VRF1, },
> +	{ .name	= "db8500_sva_mmdsp",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSP, },
> +	{ .name	= "db8500_sva_mmdsp_ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAMMDSPRET, },
> +	{ .name	= "db8500_sva_pipe",      .driver_data = (void *) DB8500_REGULATOR_SWITCH_SVAPIPE, },
> +	{ .name	= "db8500_sia_mmdsp",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSP, },
> +	{ .name	= "db8500_sia_mmdsp_ret", .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAMMDSPRET, },
> +	{ .name	= "db8500_sia_pipe",      .driver_data = (void *) DB8500_REGULATOR_SWITCH_SIAPIPE, },
> +	{ .name	= "db8500_sga",           .driver_data = (void *) DB8500_REGULATOR_SWITCH_SGA, },
> +	{ .name	= "db8500_b2r2_mcde",     .driver_data = (void *) DB8500_REGULATOR_SWITCH_B2R2_MCDE, },
> +	{ .name	= "db8500_esram12",       .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12, },
> +	{ .name	= "db8500_esram12_ret",   .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM12RET, },
> +	{ .name	= "db8500_esram34",       .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34, },
> +	{ .name	= "db8500_esram34_ret",   .driver_data = (void *) DB8500_REGULATOR_SWITCH_ESRAM34RET, },
>   };
>
>   static __devinit int


-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-05 10:24   ` Lee Jones
@ 2012-06-05 10:29     ` Mark Brown
  2012-06-05 10:34       ` Lee Jones
  0 siblings, 1 reply; 73+ messages in thread
From: Mark Brown @ 2012-06-05 10:29 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Jun 05, 2012 at 11:24:24AM +0100, Lee Jones wrote:

Don't top post!

> Are you sending this for -rc2?

No, nothing about this looks like an urgent fix?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120605/4da305ea/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-06-01  8:48                     ` Mark Brown
@ 2012-06-05 10:31                       ` Lee Jones
  2012-06-05 10:38                         ` Mark Brown
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-05 10:31 UTC (permalink / raw)
  To: linux-arm-kernel

On 01/06/12 09:48, Mark Brown wrote:
> On Fri, Jun 01, 2012 at 12:36:28PM +0800, Lee Jones wrote:
>
>> This:
>
>>> sdi at 80126000 {
>>>          vmmc-supply =<&ab8500_ldo_aux3_reg>;
>>> };
>
>> Is the same as, and will cause no more issues than:
>
>>> static struct regulator_consumer_supply ab8500_vaux3_consumers[] = {
>>>         REGULATOR_SUPPLY("vmmc", "sdi0"),
>>> };
>
>> ... because only nodes which we care about (dictated by compatible
>> declaration protections) will be parsed. So different platforms will
>> not affect each other.
>
> What makes you say the two are equivalent?  The former is a reference
> from a consumer device to a named regulator while the latter is a
> reference from a regulator to a named consumer.

I mean they both link regulator<->consumer and apply the name "vmmc" to 
the supply, or am I missing something / getting confused?

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-05 10:29     ` Mark Brown
@ 2012-06-05 10:34       ` Lee Jones
  2012-06-05 10:42         ` Mark Brown
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-05 10:34 UTC (permalink / raw)
  To: linux-arm-kernel

> Don't top post!

=:)

>> Are you sending this for -rc2?
>
> No, nothing about this looks like an urgent fix?

Well without it all regulator requests from DT will fail.

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-06-05 10:31                       ` Lee Jones
@ 2012-06-05 10:38                         ` Mark Brown
  2012-06-11 10:27                           ` Lee Jones
  0 siblings, 1 reply; 73+ messages in thread
From: Mark Brown @ 2012-06-05 10:38 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Jun 05, 2012 at 11:31:24AM +0100, Lee Jones wrote:
> On 01/06/12 09:48, Mark Brown wrote:

> >What makes you say the two are equivalent?  The former is a reference
> >from a consumer device to a named regulator while the latter is a
> >reference from a regulator to a named consumer.

> I mean they both link regulator<->consumer and apply the name "vmmc"
> to the supply, or am I missing something / getting confused?

You're missing something - note what I say above about the direction the
mapping is done in, and consider what happens if we've got two of the
same PMIC down in a system.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120605/2600ed6b/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-05 10:34       ` Lee Jones
@ 2012-06-05 10:42         ` Mark Brown
  2012-06-06  8:17           ` Lee Jones
  2012-06-11 11:21           ` Lee Jones
  0 siblings, 2 replies; 73+ messages in thread
From: Mark Brown @ 2012-06-05 10:42 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, Jun 05, 2012 at 11:34:12AM +0100, Lee Jones wrote:

> >>Are you sending this for -rc2?

> >No, nothing about this looks like an urgent fix?

> Well without it all regulator requests from DT will fail.

Oh, ffs.  Why wasn't this mentioned when the patch was posted, and how
were the original patches tested?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120605/eb2d8aad/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-05 10:42         ` Mark Brown
@ 2012-06-06  8:17           ` Lee Jones
  2012-06-11 11:21           ` Lee Jones
  1 sibling, 0 replies; 73+ messages in thread
From: Lee Jones @ 2012-06-06  8:17 UTC (permalink / raw)
  To: linux-arm-kernel

>
> > >>Are you sending this for -rc2?
>
> > >No, nothing about this looks like an urgent fix?
>
> > Well without it all regulator requests from DT will fail.
>
> Oh, ffs.  Why wasn't this mentioned when the patch was posted, and how
> were the original patches tested?
>

All my patches are build and boot tested and patches aren't sent if I see
anything untoward.

I don't have the time to investigate this at the moment, as I am on Holiday
until Monday.

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120606/e2a98029/attachment-0001.html>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-06-05 10:38                         ` Mark Brown
@ 2012-06-11 10:27                           ` Lee Jones
  2012-06-11 10:36                             ` Mark Brown
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-11 10:27 UTC (permalink / raw)
  To: linux-arm-kernel

On 05/06/12 11:38, Mark Brown wrote:
> On Tue, Jun 05, 2012 at 11:31:24AM +0100, Lee Jones wrote:
>> On 01/06/12 09:48, Mark Brown wrote:
>
>>> What makes you say the two are equivalent?  The former is a reference
>> >from a consumer device to a named regulator while the latter is a
>>> reference from a regulator to a named consumer.
>
>> I mean they both link regulator<->consumer and apply the name "vmmc"
>> to the supply, or am I missing something / getting confused?
>
> You're missing something - note what I say above about the direction the
> mapping is done in, and consider what happens if we've got two of the
> same PMIC down in a system.

I'm still not seeing how this would cause an issue. The only Device Tree 
nodes which will be parsed are the ones which are specified by a 
particular driver's compatible string, meaning that any other nodes 
referencing similar regulator/supply names would be ignored. In case I 
am still missing a critical point here, would you be kind enough to 
provide an example that we can work though together?

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-06-11 10:27                           ` Lee Jones
@ 2012-06-11 10:36                             ` Mark Brown
  2012-06-11 11:28                               ` Lee Jones
  0 siblings, 1 reply; 73+ messages in thread
From: Mark Brown @ 2012-06-11 10:36 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jun 11, 2012 at 11:27:53AM +0100, Lee Jones wrote:
> On 05/06/12 11:38, Mark Brown wrote:

> >You're missing something - note what I say above about the direction the
> >mapping is done in, and consider what happens if we've got two of the
> >same PMIC down in a system.

> I'm still not seeing how this would cause an issue. The only Device
> Tree nodes which will be parsed are the ones which are specified by
> a particular driver's compatible string, meaning that any other
> nodes referencing similar regulator/supply names would be ignored.

Suppose you have two devices of the same type with an array of name
based regulators, meaning the nodes with constraints have to have a
particular name in order to be matched to the regulator.  How would a
consumer reference a node to specify a supply?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120611/8237c5c6/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-05 10:42         ` Mark Brown
  2012-06-06  8:17           ` Lee Jones
@ 2012-06-11 11:21           ` Lee Jones
  2012-06-11 12:08             ` Mark Brown
  1 sibling, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-11 11:21 UTC (permalink / raw)
  To: linux-arm-kernel

On 05/06/12 11:42, Mark Brown wrote:
> On Tue, Jun 05, 2012 at 11:34:12AM +0100, Lee Jones wrote:
>
>>>> Are you sending this for -rc2?
>
>>> No, nothing about this looks like an urgent fix?
>
>> Well without it all regulator requests from DT will fail.
>
> Oh, ffs.  Why wasn't this mentioned when the patch was posted,

I did. My 00 patch mentioned that these were all clean-ups/bug fixes 
destined for the for RCs.

> and how were the original patches tested?

So it looks like this may have been my fault when testing the patch-set 
before this one. There are some hacks required to test Device Tree with 
Snowball at the moment, as the u-boot we use isn't DT compatible yet. I 
_may_ have (i.e. my best guess is that I) tested the patch-set in it's 
purest form, thus omitting the ARM_APPENDED_DTB_FILE hack required to 
append the DTB onto the kernel. Without it, the kernel just boots using 
the original platform code.

A genuine mistake on my part for which I unreservedly apologise.

Nevertheless, these two patches are required for a decent boot.

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-06-11 10:36                             ` Mark Brown
@ 2012-06-11 11:28                               ` Lee Jones
  2012-06-11 11:42                                 ` Mark Brown
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-11 11:28 UTC (permalink / raw)
  To: linux-arm-kernel

On 11/06/12 11:36, Mark Brown wrote:
> On Mon, Jun 11, 2012 at 11:27:53AM +0100, Lee Jones wrote:
>> On 05/06/12 11:38, Mark Brown wrote:
>
>>> You're missing something - note what I say above about the direction the
>>> mapping is done in, and consider what happens if we've got two of the
>>> same PMIC down in a system.
>
>> I'm still not seeing how this would cause an issue. The only Device
>> Tree nodes which will be parsed are the ones which are specified by
>> a particular driver's compatible string, meaning that any other
>> nodes referencing similar regulator/supply names would be ignored.
>
> Suppose you have two devices of the same type with an array of name
> based regulators, meaning the nodes with constraints have to have a
> particular name in order to be matched to the regulator.  How would a
> consumer reference a node to specify a supply?

some-regulators {
     compatible = "protect_me_from_similarly_named_regulators";

     regulator_node_name_reg: regulator_node_name {
         <blah>
     };
};

[supply_name]-supply = <&regulator_node_name>;

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree
  2012-06-11 11:28                               ` Lee Jones
@ 2012-06-11 11:42                                 ` Mark Brown
  0 siblings, 0 replies; 73+ messages in thread
From: Mark Brown @ 2012-06-11 11:42 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jun 11, 2012 at 12:28:57PM +0100, Lee Jones wrote:
> On 11/06/12 11:36, Mark Brown wrote:

> >Suppose you have two devices of the same type with an array of name
> >based regulators, meaning the nodes with constraints have to have a
> >particular name in order to be matched to the regulator.  How would a
> >consumer reference a node to specify a supply?

> some-regulators {
>     compatible = "protect_me_from_similarly_named_regulators";
> 
>     regulator_node_name_reg: regulator_node_name {
>         <blah>
>     };
> };

> [supply_name]-supply = <&regulator_node_name>;

I'm not 100% sure you read what I wrote above or in all the previous
mails about having two devices of the same type?  The case where we have
only one regulator of a given type obviously works otherwise people
would have noticed, the problem starts when you have two of the same
regulator device down.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120611/1ece3d2b/attachment-0001.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-11 11:21           ` Lee Jones
@ 2012-06-11 12:08             ` Mark Brown
  2012-06-11 13:34               ` Lee Jones
  0 siblings, 1 reply; 73+ messages in thread
From: Mark Brown @ 2012-06-11 12:08 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jun 11, 2012 at 12:21:00PM +0100, Lee Jones wrote:
> On 05/06/12 11:42, Mark Brown wrote:
> >On Tue, Jun 05, 2012 at 11:34:12AM +0100, Lee Jones wrote:

> >>Well without it all regulator requests from DT will fail.

> >Oh, ffs.  Why wasn't this mentioned when the patch was posted,

> I did. My 00 patch mentioned that these were all clean-ups/bug fixes
> destined for the for RCs.

You didn't CC me on that as far as I can tell so I never saw it, and
even if you had it's rather burying the lead with a large series of what
mostly looks like random cleanups from the bits I see in my archive.  I
think I assumed another patch in the series changed the names in the
device tree or added the device tree.

> Nevertheless, these two patches are required for a decent boot.

Fail.  Well, I guess I'll end up dulplicating the commits :/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120611/99cf29ce/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-11 12:08             ` Mark Brown
@ 2012-06-11 13:34               ` Lee Jones
  2012-06-11 14:07                 ` Lee Jones
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-11 13:34 UTC (permalink / raw)
  To: linux-arm-kernel

>> Nevertheless, these two patches are required for a decent boot.
>
> Fail.

I'm well aware of that, hence why I submitted the fix.

 > Well, I guess I'll end up dulplicating the commits :/

Duplicating them?

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-11 13:34               ` Lee Jones
@ 2012-06-11 14:07                 ` Lee Jones
  2012-06-11 14:27                   ` Mark Brown
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-11 14:07 UTC (permalink / raw)
  To: linux-arm-kernel

>> Well, I guess I'll end up dulplicating the commits :/
>
> Duplicating them?

Ah, you mean that you've already sent them to -next?

That's no problem though. Won't Git just sling them out at pull-time?

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-11 14:07                 ` Lee Jones
@ 2012-06-11 14:27                   ` Mark Brown
  2012-06-11 14:50                     ` Lee Jones
  0 siblings, 1 reply; 73+ messages in thread
From: Mark Brown @ 2012-06-11 14:27 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jun 11, 2012 at 03:07:43PM +0100, Lee Jones wrote:
> >>Well, I guess I'll end up dulplicating the commits :/

> >Duplicating them?

> Ah, you mean that you've already sent them to -next?

Yeah, I've already got them on a branch I don't really want to rebase.

> That's no problem though. Won't Git just sling them out at pull-time?

It'll merge out fine, it's just icky having the same thing appear twice
in history.  Not the end of the world.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120611/aefcfd09/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-11 14:27                   ` Mark Brown
@ 2012-06-11 14:50                     ` Lee Jones
  2012-06-11 15:15                       ` Mark Brown
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-11 14:50 UTC (permalink / raw)
  To: linux-arm-kernel

On 11/06/12 15:27, Mark Brown wrote:
> On Mon, Jun 11, 2012 at 03:07:43PM +0100, Lee Jones wrote:
>>>> Well, I guess I'll end up dulplicating the commits :/
>
>>> Duplicating them?
>
>> Ah, you mean that you've already sent them to -next?
>
> Yeah, I've already got them on a branch I don't really want to rebase.

Ah I see. Makes sense.

>> That's no problem though. Won't Git just sling them out at pull-time?
>
> It'll merge out fine, it's just icky having the same thing appear twice
> in history.  Not the end of the world.

Understood. So does this mean you will to push them into the -rcs?

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-11 14:50                     ` Lee Jones
@ 2012-06-11 15:15                       ` Mark Brown
  2012-06-11 15:18                         ` Lee Jones
  0 siblings, 1 reply; 73+ messages in thread
From: Mark Brown @ 2012-06-11 15:15 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jun 11, 2012 at 03:50:29PM +0100, Lee Jones wrote:
> On 11/06/12 15:27, Mark Brown wrote:

> >It'll merge out fine, it's just icky having the same thing appear twice
> >in history.  Not the end of the world.

> Understood. So does this mean you will to push them into the -rcs?

Yes.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120611/cca0d1ca/attachment-0001.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-11 15:15                       ` Mark Brown
@ 2012-06-11 15:18                         ` Lee Jones
  2012-06-11 15:39                           ` Mark Brown
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-11 15:18 UTC (permalink / raw)
  To: linux-arm-kernel

On 11/06/12 16:15, Mark Brown wrote:
> On Mon, Jun 11, 2012 at 03:50:29PM +0100, Lee Jones wrote:
>> On 11/06/12 15:27, Mark Brown wrote:
>
>>> It'll merge out fine, it's just icky having the same thing appear twice
>>> in history.  Not the end of the world.
>
>> Understood. So does this mean you will to push them into the -rcs?
>
> Yes.

Thanks Mark. Appreciate it.

Were you happy with my answer on the other email too?

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-11 15:18                         ` Lee Jones
@ 2012-06-11 15:39                           ` Mark Brown
  2012-06-11 15:59                             ` Lee Jones
  0 siblings, 1 reply; 73+ messages in thread
From: Mark Brown @ 2012-06-11 15:39 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jun 11, 2012 at 04:18:18PM +0100, Lee Jones wrote:

> Were you happy with my answer on the other email too?

Not sure which e-mail you mean?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120611/b206b3ba/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-11 15:39                           ` Mark Brown
@ 2012-06-11 15:59                             ` Lee Jones
  2012-06-11 16:09                               ` Mark Brown
  0 siblings, 1 reply; 73+ messages in thread
From: Lee Jones @ 2012-06-11 15:59 UTC (permalink / raw)
  To: linux-arm-kernel

On 11/06/12 16:39, Mark Brown wrote:
> On Mon, Jun 11, 2012 at 04:18:18PM +0100, Lee Jones wrote:
> 
>> Were you happy with my answer on the other email too?
> 
> Not sure which e-mail you mean?

[PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
M: +44 77 88 633 515 
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 09/22] regulator: Change db8500-prcmu match names to reflect Device Tree
  2012-06-11 15:59                             ` Lee Jones
@ 2012-06-11 16:09                               ` Mark Brown
  0 siblings, 0 replies; 73+ messages in thread
From: Mark Brown @ 2012-06-11 16:09 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Jun 11, 2012 at 04:59:38PM +0100, Lee Jones wrote:
> On 11/06/12 16:39, Mark Brown wrote:

> > Not sure which e-mail you mean?

> [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree

I replied to the last mail I saw from you?  It's late here so it'll be
tomorrow before I can check.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20120612/8dda7893/attachment.sig>

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 16/22] mfd: ab8500-gpadc: Enable IRQF_ONESHOT when requesting a threaded IRQ
  2012-05-30  4:47 ` [PATCH 16/22] mfd: ab8500-gpadc: Enable IRQF_ONESHOT when requesting a threaded IRQ Lee Jones
  2012-05-30  7:10   ` Linus Walleij
@ 2012-06-29 13:21   ` Samuel Ortiz
  1 sibling, 0 replies; 73+ messages in thread
From: Samuel Ortiz @ 2012-06-29 13:21 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Lee,

On Wed, May 30, 2012 at 12:47:34PM +0800, Lee Jones wrote:
> The kernel now forces IRQs to be ONESHOT if no IRQ handler is passed.
> 
> Cc: Samuel Ortiz <sameo@linux.intel.com>
> Cc: linux-kernel at vger.kernel.org
> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> ---
>  drivers/mfd/ab8500-gpadc.c |    3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
Patch applied, thanks.

Cheers,
Samuel.

-- 
Intel Open Source Technology Centre
http://oss.intel.com/

^ permalink raw reply	[flat|nested] 73+ messages in thread

* [PATCH 18/22] mfd: Remove redundant Kconfig entry
  2012-05-30  4:47 ` [PATCH 18/22] mfd: Remove redundant Kconfig entry Lee Jones
  2012-05-30  7:15   ` Linus Walleij
@ 2012-06-29 13:24   ` Samuel Ortiz
  1 sibling, 0 replies; 73+ messages in thread
From: Samuel Ortiz @ 2012-06-29 13:24 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Lee,

On Wed, May 30, 2012 at 12:47:36PM +0800, Lee Jones wrote:
> During ab8500-core clean-up the Kconfig entry for AB8500_I2C_CORE
> was left remnant. This patch simply removes it.
> 
> Cc: Samuel Ortiz <sameo@linux.intel.com>
> Cc: linux-kernel at vger.kernel.org
> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> ---
>  drivers/mfd/Kconfig |   10 ----------
>  1 file changed, 10 deletions(-)
Applied as well, thanks.

Cheers,
Samuel.

-- 
Intel Open Source Technology Centre
http://oss.intel.com/

^ permalink raw reply	[flat|nested] 73+ messages in thread

end of thread, other threads:[~2012-06-29 13:24 UTC | newest]

Thread overview: 73+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-05-30  4:47 [PATCH 01/22] Fixes and clean-ups for Device Tree on Snowball Lee Jones
2012-05-30  4:47 ` [PATCH 01/22] ARM: ux500: New DT:ed snowball_platform_devs for one-by-one device enablement Lee Jones
2012-05-30  4:47 ` [PATCH 02/22] ARM: ux500: New DT:ed u8500_init_devices " Lee Jones
2012-05-30  4:47 ` [PATCH 03/22] ARM: ux500: Disable SMSC911x platform code registration when DT is enabled Lee Jones
2012-05-30  4:47 ` [PATCH 04/22] ARM: ux500: Remove DB8500 PRCMU platform " Lee Jones
2012-05-30  6:48   ` Linus Walleij
2012-05-30  4:47 ` [PATCH 05/22] ARM: ux500: PRCMU related configuration and layout corrections for Device Tree Lee Jones
2012-05-30  4:47 ` [PATCH 06/22] ARM: ux500: Re-enable SMSC911x platform code registration during non-DT boots Lee Jones
2012-05-30  4:47 ` [PATCH 07/22] ARM: ux500: Use correct format for dynamic IRQ assignment Lee Jones
2012-05-30  4:47 ` [PATCH 08/22] regulator: Change ab8500 match names to reflect Device Tree Lee Jones
2012-05-30  6:58   ` Linus Walleij
2012-05-30 10:03     ` Mark Brown
2012-05-30 11:40       ` Lee Jones
2012-05-30 12:15         ` Mark Brown
2012-05-30 15:01           ` Lee Jones
2012-05-30 15:11             ` Mark Brown
2012-05-30 15:22               ` Lee Jones
2012-05-30 16:41                 ` Mark Brown
2012-05-31  0:42                   ` Lee Jones
2012-06-01  4:36                   ` Lee Jones
2012-06-01  8:48                     ` Mark Brown
2012-06-05 10:31                       ` Lee Jones
2012-06-05 10:38                         ` Mark Brown
2012-06-11 10:27                           ` Lee Jones
2012-06-11 10:36                             ` Mark Brown
2012-06-11 11:28                               ` Lee Jones
2012-06-11 11:42                                 ` Mark Brown
2012-05-31  1:40     ` Linus Walleij
2012-06-01 14:32   ` Mark Brown
2012-05-30  4:47 ` [PATCH 09/22] regulator: Change db8500-prcmu " Lee Jones
2012-05-30  7:00   ` Linus Walleij
2012-06-05 10:24   ` Lee Jones
2012-06-05 10:29     ` Mark Brown
2012-06-05 10:34       ` Lee Jones
2012-06-05 10:42         ` Mark Brown
2012-06-06  8:17           ` Lee Jones
2012-06-11 11:21           ` Lee Jones
2012-06-11 12:08             ` Mark Brown
2012-06-11 13:34               ` Lee Jones
2012-06-11 14:07                 ` Lee Jones
2012-06-11 14:27                   ` Mark Brown
2012-06-11 14:50                     ` Lee Jones
2012-06-11 15:15                       ` Mark Brown
2012-06-11 15:18                         ` Lee Jones
2012-06-11 15:39                           ` Mark Brown
2012-06-11 15:59                             ` Lee Jones
2012-06-11 16:09                               ` Mark Brown
2012-05-30  4:47 ` [PATCH 10/22] ARM: ux500: Disable platform setup of the ab8500 when DT is enabled Lee Jones
2012-05-30  4:47 ` [PATCH 11/22] ARM: ux500: Only initialise STE's UIBs on boards which support them Lee Jones
2012-05-30  4:47 ` [PATCH 12/22] ARM: ux500: Apply db8500-prcmu regulator information to db8500 Device Tree Lee Jones
2012-05-30  4:47 ` [PATCH 13/22] ARM: ux500: Allow PRCMU regulator to be probed during a DT enabled boot Lee Jones
2012-05-30  4:47 ` [PATCH 14/22] ARM: ux500: Provide regulator support for SMSC911x via Device Tree Lee Jones
2012-05-30  7:05   ` Linus Walleij
2012-05-30  4:47 ` [PATCH 15/22] ARM: ux500: Add support for ab8500 regulators into the " Lee Jones
2012-05-30  4:47 ` [PATCH 16/22] mfd: ab8500-gpadc: Enable IRQF_ONESHOT when requesting a threaded IRQ Lee Jones
2012-05-30  7:10   ` Linus Walleij
2012-06-29 13:21   ` Samuel Ortiz
2012-05-30  4:47 ` [PATCH 17/22] rtc: ab8500-rtc: " Lee Jones
2012-05-30  7:11   ` [rtc-linux] " Linus Walleij
2012-05-30  4:47 ` [PATCH 18/22] mfd: Remove redundant Kconfig entry Lee Jones
2012-05-30  7:15   ` Linus Walleij
2012-05-30  7:37     ` Lee Jones
2012-05-30  7:43       ` Linus Walleij
2012-06-29 13:24   ` Samuel Ortiz
2012-05-30  4:47 ` [PATCH 19/22] net/smsc911x: Repair broken failure paths Lee Jones
2012-05-30  7:16   ` Linus Walleij
2012-05-30 21:52     ` David Miller
2012-05-30  4:47 ` [PATCH 20/22] pinctrl-nomadik: Allow Device Tree driver probing Lee Jones
2012-05-30  7:18   ` Linus Walleij
2012-05-30  4:47 ` [PATCH 21/22] ARM: ux500: Enable probing of pinctrl through Device Tree Lee Jones
2012-05-30  7:18   ` Linus Walleij
2012-05-30  4:47 ` [PATCH 22/22] mfd: Enable DT probing of the DB8500 PRCMU Lee Jones
2012-05-30  7:19   ` Linus Walleij

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).