All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/40] ARM: ux500: Convert to Device Tree only platform
@ 2013-08-23 12:23 ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij

I started by taking out simple, unimportant pieces, then finalised by
removing the critical booting components required for booting with
ATAGs. After this patch-set the ux500 will only boot with Device Tree
enabled. DT boot appears to be unaffected by the work, tested on
Snowball.

 arch/arm/mach-ux500/Makefile                |   4 +-
 arch/arm/mach-ux500/board-mop500-audio.c    |  50 ----------
 arch/arm/mach-ux500/board-mop500-sdi.c      |  51 ----------
 arch/arm/mach-ux500/board-mop500-stuib.c    | 120 -----------------------
 arch/arm/mach-ux500/board-mop500-u8500uib.c |  92 ------------------
 arch/arm/mach-ux500/board-mop500-uib.c      | 133 -------------------------
 arch/arm/mach-ux500/board-mop500.c          | 640 ------------------------------------------------------------------------------------------------------------------------
 arch/arm/mach-ux500/board-mop500.h          |  16 ---
 arch/arm/mach-ux500/cpu-db8500.c            |  78 ---------------
 arch/arm/mach-ux500/cpu.c                   |   5 -
 arch/arm/mach-ux500/devices-common.c        |  60 ------------
 arch/arm/mach-ux500/devices-common.h        | 134 -------------------------
 arch/arm/mach-ux500/devices-db8500.c        |  93 ------------------
 arch/arm/mach-ux500/devices-db8500.h        | 109 ---------------------
 arch/arm/mach-ux500/devices.h               |   8 --
 arch/arm/mach-ux500/setup.h                 |   1 -
 arch/arm/mach-ux500/usb.c                   | 135 --------------------------
 17 files changed, 1 insertion(+), 1728 deletions(-)



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

* [PATCH 0/40] ARM: ux500: Convert to Device Tree only platform
@ 2013-08-23 12:23 ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

I started by taking out simple, unimportant pieces, then finalised by
removing the critical booting components required for booting with
ATAGs. After this patch-set the ux500 will only boot with Device Tree
enabled. DT boot appears to be unaffected by the work, tested on
Snowball.

 arch/arm/mach-ux500/Makefile                |   4 +-
 arch/arm/mach-ux500/board-mop500-audio.c    |  50 ----------
 arch/arm/mach-ux500/board-mop500-sdi.c      |  51 ----------
 arch/arm/mach-ux500/board-mop500-stuib.c    | 120 -----------------------
 arch/arm/mach-ux500/board-mop500-u8500uib.c |  92 ------------------
 arch/arm/mach-ux500/board-mop500-uib.c      | 133 -------------------------
 arch/arm/mach-ux500/board-mop500.c          | 640 ------------------------------------------------------------------------------------------------------------------------
 arch/arm/mach-ux500/board-mop500.h          |  16 ---
 arch/arm/mach-ux500/cpu-db8500.c            |  78 ---------------
 arch/arm/mach-ux500/cpu.c                   |   5 -
 arch/arm/mach-ux500/devices-common.c        |  60 ------------
 arch/arm/mach-ux500/devices-common.h        | 134 -------------------------
 arch/arm/mach-ux500/devices-db8500.c        |  93 ------------------
 arch/arm/mach-ux500/devices-db8500.h        | 109 ---------------------
 arch/arm/mach-ux500/devices.h               |   8 --
 arch/arm/mach-ux500/setup.h                 |   1 -
 arch/arm/mach-ux500/usb.c                   | 135 --------------------------
 17 files changed, 1 insertion(+), 1728 deletions(-)

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

* [PATCH 01/40] ARM: ux500: Remove Audio/MSP support when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-audio.c | 50 --------------------------------
 arch/arm/mach-ux500/board-mop500.c       |  3 --
 arch/arm/mach-ux500/board-mop500.h       |  1 -
 arch/arm/mach-ux500/devices-common.h     |  9 ------
 arch/arm/mach-ux500/devices-db8500.h     | 13 ---------
 5 files changed, 76 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-audio.c b/arch/arm/mach-ux500/board-mop500-audio.c
index bfe443d..89f7f92 100644
--- a/arch/arm/mach-ux500/board-mop500-audio.c
+++ b/arch/arm/mach-ux500/board-mop500-audio.c
@@ -69,40 +69,6 @@ static struct stedma40_chan_cfg msp2_dma_tx = {
 	.phy_channel = 1,
 };
 
-static struct platform_device *db8500_add_msp_i2s(struct device *parent,
-			int id,
-			resource_size_t base, int irq,
-			struct msp_i2s_platform_data *pdata)
-{
-	struct platform_device *pdev;
-	struct resource res[] = {
-		DEFINE_RES_MEM(base, SZ_4K),
-		DEFINE_RES_IRQ(irq),
-	};
-
-	pr_info("Register platform-device 'ux500-msp-i2s', id %d, irq %d\n",
-		id, irq);
-	pdev = platform_device_register_resndata(parent, "ux500-msp-i2s", id,
-						res, ARRAY_SIZE(res),
-						pdata, sizeof(*pdata));
-	if (!pdev) {
-		pr_err("Failed to register platform-device 'ux500-msp-i2s.%d'!\n",
-			id);
-		return NULL;
-	}
-
-	return pdev;
-}
-
-/* Platform device for ASoC MOP500 machine */
-static struct platform_device snd_soc_mop500 = {
-	.name = "snd-soc-mop500",
-	.id = 0,
-	.dev = {
-		.platform_data = NULL,
-	},
-};
-
 struct msp_i2s_platform_data msp2_platform_data = {
 	.id = MSP_I2S_2,
 	.msp_i2s_dma_rx = &msp2_dma_rx,
@@ -114,19 +80,3 @@ struct msp_i2s_platform_data msp3_platform_data = {
 	.msp_i2s_dma_rx	= &msp1_dma_rx,
 	.msp_i2s_dma_tx	= NULL,
 };
-
-void mop500_audio_init(struct device *parent)
-{
-	pr_info("%s: Register platform-device 'snd-soc-mop500'.\n", __func__);
-	platform_device_register(&snd_soc_mop500);
-
-	pr_info("Initialize MSP I2S-devices.\n");
-	db8500_add_msp_i2s(parent, 0, U8500_MSP0_BASE, IRQ_DB8500_MSP0,
-			   &msp0_platform_data);
-	db8500_add_msp_i2s(parent, 1, U8500_MSP1_BASE, IRQ_DB8500_MSP1,
-			   &msp1_platform_data);
-	db8500_add_msp_i2s(parent, 2, U8500_MSP2_BASE, IRQ_DB8500_MSP2,
-			   &msp2_platform_data);
-	db8500_add_msp_i2s(parent, 3, U8500_MSP3_BASE, IRQ_DB8500_MSP1,
-			   &msp3_platform_data);
-}
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index df5d27a..4fe6aa0 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -586,7 +586,6 @@ static void __init mop500_init_machine(void)
 	mop500_i2c_init(parent);
 	mop500_sdi_init(parent);
 	mop500_spi_init(parent);
-	mop500_audio_init(parent);
 	mop500_uart_init(parent);
 
 	u8500_cryp1_hash1_init(parent);
@@ -623,7 +622,6 @@ static void __init snowball_init_machine(void)
 	mop500_i2c_init(parent);
 	snowball_sdi_init(parent);
 	mop500_spi_init(parent);
-	mop500_audio_init(parent);
 	mop500_uart_init(parent);
 
 	u8500_cryp1_hash1_init(parent);
@@ -661,7 +659,6 @@ static void __init hrefv60_init_machine(void)
 	mop500_i2c_init(parent);
 	hrefv60_sdi_init(parent);
 	mop500_spi_init(parent);
-	mop500_audio_init(parent);
 	mop500_uart_init(parent);
 
 	i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index d6fab16..3bd9b6e 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -104,7 +104,6 @@ void __init mop500_stuib_init(void);
 void __init mop500_pinmaps_init(void);
 void __init snowball_pinmaps_init(void);
 void __init hrefv60_pinmaps_init(void);
-void mop500_audio_init(struct device *parent);
 
 int __init mop500_uib_init(void);
 void mop500_uib_i2c_add(int busnum, struct i2c_board_info *info,
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 96fa4ac..7eb1272 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -18,15 +18,6 @@
 struct spi_master_cntlr;
 
 static inline struct amba_device *
-dbx500_add_msp_spi(struct device *parent, const char *name,
-		   resource_size_t base, int irq,
-		   struct spi_master_cntlr *pdata)
-{
-	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0,
-				   pdata, 0);
-}
-
-static inline struct amba_device *
 dbx500_add_spi(struct device *parent, const char *name, resource_size_t base,
 	       int irq, struct spi_master_cntlr *pdata,
 	       u32 periphid)
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 3219983..c393932 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -53,19 +53,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 #define db8500_add_i2c4(parent, pdata) \
 	dbx500_add_i2c(parent, 4, U8500_I2C4_BASE, IRQ_DB8500_I2C4, pdata)
 
-#define db8500_add_msp0_spi(parent, pdata) \
-	dbx500_add_msp_spi(parent, "msp0", U8500_MSP0_BASE, \
-			   IRQ_DB8500_MSP0, pdata)
-#define db8500_add_msp1_spi(parent, pdata) \
-	dbx500_add_msp_spi(parent, "msp1", U8500_MSP1_BASE, \
-			   IRQ_DB8500_MSP1, pdata)
-#define db8500_add_msp2_spi(parent, pdata) \
-	dbx500_add_msp_spi(parent, "msp2", U8500_MSP2_BASE, \
-			   IRQ_DB8500_MSP2, pdata)
-#define db8500_add_msp3_spi(parent, pdata) \
-	dbx500_add_msp_spi(parent, "msp3", U8500_MSP3_BASE, \
-			   IRQ_DB8500_MSP1, pdata)
-
 #define db8500_add_rtc(parent) \
 	dbx500_add_rtc(parent, U8500_RTC_BASE, IRQ_DB8500_RTC);
 
-- 
1.8.1.2


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

* [PATCH 01/40] ARM: ux500: Remove Audio/MSP support when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-audio.c | 50 --------------------------------
 arch/arm/mach-ux500/board-mop500.c       |  3 --
 arch/arm/mach-ux500/board-mop500.h       |  1 -
 arch/arm/mach-ux500/devices-common.h     |  9 ------
 arch/arm/mach-ux500/devices-db8500.h     | 13 ---------
 5 files changed, 76 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-audio.c b/arch/arm/mach-ux500/board-mop500-audio.c
index bfe443d..89f7f92 100644
--- a/arch/arm/mach-ux500/board-mop500-audio.c
+++ b/arch/arm/mach-ux500/board-mop500-audio.c
@@ -69,40 +69,6 @@ static struct stedma40_chan_cfg msp2_dma_tx = {
 	.phy_channel = 1,
 };
 
-static struct platform_device *db8500_add_msp_i2s(struct device *parent,
-			int id,
-			resource_size_t base, int irq,
-			struct msp_i2s_platform_data *pdata)
-{
-	struct platform_device *pdev;
-	struct resource res[] = {
-		DEFINE_RES_MEM(base, SZ_4K),
-		DEFINE_RES_IRQ(irq),
-	};
-
-	pr_info("Register platform-device 'ux500-msp-i2s', id %d, irq %d\n",
-		id, irq);
-	pdev = platform_device_register_resndata(parent, "ux500-msp-i2s", id,
-						res, ARRAY_SIZE(res),
-						pdata, sizeof(*pdata));
-	if (!pdev) {
-		pr_err("Failed to register platform-device 'ux500-msp-i2s.%d'!\n",
-			id);
-		return NULL;
-	}
-
-	return pdev;
-}
-
-/* Platform device for ASoC MOP500 machine */
-static struct platform_device snd_soc_mop500 = {
-	.name = "snd-soc-mop500",
-	.id = 0,
-	.dev = {
-		.platform_data = NULL,
-	},
-};
-
 struct msp_i2s_platform_data msp2_platform_data = {
 	.id = MSP_I2S_2,
 	.msp_i2s_dma_rx = &msp2_dma_rx,
@@ -114,19 +80,3 @@ struct msp_i2s_platform_data msp3_platform_data = {
 	.msp_i2s_dma_rx	= &msp1_dma_rx,
 	.msp_i2s_dma_tx	= NULL,
 };
-
-void mop500_audio_init(struct device *parent)
-{
-	pr_info("%s: Register platform-device 'snd-soc-mop500'.\n", __func__);
-	platform_device_register(&snd_soc_mop500);
-
-	pr_info("Initialize MSP I2S-devices.\n");
-	db8500_add_msp_i2s(parent, 0, U8500_MSP0_BASE, IRQ_DB8500_MSP0,
-			   &msp0_platform_data);
-	db8500_add_msp_i2s(parent, 1, U8500_MSP1_BASE, IRQ_DB8500_MSP1,
-			   &msp1_platform_data);
-	db8500_add_msp_i2s(parent, 2, U8500_MSP2_BASE, IRQ_DB8500_MSP2,
-			   &msp2_platform_data);
-	db8500_add_msp_i2s(parent, 3, U8500_MSP3_BASE, IRQ_DB8500_MSP1,
-			   &msp3_platform_data);
-}
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index df5d27a..4fe6aa0 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -586,7 +586,6 @@ static void __init mop500_init_machine(void)
 	mop500_i2c_init(parent);
 	mop500_sdi_init(parent);
 	mop500_spi_init(parent);
-	mop500_audio_init(parent);
 	mop500_uart_init(parent);
 
 	u8500_cryp1_hash1_init(parent);
@@ -623,7 +622,6 @@ static void __init snowball_init_machine(void)
 	mop500_i2c_init(parent);
 	snowball_sdi_init(parent);
 	mop500_spi_init(parent);
-	mop500_audio_init(parent);
 	mop500_uart_init(parent);
 
 	u8500_cryp1_hash1_init(parent);
@@ -661,7 +659,6 @@ static void __init hrefv60_init_machine(void)
 	mop500_i2c_init(parent);
 	hrefv60_sdi_init(parent);
 	mop500_spi_init(parent);
-	mop500_audio_init(parent);
 	mop500_uart_init(parent);
 
 	i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index d6fab16..3bd9b6e 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -104,7 +104,6 @@ void __init mop500_stuib_init(void);
 void __init mop500_pinmaps_init(void);
 void __init snowball_pinmaps_init(void);
 void __init hrefv60_pinmaps_init(void);
-void mop500_audio_init(struct device *parent);
 
 int __init mop500_uib_init(void);
 void mop500_uib_i2c_add(int busnum, struct i2c_board_info *info,
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 96fa4ac..7eb1272 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -18,15 +18,6 @@
 struct spi_master_cntlr;
 
 static inline struct amba_device *
-dbx500_add_msp_spi(struct device *parent, const char *name,
-		   resource_size_t base, int irq,
-		   struct spi_master_cntlr *pdata)
-{
-	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0,
-				   pdata, 0);
-}
-
-static inline struct amba_device *
 dbx500_add_spi(struct device *parent, const char *name, resource_size_t base,
 	       int irq, struct spi_master_cntlr *pdata,
 	       u32 periphid)
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 3219983..c393932 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -53,19 +53,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 #define db8500_add_i2c4(parent, pdata) \
 	dbx500_add_i2c(parent, 4, U8500_I2C4_BASE, IRQ_DB8500_I2C4, pdata)
 
-#define db8500_add_msp0_spi(parent, pdata) \
-	dbx500_add_msp_spi(parent, "msp0", U8500_MSP0_BASE, \
-			   IRQ_DB8500_MSP0, pdata)
-#define db8500_add_msp1_spi(parent, pdata) \
-	dbx500_add_msp_spi(parent, "msp1", U8500_MSP1_BASE, \
-			   IRQ_DB8500_MSP1, pdata)
-#define db8500_add_msp2_spi(parent, pdata) \
-	dbx500_add_msp_spi(parent, "msp2", U8500_MSP2_BASE, \
-			   IRQ_DB8500_MSP2, pdata)
-#define db8500_add_msp3_spi(parent, pdata) \
-	dbx500_add_msp_spi(parent, "msp3", U8500_MSP3_BASE, \
-			   IRQ_DB8500_MSP1, pdata)
-
 #define db8500_add_rtc(parent) \
 	dbx500_add_rtc(parent, U8500_RTC_BASE, IRQ_DB8500_RTC);
 
-- 
1.8.1.2

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

* [PATCH 02/40] ARM: ux500: Remove TPS61052 High Power White LED Driver ATAG support
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 4fe6aa0..14fbee0 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -242,15 +242,6 @@ static struct platform_device u8500_cpufreq_cooling_device = {
 };
 
 /*
- * TPS61052
- */
-
-static struct tps6105x_platform_data mop500_tps61052_data = {
-	.mode = TPS6105X_MODE_VOLTAGE,
-	.regulator_data = &tps61052_regulator,
-};
-
-/*
  * TC35892
  */
 
@@ -331,11 +322,6 @@ static struct i2c_board_info __initdata mop500_i2c0_devices[] = {
 		.irq		= NOMADIK_GPIO_TO_IRQ(217),
 		.platform_data  = &mop500_tc35892_data,
 	},
-	/* I2C0 devices only available prior to HREFv60 */
-	{
-		I2C_BOARD_INFO("tps61052", 0x33),
-		.platform_data  = &mop500_tps61052_data,
-	},
 };
 
 #define NUM_PRE_V60_I2C0_DEVICES 1
-- 
1.8.1.2


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

* [PATCH 02/40] ARM: ux500: Remove TPS61052 High Power White LED Driver ATAG support
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 4fe6aa0..14fbee0 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -242,15 +242,6 @@ static struct platform_device u8500_cpufreq_cooling_device = {
 };
 
 /*
- * TPS61052
- */
-
-static struct tps6105x_platform_data mop500_tps61052_data = {
-	.mode = TPS6105X_MODE_VOLTAGE,
-	.regulator_data = &tps61052_regulator,
-};
-
-/*
  * TC35892
  */
 
@@ -331,11 +322,6 @@ static struct i2c_board_info __initdata mop500_i2c0_devices[] = {
 		.irq		= NOMADIK_GPIO_TO_IRQ(217),
 		.platform_data  = &mop500_tc35892_data,
 	},
-	/* I2C0 devices only available prior to HREFv60 */
-	{
-		I2C_BOARD_INFO("tps61052", 0x33),
-		.platform_data  = &mop500_tps61052_data,
-	},
 };
 
 #define NUM_PRE_V60_I2C0_DEVICES 1
-- 
1.8.1.2

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

* [PATCH 03/40] ARM: ux500: Remove ATAG support for LP5521 Programmable Three-Channel LED driver
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 60 --------------------------------------
 1 file changed, 60 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 14fbee0..b090d4d 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -266,56 +266,6 @@ static struct tc3589x_platform_data mop500_tc35892_data = {
 	.irq_base	= MOP500_EGPIO_IRQ_BASE,
 };
 
-static struct lp55xx_led_config lp5521_pri_led[] = {
-       [0] = {
-	       .chan_nr = 0,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-       [1] = {
-	       .chan_nr = 1,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-       [2] = {
-	       .chan_nr = 2,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-};
-
-static struct lp55xx_platform_data __initdata lp5521_pri_data = {
-       .label = "lp5521_pri",
-       .led_config     = &lp5521_pri_led[0],
-       .num_channels   = 3,
-       .clock_mode     = LP55XX_CLOCK_EXT,
-};
-
-static struct lp55xx_led_config lp5521_sec_led[] = {
-       [0] = {
-	       .chan_nr = 0,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-       [1] = {
-	       .chan_nr = 1,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-       [2] = {
-	       .chan_nr = 2,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-};
-
-static struct lp55xx_platform_data __initdata lp5521_sec_data = {
-       .label = "lp5521_sec",
-       .led_config     = &lp5521_sec_led[0],
-       .num_channels   = 3,
-       .clock_mode     = LP55XX_CLOCK_EXT,
-};
-
 static struct i2c_board_info __initdata mop500_i2c0_devices[] = {
 	{
 		I2C_BOARD_INFO("tc3589x", 0x42),
@@ -328,16 +278,6 @@ static struct i2c_board_info __initdata mop500_i2c0_devices[] = {
 
 static struct i2c_board_info __initdata mop500_i2c2_devices[] = {
 	{
-		/* lp5521 LED driver, 1st device */
-		I2C_BOARD_INFO("lp5521", 0x33),
-		.platform_data = &lp5521_pri_data,
-	},
-	{
-		/* lp5521 LED driver, 2st device */
-		I2C_BOARD_INFO("lp5521", 0x34),
-		.platform_data = &lp5521_sec_data,
-	},
-	{
 		/* Light sensor Rohm BH1780GLI */
 		I2C_BOARD_INFO("bh1780", 0x29),
 	},
-- 
1.8.1.2


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

* [PATCH 03/40] ARM: ux500: Remove ATAG support for LP5521 Programmable Three-Channel LED driver
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 60 --------------------------------------
 1 file changed, 60 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 14fbee0..b090d4d 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -266,56 +266,6 @@ static struct tc3589x_platform_data mop500_tc35892_data = {
 	.irq_base	= MOP500_EGPIO_IRQ_BASE,
 };
 
-static struct lp55xx_led_config lp5521_pri_led[] = {
-       [0] = {
-	       .chan_nr = 0,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-       [1] = {
-	       .chan_nr = 1,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-       [2] = {
-	       .chan_nr = 2,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-};
-
-static struct lp55xx_platform_data __initdata lp5521_pri_data = {
-       .label = "lp5521_pri",
-       .led_config     = &lp5521_pri_led[0],
-       .num_channels   = 3,
-       .clock_mode     = LP55XX_CLOCK_EXT,
-};
-
-static struct lp55xx_led_config lp5521_sec_led[] = {
-       [0] = {
-	       .chan_nr = 0,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-       [1] = {
-	       .chan_nr = 1,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-       [2] = {
-	       .chan_nr = 2,
-	       .led_current = 0x2f,
-	       .max_current = 0x5f,
-       },
-};
-
-static struct lp55xx_platform_data __initdata lp5521_sec_data = {
-       .label = "lp5521_sec",
-       .led_config     = &lp5521_sec_led[0],
-       .num_channels   = 3,
-       .clock_mode     = LP55XX_CLOCK_EXT,
-};
-
 static struct i2c_board_info __initdata mop500_i2c0_devices[] = {
 	{
 		I2C_BOARD_INFO("tc3589x", 0x42),
@@ -328,16 +278,6 @@ static struct i2c_board_info __initdata mop500_i2c0_devices[] = {
 
 static struct i2c_board_info __initdata mop500_i2c2_devices[] = {
 	{
-		/* lp5521 LED driver, 1st device */
-		I2C_BOARD_INFO("lp5521", 0x33),
-		.platform_data = &lp5521_pri_data,
-	},
-	{
-		/* lp5521 LED driver, 2st device */
-		I2C_BOARD_INFO("lp5521", 0x34),
-		.platform_data = &lp5521_sec_data,
-	},
-	{
 		/* Light sensor Rohm BH1780GLI */
 		I2C_BOARD_INFO("bh1780", 0x29),
 	},
-- 
1.8.1.2

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

* [PATCH 04/40] ARM: ux500: Remove ATAG booting support for Snowball's heatbeat LED
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 21 ---------------------
 1 file changed, 21 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index b090d4d..e634ea5 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -55,26 +55,6 @@
 #include "board-mop500.h"
 #include "board-mop500-regulators.h"
 
-static struct gpio_led snowball_led_array[] = {
-	{
-		.name = "user_led",
-		.default_trigger = "heartbeat",
-		.gpio = 142,
-	},
-};
-
-static struct gpio_led_platform_data snowball_led_data = {
-	.leds = snowball_led_array,
-	.num_leds = ARRAY_SIZE(snowball_led_array),
-};
-
-static struct platform_device snowball_led_dev = {
-	.name = "leds-gpio",
-	.dev = {
-		.platform_data = &snowball_led_data,
-	},
-};
-
 static struct fixed_voltage_config snowball_gpio_en_3v3_data = {
        .supply_name            = "EN-3V3",
        .gpio                   = SNOWBALL_EN_3V3_ETH_GPIO,
@@ -480,7 +460,6 @@ 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,
 	&snowball_gpio_en_3v3_regulator_dev,
-- 
1.8.1.2


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

* [PATCH 04/40] ARM: ux500: Remove ATAG booting support for Snowball's heatbeat LED
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 21 ---------------------
 1 file changed, 21 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index b090d4d..e634ea5 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -55,26 +55,6 @@
 #include "board-mop500.h"
 #include "board-mop500-regulators.h"
 
-static struct gpio_led snowball_led_array[] = {
-	{
-		.name = "user_led",
-		.default_trigger = "heartbeat",
-		.gpio = 142,
-	},
-};
-
-static struct gpio_led_platform_data snowball_led_data = {
-	.leds = snowball_led_array,
-	.num_leds = ARRAY_SIZE(snowball_led_array),
-};
-
-static struct platform_device snowball_led_dev = {
-	.name = "leds-gpio",
-	.dev = {
-		.platform_data = &snowball_led_data,
-	},
-};
-
 static struct fixed_voltage_config snowball_gpio_en_3v3_data = {
        .supply_name            = "EN-3V3",
        .gpio                   = SNOWBALL_EN_3V3_ETH_GPIO,
@@ -480,7 +460,6 @@ 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,
 	&snowball_gpio_en_3v3_regulator_dev,
-- 
1.8.1.2

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

* [PATCH 05/40] ARM: ux500: Purge support for Snowball user buttons when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 62 --------------------------------------
 1 file changed, 62 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index e634ea5..dcd482b 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -119,67 +119,6 @@ static struct ab8500_codec_platform_data ab8500_codec_pdata = {
 	.ear_cmv = EAR_CMV_0_95V
 };
 
-static struct gpio_keys_button snowball_key_array[] = {
-	{
-		.gpio           = 32,
-		.type           = EV_KEY,
-		.code           = KEY_1,
-		.desc           = "userpb",
-		.active_low     = 1,
-		.debounce_interval = 50,
-		.wakeup         = 1,
-	},
-	{
-		.gpio           = 151,
-		.type           = EV_KEY,
-		.code           = KEY_2,
-		.desc           = "extkb1",
-		.active_low     = 1,
-		.debounce_interval = 50,
-		.wakeup         = 1,
-	},
-	{
-		.gpio           = 152,
-		.type           = EV_KEY,
-		.code           = KEY_3,
-		.desc           = "extkb2",
-		.active_low     = 1,
-		.debounce_interval = 50,
-		.wakeup         = 1,
-	},
-	{
-		.gpio           = 161,
-		.type           = EV_KEY,
-		.code           = KEY_4,
-		.desc           = "extkb3",
-		.active_low     = 1,
-		.debounce_interval = 50,
-		.wakeup         = 1,
-	},
-	{
-		.gpio           = 162,
-		.type           = EV_KEY,
-		.code           = KEY_5,
-		.desc           = "extkb4",
-		.active_low     = 1,
-		.debounce_interval = 50,
-		.wakeup         = 1,
-	},
-};
-
-static struct gpio_keys_platform_data snowball_key_data = {
-	.buttons        = snowball_key_array,
-	.nbuttons       = ARRAY_SIZE(snowball_key_array),
-};
-
-static struct platform_device snowball_key_dev = {
-	.name           = "gpio-keys",
-	.id             = -1,
-	.dev            = {
-		.platform_data  = &snowball_key_data,
-	}
-};
-
 static struct smsc911x_platform_config snowball_sbnet_cfg = {
 	.irq_polarity = SMSC911X_IRQ_POLARITY_ACTIVE_HIGH,
 	.irq_type = SMSC911X_IRQ_TYPE_PUSH_PULL,
@@ -460,7 +399,6 @@ static void __init u8500_cryp1_hash1_init(struct device *parent)
 }
 
 static struct platform_device *snowball_platform_devs[] __initdata = {
-	&snowball_key_dev,
 	&snowball_sbnet_dev,
 	&snowball_gpio_en_3v3_regulator_dev,
 	&u8500_cpufreq_cooling_device,
-- 
1.8.1.2


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

* [PATCH 05/40] ARM: ux500: Purge support for Snowball user buttons when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 62 --------------------------------------
 1 file changed, 62 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index e634ea5..dcd482b 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -119,67 +119,6 @@ static struct ab8500_codec_platform_data ab8500_codec_pdata = {
 	.ear_cmv = EAR_CMV_0_95V
 };
 
-static struct gpio_keys_button snowball_key_array[] = {
-	{
-		.gpio           = 32,
-		.type           = EV_KEY,
-		.code           = KEY_1,
-		.desc           = "userpb",
-		.active_low     = 1,
-		.debounce_interval = 50,
-		.wakeup         = 1,
-	},
-	{
-		.gpio           = 151,
-		.type           = EV_KEY,
-		.code           = KEY_2,
-		.desc           = "extkb1",
-		.active_low     = 1,
-		.debounce_interval = 50,
-		.wakeup         = 1,
-	},
-	{
-		.gpio           = 152,
-		.type           = EV_KEY,
-		.code           = KEY_3,
-		.desc           = "extkb2",
-		.active_low     = 1,
-		.debounce_interval = 50,
-		.wakeup         = 1,
-	},
-	{
-		.gpio           = 161,
-		.type           = EV_KEY,
-		.code           = KEY_4,
-		.desc           = "extkb3",
-		.active_low     = 1,
-		.debounce_interval = 50,
-		.wakeup         = 1,
-	},
-	{
-		.gpio           = 162,
-		.type           = EV_KEY,
-		.code           = KEY_5,
-		.desc           = "extkb4",
-		.active_low     = 1,
-		.debounce_interval = 50,
-		.wakeup         = 1,
-	},
-};
-
-static struct gpio_keys_platform_data snowball_key_data = {
-	.buttons        = snowball_key_array,
-	.nbuttons       = ARRAY_SIZE(snowball_key_array),
-};
-
-static struct platform_device snowball_key_dev = {
-	.name           = "gpio-keys",
-	.id             = -1,
-	.dev            = {
-		.platform_data  = &snowball_key_data,
-	}
-};
-
 static struct smsc911x_platform_config snowball_sbnet_cfg = {
 	.irq_polarity = SMSC911X_IRQ_POLARITY_ACTIVE_HIGH,
 	.irq_type = SMSC911X_IRQ_TYPE_PUSH_PULL,
@@ -460,7 +399,6 @@ static void __init u8500_cryp1_hash1_init(struct device *parent)
 }
 
 static struct platform_device *snowball_platform_devs[] __initdata = {
-	&snowball_key_dev,
 	&snowball_sbnet_dev,
 	&snowball_gpio_en_3v3_regulator_dev,
 	&u8500_cpufreq_cooling_device,
-- 
1.8.1.2

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

* [PATCH 06/40] ARM: ux500: Disable Snowball's SMSC911x Ethernet when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 32 --------------------------------
 1 file changed, 32 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index dcd482b..062f8bf 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -33,7 +33,6 @@
 #include <linux/mfd/abx500/ab8500-codec.h>
 #include <linux/platform_data/leds-lp55xx.h>
 #include <linux/input.h>
-#include <linux/smsc911x.h>
 #include <linux/gpio_keys.h>
 #include <linux/delay.h>
 #include <linux/leds.h>
@@ -119,36 +118,6 @@ static struct ab8500_codec_platform_data ab8500_codec_pdata = {
 	.ear_cmv = EAR_CMV_0_95V
 };
 
-static struct smsc911x_platform_config snowball_sbnet_cfg = {
-	.irq_polarity = SMSC911X_IRQ_POLARITY_ACTIVE_HIGH,
-	.irq_type = SMSC911X_IRQ_TYPE_PUSH_PULL,
-	.flags = SMSC911X_USE_16BIT | SMSC911X_FORCE_INTERNAL_PHY,
-	.shift = 1,
-};
-
-static struct resource sbnet_res[] = {
-	{
-		.name = "smsc911x-memory",
-		.start = (0x5000 << 16),
-		.end  =  (0x5000 << 16) + 0xffff,
-		.flags = IORESOURCE_MEM,
-	},
-	{
-		.start = NOMADIK_GPIO_TO_IRQ(140),
-		.end = NOMADIK_GPIO_TO_IRQ(140),
-		.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE,
-	},
-};
-
-static struct platform_device snowball_sbnet_dev = {
-	.name           = "smsc911x",
-	.num_resources  = ARRAY_SIZE(sbnet_res),
-	.resource       = sbnet_res,
-	.dev            = {
-		.platform_data = &snowball_sbnet_cfg,
-	},
-};
-
 struct ab8500_platform_data ab8500_platdata = {
 	.irq_base	= MOP500_AB8500_IRQ_BASE,
 	.regulator	= &ab8500_regulator_plat_data,
@@ -399,7 +368,6 @@ static void __init u8500_cryp1_hash1_init(struct device *parent)
 }
 
 static struct platform_device *snowball_platform_devs[] __initdata = {
-	&snowball_sbnet_dev,
 	&snowball_gpio_en_3v3_regulator_dev,
 	&u8500_cpufreq_cooling_device,
 	&sdi0_regulator,
-- 
1.8.1.2


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

* [PATCH 06/40] ARM: ux500: Disable Snowball's SMSC911x Ethernet when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 32 --------------------------------
 1 file changed, 32 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index dcd482b..062f8bf 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -33,7 +33,6 @@
 #include <linux/mfd/abx500/ab8500-codec.h>
 #include <linux/platform_data/leds-lp55xx.h>
 #include <linux/input.h>
-#include <linux/smsc911x.h>
 #include <linux/gpio_keys.h>
 #include <linux/delay.h>
 #include <linux/leds.h>
@@ -119,36 +118,6 @@ static struct ab8500_codec_platform_data ab8500_codec_pdata = {
 	.ear_cmv = EAR_CMV_0_95V
 };
 
-static struct smsc911x_platform_config snowball_sbnet_cfg = {
-	.irq_polarity = SMSC911X_IRQ_POLARITY_ACTIVE_HIGH,
-	.irq_type = SMSC911X_IRQ_TYPE_PUSH_PULL,
-	.flags = SMSC911X_USE_16BIT | SMSC911X_FORCE_INTERNAL_PHY,
-	.shift = 1,
-};
-
-static struct resource sbnet_res[] = {
-	{
-		.name = "smsc911x-memory",
-		.start = (0x5000 << 16),
-		.end  =  (0x5000 << 16) + 0xffff,
-		.flags = IORESOURCE_MEM,
-	},
-	{
-		.start = NOMADIK_GPIO_TO_IRQ(140),
-		.end = NOMADIK_GPIO_TO_IRQ(140),
-		.flags = IORESOURCE_IRQ | IORESOURCE_IRQ_HIGHEDGE,
-	},
-};
-
-static struct platform_device snowball_sbnet_dev = {
-	.name           = "smsc911x",
-	.num_resources  = ARRAY_SIZE(sbnet_res),
-	.resource       = sbnet_res,
-	.dev            = {
-		.platform_data = &snowball_sbnet_cfg,
-	},
-};
-
 struct ab8500_platform_data ab8500_platdata = {
 	.irq_base	= MOP500_AB8500_IRQ_BASE,
 	.regulator	= &ab8500_regulator_plat_data,
@@ -399,7 +368,6 @@ static void __init u8500_cryp1_hash1_init(struct device *parent)
 }
 
 static struct platform_device *snowball_platform_devs[] __initdata = {
-	&snowball_sbnet_dev,
 	&snowball_gpio_en_3v3_regulator_dev,
 	&u8500_cpufreq_cooling_device,
 	&sdi0_regulator,
-- 
1.8.1.2

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

* [PATCH 07/40] ARM: ux500: Remove support for Snowball's Ethernet regulator when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 18 ------------------
 1 file changed, 18 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 062f8bf..68bd9d3 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -54,23 +54,6 @@
 #include "board-mop500.h"
 #include "board-mop500-regulators.h"
 
-static struct fixed_voltage_config snowball_gpio_en_3v3_data = {
-       .supply_name            = "EN-3V3",
-       .gpio                   = SNOWBALL_EN_3V3_ETH_GPIO,
-       .microvolts             = 3300000,
-       .enable_high            = 1,
-       .init_data              = &gpio_en_3v3_regulator,
-       .startup_delay          = 5000, /* 1200us */
-};
-
-static struct platform_device snowball_gpio_en_3v3_regulator_dev = {
-       .name   = "reg-fixed-voltage",
-       .id     = 1,
-       .dev    = {
-               .platform_data  = &snowball_gpio_en_3v3_data,
-       },
-};
-
 /* Dynamically populated. */
 static struct gpio sdi0_reg_gpios[] = {
 	{ 0, GPIOF_OUT_INIT_LOW, "mmci_vsel" },
@@ -368,7 +351,6 @@ static void __init u8500_cryp1_hash1_init(struct device *parent)
 }
 
 static struct platform_device *snowball_platform_devs[] __initdata = {
-	&snowball_gpio_en_3v3_regulator_dev,
 	&u8500_cpufreq_cooling_device,
 	&sdi0_regulator,
 };
-- 
1.8.1.2


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

* [PATCH 07/40] ARM: ux500: Remove support for Snowball's Ethernet regulator when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 18 ------------------
 1 file changed, 18 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 062f8bf..68bd9d3 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -54,23 +54,6 @@
 #include "board-mop500.h"
 #include "board-mop500-regulators.h"
 
-static struct fixed_voltage_config snowball_gpio_en_3v3_data = {
-       .supply_name            = "EN-3V3",
-       .gpio                   = SNOWBALL_EN_3V3_ETH_GPIO,
-       .microvolts             = 3300000,
-       .enable_high            = 1,
-       .init_data              = &gpio_en_3v3_regulator,
-       .startup_delay          = 5000, /* 1200us */
-};
-
-static struct platform_device snowball_gpio_en_3v3_regulator_dev = {
-       .name   = "reg-fixed-voltage",
-       .id     = 1,
-       .dev    = {
-               .platform_data  = &snowball_gpio_en_3v3_data,
-       },
-};
-
 /* Dynamically populated. */
 static struct gpio sdi0_reg_gpios[] = {
 	{ 0, GPIOF_OUT_INIT_LOW, "mmci_vsel" },
@@ -368,7 +351,6 @@ static void __init u8500_cryp1_hash1_init(struct device *parent)
 }
 
 static struct platform_device *snowball_platform_devs[] __initdata = {
-	&snowball_gpio_en_3v3_regulator_dev,
 	&u8500_cpufreq_cooling_device,
 	&sdi0_regulator,
 };
-- 
1.8.1.2

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

* [PATCH 08/40] ARM: ux500: Disable Snowball's CPUFreq functionality when booting with ATAGs enabled
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 68bd9d3..deda6a1 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -108,10 +108,6 @@ struct ab8500_platform_data ab8500_platdata = {
 	.codec		= &ab8500_codec_pdata,
 };
 
-static struct platform_device u8500_cpufreq_cooling_device = {
-	.name           = "db8500-cpufreq-cooling",
-};
-
 /*
  * TC35892
  */
@@ -351,7 +347,6 @@ static void __init u8500_cryp1_hash1_init(struct device *parent)
 }
 
 static struct platform_device *snowball_platform_devs[] __initdata = {
-	&u8500_cpufreq_cooling_device,
 	&sdi0_regulator,
 };
 
-- 
1.8.1.2


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

* [PATCH 08/40] ARM: ux500: Disable Snowball's CPUFreq functionality when booting with ATAGs enabled
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 68bd9d3..deda6a1 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -108,10 +108,6 @@ struct ab8500_platform_data ab8500_platdata = {
 	.codec		= &ab8500_codec_pdata,
 };
 
-static struct platform_device u8500_cpufreq_cooling_device = {
-	.name           = "db8500-cpufreq-cooling",
-};
-
 /*
  * TC35892
  */
@@ -351,7 +347,6 @@ static void __init u8500_cryp1_hash1_init(struct device *parent)
 }
 
 static struct platform_device *snowball_platform_devs[] __initdata = {
-	&u8500_cpufreq_cooling_device,
 	&sdi0_regulator,
 };
 
-- 
1.8.1.2

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

* [PATCH 09/40] ARM: ux500: Purge SDI regulator support when booting with ATAGs enable
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 53 --------------------------------------
 1 file changed, 53 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index deda6a1..b8b5ebe 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -26,7 +26,6 @@
 #include <linux/regulator/ab8500.h>
 #include <linux/regulator/fixed.h>
 #include <linux/regulator/driver.h>
-#include <linux/regulator/gpio-regulator.h>
 #include <linux/mfd/tc3589x.h>
 #include <linux/mfd/tps6105x.h>
 #include <linux/mfd/abx500/ab8500-gpio.h>
@@ -54,37 +53,6 @@
 #include "board-mop500.h"
 #include "board-mop500-regulators.h"
 
-/* Dynamically populated. */
-static struct gpio sdi0_reg_gpios[] = {
-	{ 0, GPIOF_OUT_INIT_LOW, "mmci_vsel" },
-};
-
-static struct gpio_regulator_state sdi0_reg_states[] = {
-	{ .value = 2900000, .gpios = (0 << 0) },
-	{ .value = 1800000, .gpios = (1 << 0) },
-};
-
-static struct gpio_regulator_config sdi0_reg_info = {
-	.supply_name		= "ext-mmc-level-shifter",
-	.gpios			= sdi0_reg_gpios,
-	.nr_gpios		= ARRAY_SIZE(sdi0_reg_gpios),
-	.states			= sdi0_reg_states,
-	.nr_states		= ARRAY_SIZE(sdi0_reg_states),
-	.type			= REGULATOR_VOLTAGE,
-	.enable_high		= 1,
-	.enabled_at_boot	= 0,
-	.init_data		= &sdi0_reg_init_data,
-	.startup_delay		= 100,
-};
-
-static struct platform_device sdi0_regulator = {
-	.name = "gpio-regulator",
-	.id   = -1,
-	.dev  = {
-		.platform_data = &sdi0_reg_info,
-	},
-};
-
 static struct abx500_gpio_platform_data ab8500_gpio_pdata = {
 	.gpio_base		= MOP500_AB8500_PIN_GPIO(1),
 };
@@ -233,7 +201,6 @@ static struct hash_platform_data u8500_hash1_platform_data = {
 /* add any platform devices here - TODO */
 static struct platform_device *mop500_platform_devs[] __initdata = {
 	&mop500_gpio_keys_device,
-	&sdi0_regulator,
 };
 
 #ifdef CONFIG_STE_DMA40
@@ -346,10 +313,6 @@ static void __init u8500_cryp1_hash1_init(struct device *parent)
 	db8500_add_hash1(parent, &u8500_hash1_platform_data);
 }
 
-static struct platform_device *snowball_platform_devs[] __initdata = {
-	&sdi0_regulator,
-};
-
 static void __init mop500_init_machine(void)
 {
 	struct device *parent = NULL;
@@ -359,9 +322,6 @@ static void __init mop500_init_machine(void)
 	platform_device_register(&db8500_prcmu_device);
 	mop500_gpio_keys[0].gpio = GPIO_PROX_SENSOR;
 
-	sdi0_reg_info.enable_gpio = GPIO_SDMMC_EN;
-	sdi0_reg_info.gpios[0].gpio = GPIO_SDMMC_1V8_3V_SEL;
-
 	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
@@ -391,22 +351,12 @@ static void __init mop500_init_machine(void)
 static void __init snowball_init_machine(void)
 {
 	struct device *parent = NULL;
-	int i;
 
 	platform_device_register(&db8500_prcmu_device);
 
-	sdi0_reg_info.enable_gpio = SNOWBALL_SDMMC_EN_GPIO;
-	sdi0_reg_info.gpios[0].gpio = SNOWBALL_SDMMC_1V8_3V_GPIO;
-
 	snowball_pinmaps_init();
 	parent = u8500_init_devices();
 
-	for (i = 0; i < ARRAY_SIZE(snowball_platform_devs); i++)
-		snowball_platform_devs[i]->dev.parent = parent;
-
-	platform_add_devices(snowball_platform_devs,
-			ARRAY_SIZE(snowball_platform_devs));
-
 	mop500_i2c_init(parent);
 	snowball_sdi_init(parent);
 	mop500_spi_init(parent);
@@ -432,9 +382,6 @@ static void __init hrefv60_init_machine(void)
 	 */
 	mop500_gpio_keys[0].gpio = HREFV60_PROX_SENSE_GPIO;
 
-	sdi0_reg_info.enable_gpio = HREFV60_SDMMC_EN_GPIO;
-	sdi0_reg_info.gpios[0].gpio = HREFV60_SDMMC_1V8_3V_GPIO;
-
 	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
-- 
1.8.1.2


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

* [PATCH 09/40] ARM: ux500: Purge SDI regulator support when booting with ATAGs enable
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 53 --------------------------------------
 1 file changed, 53 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index deda6a1..b8b5ebe 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -26,7 +26,6 @@
 #include <linux/regulator/ab8500.h>
 #include <linux/regulator/fixed.h>
 #include <linux/regulator/driver.h>
-#include <linux/regulator/gpio-regulator.h>
 #include <linux/mfd/tc3589x.h>
 #include <linux/mfd/tps6105x.h>
 #include <linux/mfd/abx500/ab8500-gpio.h>
@@ -54,37 +53,6 @@
 #include "board-mop500.h"
 #include "board-mop500-regulators.h"
 
-/* Dynamically populated. */
-static struct gpio sdi0_reg_gpios[] = {
-	{ 0, GPIOF_OUT_INIT_LOW, "mmci_vsel" },
-};
-
-static struct gpio_regulator_state sdi0_reg_states[] = {
-	{ .value = 2900000, .gpios = (0 << 0) },
-	{ .value = 1800000, .gpios = (1 << 0) },
-};
-
-static struct gpio_regulator_config sdi0_reg_info = {
-	.supply_name		= "ext-mmc-level-shifter",
-	.gpios			= sdi0_reg_gpios,
-	.nr_gpios		= ARRAY_SIZE(sdi0_reg_gpios),
-	.states			= sdi0_reg_states,
-	.nr_states		= ARRAY_SIZE(sdi0_reg_states),
-	.type			= REGULATOR_VOLTAGE,
-	.enable_high		= 1,
-	.enabled_at_boot	= 0,
-	.init_data		= &sdi0_reg_init_data,
-	.startup_delay		= 100,
-};
-
-static struct platform_device sdi0_regulator = {
-	.name = "gpio-regulator",
-	.id   = -1,
-	.dev  = {
-		.platform_data = &sdi0_reg_info,
-	},
-};
-
 static struct abx500_gpio_platform_data ab8500_gpio_pdata = {
 	.gpio_base		= MOP500_AB8500_PIN_GPIO(1),
 };
@@ -233,7 +201,6 @@ static struct hash_platform_data u8500_hash1_platform_data = {
 /* add any platform devices here - TODO */
 static struct platform_device *mop500_platform_devs[] __initdata = {
 	&mop500_gpio_keys_device,
-	&sdi0_regulator,
 };
 
 #ifdef CONFIG_STE_DMA40
@@ -346,10 +313,6 @@ static void __init u8500_cryp1_hash1_init(struct device *parent)
 	db8500_add_hash1(parent, &u8500_hash1_platform_data);
 }
 
-static struct platform_device *snowball_platform_devs[] __initdata = {
-	&sdi0_regulator,
-};
-
 static void __init mop500_init_machine(void)
 {
 	struct device *parent = NULL;
@@ -359,9 +322,6 @@ static void __init mop500_init_machine(void)
 	platform_device_register(&db8500_prcmu_device);
 	mop500_gpio_keys[0].gpio = GPIO_PROX_SENSOR;
 
-	sdi0_reg_info.enable_gpio = GPIO_SDMMC_EN;
-	sdi0_reg_info.gpios[0].gpio = GPIO_SDMMC_1V8_3V_SEL;
-
 	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
@@ -391,22 +351,12 @@ static void __init mop500_init_machine(void)
 static void __init snowball_init_machine(void)
 {
 	struct device *parent = NULL;
-	int i;
 
 	platform_device_register(&db8500_prcmu_device);
 
-	sdi0_reg_info.enable_gpio = SNOWBALL_SDMMC_EN_GPIO;
-	sdi0_reg_info.gpios[0].gpio = SNOWBALL_SDMMC_1V8_3V_GPIO;
-
 	snowball_pinmaps_init();
 	parent = u8500_init_devices();
 
-	for (i = 0; i < ARRAY_SIZE(snowball_platform_devs); i++)
-		snowball_platform_devs[i]->dev.parent = parent;
-
-	platform_add_devices(snowball_platform_devs,
-			ARRAY_SIZE(snowball_platform_devs));
-
 	mop500_i2c_init(parent);
 	snowball_sdi_init(parent);
 	mop500_spi_init(parent);
@@ -432,9 +382,6 @@ static void __init hrefv60_init_machine(void)
 	 */
 	mop500_gpio_keys[0].gpio = HREFV60_PROX_SENSE_GPIO;
 
-	sdi0_reg_info.enable_gpio = HREFV60_SDMMC_EN_GPIO;
-	sdi0_reg_info.gpios[0].gpio = HREFV60_SDMMC_1V8_3V_GPIO;
-
 	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
-- 
1.8.1.2

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

* [PATCH 10/40] ARM: ux500: Deactivate Crypt support when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   | 15 ---------------
 arch/arm/mach-ux500/devices-common.h | 26 --------------------------
 arch/arm/mach-ux500/devices-db8500.h |  2 --
 arch/arm/mach-ux500/devices.h        |  1 -
 4 files changed, 44 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index b8b5ebe..f75ac95 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -45,7 +45,6 @@
 #include "setup.h"
 #include "devices.h"
 #include "irqs.h"
-#include <linux/platform_data/crypto-ux500.h>
 
 #include "ste-dma40-db8500.h"
 #include "db8500-regs.h"
@@ -174,19 +173,6 @@ static void mop500_prox_deactivate(struct device *dev)
 	regulator_put(prox_regulator);
 }
 
-static struct cryp_platform_data u8500_cryp1_platform_data = {
-		.mem_to_engine = {
-				.dir = DMA_MEM_TO_DEV,
-				.dev_type = DB8500_DMA_DEV48_CAC1,
-				.mode = STEDMA40_MODE_LOGICAL,
-		},
-		.engine_to_mem = {
-				.dir = DMA_DEV_TO_MEM,
-				.dev_type = DB8500_DMA_DEV48_CAC1,
-				.mode = STEDMA40_MODE_LOGICAL,
-		}
-};
-
 static struct stedma40_chan_cfg u8500_hash_dma_cfg_tx = {
 		.dir = DMA_MEM_TO_DEV,
 		.dev_type = DB8500_DMA_DEV50_HAC1_TX,
@@ -309,7 +295,6 @@ static void __init mop500_uart_init(struct device *parent)
 
 static void __init u8500_cryp1_hash1_init(struct device *parent)
 {
-	db8500_add_cryp1(parent, &u8500_cryp1_platform_data);
 	db8500_add_hash1(parent, &u8500_hash1_platform_data);
 }
 
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 7eb1272..b32f179 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -13,7 +13,6 @@
 #include <linux/sys_soc.h>
 #include <linux/amba/bus.h>
 #include <linux/platform_data/i2c-nomadik.h>
-#include <linux/platform_data/crypto-ux500.h>
 
 struct spi_master_cntlr;
 
@@ -65,31 +64,6 @@ dbx500_add_rtc(struct device *parent, resource_size_t base, int irq)
 				0, NULL, 0);
 }
 
-struct cryp_platform_data;
-
-static inline struct platform_device *
-dbx500_add_cryp1(struct device *parent, int id, resource_size_t base, int irq,
-		struct cryp_platform_data *pdata)
-{
-	struct resource res[] = {
-			DEFINE_RES_MEM(base, SZ_4K),
-			DEFINE_RES_IRQ(irq),
-	};
-
-	struct platform_device_info pdevinfo = {
-			.parent = parent,
-			.name = "cryp1",
-			.id = id,
-			.res = res,
-			.num_res = ARRAY_SIZE(res),
-			.data = pdata,
-			.size_data = sizeof(*pdata),
-			.dma_mask = DMA_BIT_MASK(32),
-	};
-
-	return platform_device_register_full(&pdevinfo);
-}
-
 struct hash_platform_data;
 
 static inline struct platform_device *
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index c393932..7331b7e 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -109,8 +109,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	dbx500_add_uart(parent, "uart2", U8500_UART2_BASE, \
 			IRQ_DB8500_UART2, pdata)
 
-#define db8500_add_cryp1(parent, pdata) \
-	dbx500_add_cryp1(parent, -1, U8500_CRYP1_BASE, IRQ_DB8500_CRYP1, pdata)
 #define db8500_add_hash1(parent, pdata) \
 	dbx500_add_hash1(parent, -1, U8500_HASH1_BASE, pdata)
 #endif
diff --git a/arch/arm/mach-ux500/devices.h b/arch/arm/mach-ux500/devices.h
index cbc6f1e..a5183e3 100644
--- a/arch/arm/mach-ux500/devices.h
+++ b/arch/arm/mach-ux500/devices.h
@@ -15,7 +15,6 @@ extern struct platform_device u8500_gpio_devs[];
 extern struct amba_device ux500_pl031_device;
 
 extern struct platform_device ux500_hash1_device;
-extern struct platform_device ux500_cryp1_device;
 
 extern struct platform_device u8500_dma40_device;
 extern struct platform_device ux500_ske_keypad_device;
-- 
1.8.1.2


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

* [PATCH 10/40] ARM: ux500: Deactivate Crypt support when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   | 15 ---------------
 arch/arm/mach-ux500/devices-common.h | 26 --------------------------
 arch/arm/mach-ux500/devices-db8500.h |  2 --
 arch/arm/mach-ux500/devices.h        |  1 -
 4 files changed, 44 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index b8b5ebe..f75ac95 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -45,7 +45,6 @@
 #include "setup.h"
 #include "devices.h"
 #include "irqs.h"
-#include <linux/platform_data/crypto-ux500.h>
 
 #include "ste-dma40-db8500.h"
 #include "db8500-regs.h"
@@ -174,19 +173,6 @@ static void mop500_prox_deactivate(struct device *dev)
 	regulator_put(prox_regulator);
 }
 
-static struct cryp_platform_data u8500_cryp1_platform_data = {
-		.mem_to_engine = {
-				.dir = DMA_MEM_TO_DEV,
-				.dev_type = DB8500_DMA_DEV48_CAC1,
-				.mode = STEDMA40_MODE_LOGICAL,
-		},
-		.engine_to_mem = {
-				.dir = DMA_DEV_TO_MEM,
-				.dev_type = DB8500_DMA_DEV48_CAC1,
-				.mode = STEDMA40_MODE_LOGICAL,
-		}
-};
-
 static struct stedma40_chan_cfg u8500_hash_dma_cfg_tx = {
 		.dir = DMA_MEM_TO_DEV,
 		.dev_type = DB8500_DMA_DEV50_HAC1_TX,
@@ -309,7 +295,6 @@ static void __init mop500_uart_init(struct device *parent)
 
 static void __init u8500_cryp1_hash1_init(struct device *parent)
 {
-	db8500_add_cryp1(parent, &u8500_cryp1_platform_data);
 	db8500_add_hash1(parent, &u8500_hash1_platform_data);
 }
 
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 7eb1272..b32f179 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -13,7 +13,6 @@
 #include <linux/sys_soc.h>
 #include <linux/amba/bus.h>
 #include <linux/platform_data/i2c-nomadik.h>
-#include <linux/platform_data/crypto-ux500.h>
 
 struct spi_master_cntlr;
 
@@ -65,31 +64,6 @@ dbx500_add_rtc(struct device *parent, resource_size_t base, int irq)
 				0, NULL, 0);
 }
 
-struct cryp_platform_data;
-
-static inline struct platform_device *
-dbx500_add_cryp1(struct device *parent, int id, resource_size_t base, int irq,
-		struct cryp_platform_data *pdata)
-{
-	struct resource res[] = {
-			DEFINE_RES_MEM(base, SZ_4K),
-			DEFINE_RES_IRQ(irq),
-	};
-
-	struct platform_device_info pdevinfo = {
-			.parent = parent,
-			.name = "cryp1",
-			.id = id,
-			.res = res,
-			.num_res = ARRAY_SIZE(res),
-			.data = pdata,
-			.size_data = sizeof(*pdata),
-			.dma_mask = DMA_BIT_MASK(32),
-	};
-
-	return platform_device_register_full(&pdevinfo);
-}
-
 struct hash_platform_data;
 
 static inline struct platform_device *
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index c393932..7331b7e 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -109,8 +109,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	dbx500_add_uart(parent, "uart2", U8500_UART2_BASE, \
 			IRQ_DB8500_UART2, pdata)
 
-#define db8500_add_cryp1(parent, pdata) \
-	dbx500_add_cryp1(parent, -1, U8500_CRYP1_BASE, IRQ_DB8500_CRYP1, pdata)
 #define db8500_add_hash1(parent, pdata) \
 	dbx500_add_hash1(parent, -1, U8500_HASH1_BASE, pdata)
 #endif
diff --git a/arch/arm/mach-ux500/devices.h b/arch/arm/mach-ux500/devices.h
index cbc6f1e..a5183e3 100644
--- a/arch/arm/mach-ux500/devices.h
+++ b/arch/arm/mach-ux500/devices.h
@@ -15,7 +15,6 @@ extern struct platform_device u8500_gpio_devs[];
 extern struct amba_device ux500_pl031_device;
 
 extern struct platform_device ux500_hash1_device;
-extern struct platform_device ux500_cryp1_device;
 
 extern struct platform_device u8500_dma40_device;
 extern struct platform_device ux500_ske_keypad_device;
-- 
1.8.1.2

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

* [PATCH 11/40] ARM: ux500: Rip out Hash support when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   | 20 --------------------
 arch/arm/mach-ux500/devices-common.h | 24 ------------------------
 arch/arm/mach-ux500/devices-db8500.h |  2 --
 arch/arm/mach-ux500/devices.h        |  2 --
 4 files changed, 48 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index f75ac95..fec8733 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -173,17 +173,6 @@ static void mop500_prox_deactivate(struct device *dev)
 	regulator_put(prox_regulator);
 }
 
-static struct stedma40_chan_cfg u8500_hash_dma_cfg_tx = {
-		.dir = DMA_MEM_TO_DEV,
-		.dev_type = DB8500_DMA_DEV50_HAC1_TX,
-		.mode = STEDMA40_MODE_LOGICAL,
-};
-
-static struct hash_platform_data u8500_hash1_platform_data = {
-		.mem_to_engine = &u8500_hash_dma_cfg_tx,
-		.dma_filter = stedma40_filter,
-};
-
 /* add any platform devices here - TODO */
 static struct platform_device *mop500_platform_devs[] __initdata = {
 	&mop500_gpio_keys_device,
@@ -293,11 +282,6 @@ static void __init mop500_uart_init(struct device *parent)
 	db8500_add_uart2(parent, &uart2_plat);
 }
 
-static void __init u8500_cryp1_hash1_init(struct device *parent)
-{
-	db8500_add_hash1(parent, &u8500_hash1_platform_data);
-}
-
 static void __init mop500_init_machine(void)
 {
 	struct device *parent = NULL;
@@ -321,8 +305,6 @@ static void __init mop500_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
-	u8500_cryp1_hash1_init(parent);
-
 	i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);
 
 	i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
@@ -347,8 +329,6 @@ static void __init snowball_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
-	u8500_cryp1_hash1_init(parent);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index b32f179..04fa009 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -64,30 +64,6 @@ dbx500_add_rtc(struct device *parent, resource_size_t base, int irq)
 				0, NULL, 0);
 }
 
-struct hash_platform_data;
-
-static inline struct platform_device *
-dbx500_add_hash1(struct device *parent, int id, resource_size_t base,
-		struct hash_platform_data *pdata)
-{
-	struct resource res[] = {
-			DEFINE_RES_MEM(base, SZ_4K),
-	};
-
-	struct platform_device_info pdevinfo = {
-			.parent = parent,
-			.name = "hash1",
-			.id = id,
-			.res = res,
-			.num_res = ARRAY_SIZE(res),
-			.data = pdata,
-			.size_data = sizeof(*pdata),
-			.dma_mask = DMA_BIT_MASK(32),
-	};
-
-	return platform_device_register_full(&pdevinfo);
-}
-
 struct nmk_gpio_platform_data;
 
 void dbx500_add_gpios(struct device *parent, resource_size_t *base, int num,
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 7331b7e..3d32668 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -109,6 +109,4 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	dbx500_add_uart(parent, "uart2", U8500_UART2_BASE, \
 			IRQ_DB8500_UART2, pdata)
 
-#define db8500_add_hash1(parent, pdata) \
-	dbx500_add_hash1(parent, -1, U8500_HASH1_BASE, pdata)
 #endif
diff --git a/arch/arm/mach-ux500/devices.h b/arch/arm/mach-ux500/devices.h
index a5183e3..9b5eb69 100644
--- a/arch/arm/mach-ux500/devices.h
+++ b/arch/arm/mach-ux500/devices.h
@@ -14,8 +14,6 @@ extern struct platform_device u8500_gpio_devs[];
 
 extern struct amba_device ux500_pl031_device;
 
-extern struct platform_device ux500_hash1_device;
-
 extern struct platform_device u8500_dma40_device;
 extern struct platform_device ux500_ske_keypad_device;
 
-- 
1.8.1.2


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

* [PATCH 11/40] ARM: ux500: Rip out Hash support when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   | 20 --------------------
 arch/arm/mach-ux500/devices-common.h | 24 ------------------------
 arch/arm/mach-ux500/devices-db8500.h |  2 --
 arch/arm/mach-ux500/devices.h        |  2 --
 4 files changed, 48 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index f75ac95..fec8733 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -173,17 +173,6 @@ static void mop500_prox_deactivate(struct device *dev)
 	regulator_put(prox_regulator);
 }
 
-static struct stedma40_chan_cfg u8500_hash_dma_cfg_tx = {
-		.dir = DMA_MEM_TO_DEV,
-		.dev_type = DB8500_DMA_DEV50_HAC1_TX,
-		.mode = STEDMA40_MODE_LOGICAL,
-};
-
-static struct hash_platform_data u8500_hash1_platform_data = {
-		.mem_to_engine = &u8500_hash_dma_cfg_tx,
-		.dma_filter = stedma40_filter,
-};
-
 /* add any platform devices here - TODO */
 static struct platform_device *mop500_platform_devs[] __initdata = {
 	&mop500_gpio_keys_device,
@@ -293,11 +282,6 @@ static void __init mop500_uart_init(struct device *parent)
 	db8500_add_uart2(parent, &uart2_plat);
 }
 
-static void __init u8500_cryp1_hash1_init(struct device *parent)
-{
-	db8500_add_hash1(parent, &u8500_hash1_platform_data);
-}
-
 static void __init mop500_init_machine(void)
 {
 	struct device *parent = NULL;
@@ -321,8 +305,6 @@ static void __init mop500_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
-	u8500_cryp1_hash1_init(parent);
-
 	i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);
 
 	i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
@@ -347,8 +329,6 @@ static void __init snowball_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
-	u8500_cryp1_hash1_init(parent);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index b32f179..04fa009 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -64,30 +64,6 @@ dbx500_add_rtc(struct device *parent, resource_size_t base, int irq)
 				0, NULL, 0);
 }
 
-struct hash_platform_data;
-
-static inline struct platform_device *
-dbx500_add_hash1(struct device *parent, int id, resource_size_t base,
-		struct hash_platform_data *pdata)
-{
-	struct resource res[] = {
-			DEFINE_RES_MEM(base, SZ_4K),
-	};
-
-	struct platform_device_info pdevinfo = {
-			.parent = parent,
-			.name = "hash1",
-			.id = id,
-			.res = res,
-			.num_res = ARRAY_SIZE(res),
-			.data = pdata,
-			.size_data = sizeof(*pdata),
-			.dma_mask = DMA_BIT_MASK(32),
-	};
-
-	return platform_device_register_full(&pdevinfo);
-}
-
 struct nmk_gpio_platform_data;
 
 void dbx500_add_gpios(struct device *parent, resource_size_t *base, int num,
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 7331b7e..3d32668 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -109,6 +109,4 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	dbx500_add_uart(parent, "uart2", U8500_UART2_BASE, \
 			IRQ_DB8500_UART2, pdata)
 
-#define db8500_add_hash1(parent, pdata) \
-	dbx500_add_hash1(parent, -1, U8500_HASH1_BASE, pdata)
 #endif
diff --git a/arch/arm/mach-ux500/devices.h b/arch/arm/mach-ux500/devices.h
index a5183e3..9b5eb69 100644
--- a/arch/arm/mach-ux500/devices.h
+++ b/arch/arm/mach-ux500/devices.h
@@ -14,8 +14,6 @@ extern struct platform_device u8500_gpio_devs[];
 
 extern struct amba_device ux500_pl031_device;
 
-extern struct platform_device ux500_hash1_device;
-
 extern struct platform_device u8500_dma40_device;
 extern struct platform_device ux500_ske_keypad_device;
 
-- 
1.8.1.2

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

* [PATCH 12/40] ARM: ux500: Prevent CODEC platform data from being passed when booting ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index fec8733..f185e53 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -29,7 +29,6 @@
 #include <linux/mfd/tc3589x.h>
 #include <linux/mfd/tps6105x.h>
 #include <linux/mfd/abx500/ab8500-gpio.h>
-#include <linux/mfd/abx500/ab8500-codec.h>
 #include <linux/platform_data/leds-lp55xx.h>
 #include <linux/input.h>
 #include <linux/gpio_keys.h>
@@ -56,23 +55,10 @@ static struct abx500_gpio_platform_data ab8500_gpio_pdata = {
 	.gpio_base		= MOP500_AB8500_PIN_GPIO(1),
 };
 
-/* ab8500-codec */
-static struct ab8500_codec_platform_data ab8500_codec_pdata = {
-	.amics =  {
-		.mic1_type = AMIC_TYPE_DIFFERENTIAL,
-		.mic2_type = AMIC_TYPE_DIFFERENTIAL,
-		.mic1a_micbias = AMIC_MICBIAS_VAMIC1,
-		.mic1b_micbias = AMIC_MICBIAS_VAMIC1,
-		.mic2_micbias = AMIC_MICBIAS_VAMIC2
-	},
-	.ear_cmv = EAR_CMV_0_95V
-};
-
 struct ab8500_platform_data ab8500_platdata = {
 	.irq_base	= MOP500_AB8500_IRQ_BASE,
 	.regulator	= &ab8500_regulator_plat_data,
 	.gpio		= &ab8500_gpio_pdata,
-	.codec		= &ab8500_codec_pdata,
 };
 
 /*
-- 
1.8.1.2


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

* [PATCH 12/40] ARM: ux500: Prevent CODEC platform data from being passed when booting ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index fec8733..f185e53 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -29,7 +29,6 @@
 #include <linux/mfd/tc3589x.h>
 #include <linux/mfd/tps6105x.h>
 #include <linux/mfd/abx500/ab8500-gpio.h>
-#include <linux/mfd/abx500/ab8500-codec.h>
 #include <linux/platform_data/leds-lp55xx.h>
 #include <linux/input.h>
 #include <linux/gpio_keys.h>
@@ -56,23 +55,10 @@ static struct abx500_gpio_platform_data ab8500_gpio_pdata = {
 	.gpio_base		= MOP500_AB8500_PIN_GPIO(1),
 };
 
-/* ab8500-codec */
-static struct ab8500_codec_platform_data ab8500_codec_pdata = {
-	.amics =  {
-		.mic1_type = AMIC_TYPE_DIFFERENTIAL,
-		.mic2_type = AMIC_TYPE_DIFFERENTIAL,
-		.mic1a_micbias = AMIC_MICBIAS_VAMIC1,
-		.mic1b_micbias = AMIC_MICBIAS_VAMIC1,
-		.mic2_micbias = AMIC_MICBIAS_VAMIC2
-	},
-	.ear_cmv = EAR_CMV_0_95V
-};
-
 struct ab8500_platform_data ab8500_platdata = {
 	.irq_base	= MOP500_AB8500_IRQ_BASE,
 	.regulator	= &ab8500_regulator_plat_data,
 	.gpio		= &ab8500_gpio_pdata,
-	.codec		= &ab8500_codec_pdata,
 };
 
 /*
-- 
1.8.1.2

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

* [PATCH 13/40] ARM: ux500: Stop passing GPIO pdata when booitng with ATAGs enabled
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index f185e53..2c4885a 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -51,14 +51,9 @@
 #include "board-mop500.h"
 #include "board-mop500-regulators.h"
 
-static struct abx500_gpio_platform_data ab8500_gpio_pdata = {
-	.gpio_base		= MOP500_AB8500_PIN_GPIO(1),
-};
-
 struct ab8500_platform_data ab8500_platdata = {
 	.irq_base	= MOP500_AB8500_IRQ_BASE,
 	.regulator	= &ab8500_regulator_plat_data,
-	.gpio		= &ab8500_gpio_pdata,
 };
 
 /*
-- 
1.8.1.2


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

* [PATCH 13/40] ARM: ux500: Stop passing GPIO pdata when booitng with ATAGs enabled
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index f185e53..2c4885a 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -51,14 +51,9 @@
 #include "board-mop500.h"
 #include "board-mop500-regulators.h"
 
-static struct abx500_gpio_platform_data ab8500_gpio_pdata = {
-	.gpio_base		= MOP500_AB8500_PIN_GPIO(1),
-};
-
 struct ab8500_platform_data ab8500_platdata = {
 	.irq_base	= MOP500_AB8500_IRQ_BASE,
 	.regulator	= &ab8500_regulator_plat_data,
-	.gpio		= &ab8500_gpio_pdata,
 };
 
 /*
-- 
1.8.1.2

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

* [PATCH 14/40] ARM: ux500: Remove TC35892 Flexible IO Expander when booting ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-sdi.c      | 12 ------
 arch/arm/mach-ux500/board-mop500-u8500uib.c | 64 -----------------------------
 arch/arm/mach-ux500/board-mop500.c          | 46 ---------------------
 arch/arm/mach-ux500/board-mop500.h          |  1 -
 4 files changed, 123 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-sdi.c b/arch/arm/mach-ux500/board-mop500-sdi.c
index b3e61a3..1ae5999 100644
--- a/arch/arm/mach-ux500/board-mop500-sdi.c
+++ b/arch/arm/mach-ux500/board-mop500-sdi.c
@@ -71,12 +71,6 @@ static void sdi0_configure(struct device *parent)
 	db8500_add_sdi0(parent, &mop500_sdi0_data, U8500_SDI_V2_PERIPHID);
 }
 
-void mop500_sdi_tc35892_init(struct device *parent)
-{
-	mop500_sdi0_data.gpio_cd = GPIO_SDMMC_CD;
-	sdi0_configure(parent);
-}
-
 /*
  * SDI1 (SDIO WLAN)
  */
@@ -185,12 +179,6 @@ void __init mop500_sdi_init(struct device *parent)
 	db8500_add_sdi2(parent, &mop500_sdi2_data, U8500_SDI_V2_PERIPHID);
 	/* On-board eMMC */
 	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
-
-	/*
-	 * On boards with the TC35892 GPIO expander, sdi0 will finally
-	 * be added when the TC35892 initializes and calls
-	 * mop500_sdi_tc35892_init() above.
-	 */
 }
 
 void __init snowball_sdi_init(struct device *parent)
diff --git a/arch/arm/mach-ux500/board-mop500-u8500uib.c b/arch/arm/mach-ux500/board-mop500-u8500uib.c
index d397c19..6f6553e 100644
--- a/arch/arm/mach-ux500/board-mop500-u8500uib.c
+++ b/arch/arm/mach-ux500/board-mop500-u8500uib.c
@@ -9,8 +9,6 @@
 #include <linux/init.h>
 #include <linux/i2c.h>
 #include <linux/interrupt.h>
-#include <linux/mfd/tc3589x.h>
-#include <linux/input/matrix_keypad.h>
 
 #include "irqs.h"
 
@@ -23,70 +21,8 @@ static struct i2c_board_info __initdata mop500_i2c3_devices_u8500[] = {
 	},
 };
 
-/*
- * TC35893
- */
-static const unsigned int u8500_keymap[] = {
-	KEY(3, 1, KEY_END),
-	KEY(4, 1, KEY_POWER),
-	KEY(6, 4, KEY_VOLUMEDOWN),
-	KEY(4, 2, KEY_EMAIL),
-	KEY(3, 3, KEY_RIGHT),
-	KEY(2, 5, KEY_BACKSPACE),
-
-	KEY(6, 7, KEY_MENU),
-	KEY(5, 0, KEY_ENTER),
-	KEY(4, 3, KEY_0),
-	KEY(3, 4, KEY_DOT),
-	KEY(5, 2, KEY_UP),
-	KEY(3, 5, KEY_DOWN),
-
-	KEY(4, 5, KEY_SEND),
-	KEY(0, 5, KEY_BACK),
-	KEY(6, 2, KEY_VOLUMEUP),
-	KEY(1, 3, KEY_SPACE),
-	KEY(7, 6, KEY_LEFT),
-	KEY(5, 5, KEY_SEARCH),
-};
-
-static struct matrix_keymap_data u8500_keymap_data = {
-	.keymap		= u8500_keymap,
-	.keymap_size    = ARRAY_SIZE(u8500_keymap),
-};
-
-static struct tc3589x_keypad_platform_data tc35893_data = {
-	.krow = TC_KPD_ROWS,
-	.kcol = TC_KPD_COLUMNS,
-	.debounce_period = TC_KPD_DEBOUNCE_PERIOD,
-	.settle_time = TC_KPD_SETTLE_TIME,
-	.irqtype = IRQF_TRIGGER_FALLING,
-	.enable_wakeup = true,
-	.keymap_data    = &u8500_keymap_data,
-	.no_autorepeat  = true,
-};
-
-static struct tc3589x_platform_data tc3589x_keypad_data = {
-	.block = TC3589x_BLOCK_KEYPAD,
-	.keypad = &tc35893_data,
-	.irq_base = MOP500_EGPIO_IRQ_BASE,
-};
-
-static struct i2c_board_info __initdata mop500_i2c0_devices_u8500[] = {
-	{
-		I2C_BOARD_INFO("tc3589x", 0x44),
-		.platform_data = &tc3589x_keypad_data,
-		.irq = NOMADIK_GPIO_TO_IRQ(218),
-		.flags = I2C_CLIENT_WAKE,
-	},
-};
-
-
 void __init mop500_u8500uib_init(void)
 {
 	mop500_uib_i2c_add(3, mop500_i2c3_devices_u8500,
 			ARRAY_SIZE(mop500_i2c3_devices_u8500));
-
-	mop500_uib_i2c_add(0, mop500_i2c0_devices_u8500,
-			ARRAY_SIZE(mop500_i2c0_devices_u8500));
-
 }
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 2c4885a..66d466b 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -26,7 +26,6 @@
 #include <linux/regulator/ab8500.h>
 #include <linux/regulator/fixed.h>
 #include <linux/regulator/driver.h>
-#include <linux/mfd/tc3589x.h>
 #include <linux/mfd/tps6105x.h>
 #include <linux/mfd/abx500/ab8500-gpio.h>
 #include <linux/platform_data/leds-lp55xx.h>
@@ -56,41 +55,6 @@ struct ab8500_platform_data ab8500_platdata = {
 	.regulator	= &ab8500_regulator_plat_data,
 };
 
-/*
- * TC35892
- */
-
-static void mop500_tc35892_init(struct tc3589x *tc3589x, unsigned int base)
-{
-	struct device *parent = NULL;
-#if 0
-	/* FIXME: Is the sdi actually part of tc3589x? */
-	parent = tc3589x->dev;
-#endif
-	mop500_sdi_tc35892_init(parent);
-}
-
-static struct tc3589x_gpio_platform_data mop500_tc35892_gpio_data = {
-	.gpio_base	= MOP500_EGPIO(0),
-	.setup		= mop500_tc35892_init,
-};
-
-static struct tc3589x_platform_data mop500_tc35892_data = {
-	.block		= TC3589x_BLOCK_GPIO,
-	.gpio		= &mop500_tc35892_gpio_data,
-	.irq_base	= MOP500_EGPIO_IRQ_BASE,
-};
-
-static struct i2c_board_info __initdata mop500_i2c0_devices[] = {
-	{
-		I2C_BOARD_INFO("tc3589x", 0x42),
-		.irq		= NOMADIK_GPIO_TO_IRQ(217),
-		.platform_data  = &mop500_tc35892_data,
-	},
-};
-
-#define NUM_PRE_V60_I2C0_DEVICES 1
-
 static struct i2c_board_info __initdata mop500_i2c2_devices[] = {
 	{
 		/* Light sensor Rohm BH1780GLI */
@@ -266,7 +230,6 @@ static void __init mop500_uart_init(struct device *parent)
 static void __init mop500_init_machine(void)
 {
 	struct device *parent = NULL;
-	int i2c0_devs;
 	int i;
 
 	platform_device_register(&db8500_prcmu_device);
@@ -286,9 +249,6 @@ static void __init mop500_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_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,
 				ARRAY_SIZE(mop500_i2c2_devices));
 
@@ -317,7 +277,6 @@ static void __init snowball_init_machine(void)
 static void __init hrefv60_init_machine(void)
 {
 	struct device *parent = NULL;
-	int i2c0_devs;
 	int i;
 
 	platform_device_register(&db8500_prcmu_device);
@@ -342,11 +301,6 @@ static void __init hrefv60_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
-	i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);
-
-	i2c0_devs -= NUM_PRE_V60_I2C0_DEVICES;
-
-	i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
 	i2c_register_board_info(2, mop500_i2c2_devices,
 				ARRAY_SIZE(mop500_i2c2_devices));
 
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 3bd9b6e..cfc553c 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -98,7 +98,6 @@ extern struct stedma40_platform_data dma40_plat_data;
 extern void mop500_sdi_init(struct device *parent);
 extern void snowball_sdi_init(struct device *parent);
 extern void hrefv60_sdi_init(struct device *parent);
-extern void mop500_sdi_tc35892_init(struct device *parent);
 void __init mop500_u8500uib_init(void);
 void __init mop500_stuib_init(void);
 void __init mop500_pinmaps_init(void);
-- 
1.8.1.2


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

* [PATCH 14/40] ARM: ux500: Remove TC35892 Flexible IO Expander when booting ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-sdi.c      | 12 ------
 arch/arm/mach-ux500/board-mop500-u8500uib.c | 64 -----------------------------
 arch/arm/mach-ux500/board-mop500.c          | 46 ---------------------
 arch/arm/mach-ux500/board-mop500.h          |  1 -
 4 files changed, 123 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-sdi.c b/arch/arm/mach-ux500/board-mop500-sdi.c
index b3e61a3..1ae5999 100644
--- a/arch/arm/mach-ux500/board-mop500-sdi.c
+++ b/arch/arm/mach-ux500/board-mop500-sdi.c
@@ -71,12 +71,6 @@ static void sdi0_configure(struct device *parent)
 	db8500_add_sdi0(parent, &mop500_sdi0_data, U8500_SDI_V2_PERIPHID);
 }
 
-void mop500_sdi_tc35892_init(struct device *parent)
-{
-	mop500_sdi0_data.gpio_cd = GPIO_SDMMC_CD;
-	sdi0_configure(parent);
-}
-
 /*
  * SDI1 (SDIO WLAN)
  */
@@ -185,12 +179,6 @@ void __init mop500_sdi_init(struct device *parent)
 	db8500_add_sdi2(parent, &mop500_sdi2_data, U8500_SDI_V2_PERIPHID);
 	/* On-board eMMC */
 	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
-
-	/*
-	 * On boards with the TC35892 GPIO expander, sdi0 will finally
-	 * be added when the TC35892 initializes and calls
-	 * mop500_sdi_tc35892_init() above.
-	 */
 }
 
 void __init snowball_sdi_init(struct device *parent)
diff --git a/arch/arm/mach-ux500/board-mop500-u8500uib.c b/arch/arm/mach-ux500/board-mop500-u8500uib.c
index d397c19..6f6553e 100644
--- a/arch/arm/mach-ux500/board-mop500-u8500uib.c
+++ b/arch/arm/mach-ux500/board-mop500-u8500uib.c
@@ -9,8 +9,6 @@
 #include <linux/init.h>
 #include <linux/i2c.h>
 #include <linux/interrupt.h>
-#include <linux/mfd/tc3589x.h>
-#include <linux/input/matrix_keypad.h>
 
 #include "irqs.h"
 
@@ -23,70 +21,8 @@ static struct i2c_board_info __initdata mop500_i2c3_devices_u8500[] = {
 	},
 };
 
-/*
- * TC35893
- */
-static const unsigned int u8500_keymap[] = {
-	KEY(3, 1, KEY_END),
-	KEY(4, 1, KEY_POWER),
-	KEY(6, 4, KEY_VOLUMEDOWN),
-	KEY(4, 2, KEY_EMAIL),
-	KEY(3, 3, KEY_RIGHT),
-	KEY(2, 5, KEY_BACKSPACE),
-
-	KEY(6, 7, KEY_MENU),
-	KEY(5, 0, KEY_ENTER),
-	KEY(4, 3, KEY_0),
-	KEY(3, 4, KEY_DOT),
-	KEY(5, 2, KEY_UP),
-	KEY(3, 5, KEY_DOWN),
-
-	KEY(4, 5, KEY_SEND),
-	KEY(0, 5, KEY_BACK),
-	KEY(6, 2, KEY_VOLUMEUP),
-	KEY(1, 3, KEY_SPACE),
-	KEY(7, 6, KEY_LEFT),
-	KEY(5, 5, KEY_SEARCH),
-};
-
-static struct matrix_keymap_data u8500_keymap_data = {
-	.keymap		= u8500_keymap,
-	.keymap_size    = ARRAY_SIZE(u8500_keymap),
-};
-
-static struct tc3589x_keypad_platform_data tc35893_data = {
-	.krow = TC_KPD_ROWS,
-	.kcol = TC_KPD_COLUMNS,
-	.debounce_period = TC_KPD_DEBOUNCE_PERIOD,
-	.settle_time = TC_KPD_SETTLE_TIME,
-	.irqtype = IRQF_TRIGGER_FALLING,
-	.enable_wakeup = true,
-	.keymap_data    = &u8500_keymap_data,
-	.no_autorepeat  = true,
-};
-
-static struct tc3589x_platform_data tc3589x_keypad_data = {
-	.block = TC3589x_BLOCK_KEYPAD,
-	.keypad = &tc35893_data,
-	.irq_base = MOP500_EGPIO_IRQ_BASE,
-};
-
-static struct i2c_board_info __initdata mop500_i2c0_devices_u8500[] = {
-	{
-		I2C_BOARD_INFO("tc3589x", 0x44),
-		.platform_data = &tc3589x_keypad_data,
-		.irq = NOMADIK_GPIO_TO_IRQ(218),
-		.flags = I2C_CLIENT_WAKE,
-	},
-};
-
-
 void __init mop500_u8500uib_init(void)
 {
 	mop500_uib_i2c_add(3, mop500_i2c3_devices_u8500,
 			ARRAY_SIZE(mop500_i2c3_devices_u8500));
-
-	mop500_uib_i2c_add(0, mop500_i2c0_devices_u8500,
-			ARRAY_SIZE(mop500_i2c0_devices_u8500));
-
 }
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 2c4885a..66d466b 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -26,7 +26,6 @@
 #include <linux/regulator/ab8500.h>
 #include <linux/regulator/fixed.h>
 #include <linux/regulator/driver.h>
-#include <linux/mfd/tc3589x.h>
 #include <linux/mfd/tps6105x.h>
 #include <linux/mfd/abx500/ab8500-gpio.h>
 #include <linux/platform_data/leds-lp55xx.h>
@@ -56,41 +55,6 @@ struct ab8500_platform_data ab8500_platdata = {
 	.regulator	= &ab8500_regulator_plat_data,
 };
 
-/*
- * TC35892
- */
-
-static void mop500_tc35892_init(struct tc3589x *tc3589x, unsigned int base)
-{
-	struct device *parent = NULL;
-#if 0
-	/* FIXME: Is the sdi actually part of tc3589x? */
-	parent = tc3589x->dev;
-#endif
-	mop500_sdi_tc35892_init(parent);
-}
-
-static struct tc3589x_gpio_platform_data mop500_tc35892_gpio_data = {
-	.gpio_base	= MOP500_EGPIO(0),
-	.setup		= mop500_tc35892_init,
-};
-
-static struct tc3589x_platform_data mop500_tc35892_data = {
-	.block		= TC3589x_BLOCK_GPIO,
-	.gpio		= &mop500_tc35892_gpio_data,
-	.irq_base	= MOP500_EGPIO_IRQ_BASE,
-};
-
-static struct i2c_board_info __initdata mop500_i2c0_devices[] = {
-	{
-		I2C_BOARD_INFO("tc3589x", 0x42),
-		.irq		= NOMADIK_GPIO_TO_IRQ(217),
-		.platform_data  = &mop500_tc35892_data,
-	},
-};
-
-#define NUM_PRE_V60_I2C0_DEVICES 1
-
 static struct i2c_board_info __initdata mop500_i2c2_devices[] = {
 	{
 		/* Light sensor Rohm BH1780GLI */
@@ -266,7 +230,6 @@ static void __init mop500_uart_init(struct device *parent)
 static void __init mop500_init_machine(void)
 {
 	struct device *parent = NULL;
-	int i2c0_devs;
 	int i;
 
 	platform_device_register(&db8500_prcmu_device);
@@ -286,9 +249,6 @@ static void __init mop500_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_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,
 				ARRAY_SIZE(mop500_i2c2_devices));
 
@@ -317,7 +277,6 @@ static void __init snowball_init_machine(void)
 static void __init hrefv60_init_machine(void)
 {
 	struct device *parent = NULL;
-	int i2c0_devs;
 	int i;
 
 	platform_device_register(&db8500_prcmu_device);
@@ -342,11 +301,6 @@ static void __init hrefv60_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
-	i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices);
-
-	i2c0_devs -= NUM_PRE_V60_I2C0_DEVICES;
-
-	i2c_register_board_info(0, mop500_i2c0_devices, i2c0_devs);
 	i2c_register_board_info(2, mop500_i2c2_devices,
 				ARRAY_SIZE(mop500_i2c2_devices));
 
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 3bd9b6e..cfc553c 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -98,7 +98,6 @@ extern struct stedma40_platform_data dma40_plat_data;
 extern void mop500_sdi_init(struct device *parent);
 extern void snowball_sdi_init(struct device *parent);
 extern void hrefv60_sdi_init(struct device *parent);
-extern void mop500_sdi_tc35892_init(struct device *parent);
 void __init mop500_u8500uib_init(void);
 void __init mop500_stuib_init(void);
 void __init mop500_pinmaps_init(void);
-- 
1.8.1.2

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

* [PATCH 15/40] ARM: ux500: Remove Light sensor Rohm BH1780GLI when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 13 -------------
 1 file changed, 13 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 66d466b..e0db81d 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -55,13 +55,6 @@ struct ab8500_platform_data ab8500_platdata = {
 	.regulator	= &ab8500_regulator_plat_data,
 };
 
-static struct i2c_board_info __initdata mop500_i2c2_devices[] = {
-	{
-		/* Light sensor Rohm BH1780GLI */
-		I2C_BOARD_INFO("bh1780", 0x29),
-	},
-};
-
 static void __init mop500_i2c_init(struct device *parent)
 {
 	db8500_add_i2c0(parent, NULL);
@@ -249,9 +242,6 @@ static void __init mop500_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
-	i2c_register_board_info(2, mop500_i2c2_devices,
-				ARRAY_SIZE(mop500_i2c2_devices));
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
@@ -301,9 +291,6 @@ static void __init hrefv60_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
-	i2c_register_board_info(2, mop500_i2c2_devices,
-				ARRAY_SIZE(mop500_i2c2_devices));
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
-- 
1.8.1.2


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

* [PATCH 15/40] ARM: ux500: Remove Light sensor Rohm BH1780GLI when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 13 -------------
 1 file changed, 13 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 66d466b..e0db81d 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -55,13 +55,6 @@ struct ab8500_platform_data ab8500_platdata = {
 	.regulator	= &ab8500_regulator_plat_data,
 };
 
-static struct i2c_board_info __initdata mop500_i2c2_devices[] = {
-	{
-		/* Light sensor Rohm BH1780GLI */
-		I2C_BOARD_INFO("bh1780", 0x29),
-	},
-};
-
 static void __init mop500_i2c_init(struct device *parent)
 {
 	db8500_add_i2c0(parent, NULL);
@@ -249,9 +242,6 @@ static void __init mop500_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
-	i2c_register_board_info(2, mop500_i2c2_devices,
-				ARRAY_SIZE(mop500_i2c2_devices));
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
@@ -301,9 +291,6 @@ static void __init hrefv60_init_machine(void)
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
-	i2c_register_board_info(2, mop500_i2c2_devices,
-				ARRAY_SIZE(mop500_i2c2_devices));
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
-- 
1.8.1.2

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

* [PATCH 16/40] ARM: ux500: Purge SFH7741 Proximity Sensor support when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 75 --------------------------------------
 1 file changed, 75 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index e0db81d..fd1e0bc 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -30,7 +30,6 @@
 #include <linux/mfd/abx500/ab8500-gpio.h>
 #include <linux/platform_data/leds-lp55xx.h>
 #include <linux/input.h>
-#include <linux/gpio_keys.h>
 #include <linux/delay.h>
 #include <linux/leds.h>
 #include <linux/pinctrl/consumer.h>
@@ -63,59 +62,6 @@ static void __init mop500_i2c_init(struct device *parent)
 	db8500_add_i2c3(parent, NULL);
 }
 
-static struct gpio_keys_button mop500_gpio_keys[] = {
-	{
-		.desc			= "SFH7741 Proximity Sensor",
-		.type			= EV_SW,
-		.code			= SW_FRONT_PROXIMITY,
-		.active_low		= 0,
-		.can_disable		= 1,
-	}
-};
-
-static struct regulator *prox_regulator;
-static int mop500_prox_activate(struct device *dev);
-static void mop500_prox_deactivate(struct device *dev);
-
-static struct gpio_keys_platform_data mop500_gpio_keys_data = {
-	.buttons	= mop500_gpio_keys,
-	.nbuttons	= ARRAY_SIZE(mop500_gpio_keys),
-	.enable		= mop500_prox_activate,
-	.disable	= mop500_prox_deactivate,
-};
-
-static struct platform_device mop500_gpio_keys_device = {
-	.name	= "gpio-keys",
-	.id	= 0,
-	.dev	= {
-		.platform_data	= &mop500_gpio_keys_data,
-	},
-};
-
-static int mop500_prox_activate(struct device *dev)
-{
-	prox_regulator = regulator_get(&mop500_gpio_keys_device.dev,
-						"vcc");
-	if (IS_ERR(prox_regulator)) {
-		dev_err(&mop500_gpio_keys_device.dev,
-			"no regulator\n");
-		return PTR_ERR(prox_regulator);
-	}
-
-	return regulator_enable(prox_regulator);
-}
-
-static void mop500_prox_deactivate(struct device *dev)
-{
-	regulator_disable(prox_regulator);
-	regulator_put(prox_regulator);
-}
-
-/* add any platform devices here - TODO */
-static struct platform_device *mop500_platform_devs[] __initdata = {
-	&mop500_gpio_keys_device,
-};
-
 #ifdef CONFIG_STE_DMA40
 static struct stedma40_chan_cfg ssp0_dma_cfg_rx = {
 	.mode = STEDMA40_MODE_LOGICAL,
@@ -223,20 +169,12 @@ static void __init mop500_uart_init(struct device *parent)
 static void __init mop500_init_machine(void)
 {
 	struct device *parent = NULL;
-	int i;
 
 	platform_device_register(&db8500_prcmu_device);
-	mop500_gpio_keys[0].gpio = GPIO_PROX_SENSOR;
 
 	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
-	for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
-		mop500_platform_devs[i]->dev.parent = parent;
-
-	platform_add_devices(mop500_platform_devs,
-			ARRAY_SIZE(mop500_platform_devs));
-
 	mop500_i2c_init(parent);
 	mop500_sdi_init(parent);
 	mop500_spi_init(parent);
@@ -267,25 +205,12 @@ static void __init snowball_init_machine(void)
 static void __init hrefv60_init_machine(void)
 {
 	struct device *parent = NULL;
-	int i;
 
 	platform_device_register(&db8500_prcmu_device);
-	/*
-	 * The HREFv60 board removed a GPIO expander and routed
-	 * all these GPIO pins to the internal GPIO controller
-	 * instead.
-	 */
-	mop500_gpio_keys[0].gpio = HREFV60_PROX_SENSE_GPIO;
 
 	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
-	for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
-		mop500_platform_devs[i]->dev.parent = parent;
-
-	platform_add_devices(mop500_platform_devs,
-			ARRAY_SIZE(mop500_platform_devs));
-
 	mop500_i2c_init(parent);
 	hrefv60_sdi_init(parent);
 	mop500_spi_init(parent);
-- 
1.8.1.2


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

* [PATCH 16/40] ARM: ux500: Purge SFH7741 Proximity Sensor support when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 75 --------------------------------------
 1 file changed, 75 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index e0db81d..fd1e0bc 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -30,7 +30,6 @@
 #include <linux/mfd/abx500/ab8500-gpio.h>
 #include <linux/platform_data/leds-lp55xx.h>
 #include <linux/input.h>
-#include <linux/gpio_keys.h>
 #include <linux/delay.h>
 #include <linux/leds.h>
 #include <linux/pinctrl/consumer.h>
@@ -63,59 +62,6 @@ static void __init mop500_i2c_init(struct device *parent)
 	db8500_add_i2c3(parent, NULL);
 }
 
-static struct gpio_keys_button mop500_gpio_keys[] = {
-	{
-		.desc			= "SFH7741 Proximity Sensor",
-		.type			= EV_SW,
-		.code			= SW_FRONT_PROXIMITY,
-		.active_low		= 0,
-		.can_disable		= 1,
-	}
-};
-
-static struct regulator *prox_regulator;
-static int mop500_prox_activate(struct device *dev);
-static void mop500_prox_deactivate(struct device *dev);
-
-static struct gpio_keys_platform_data mop500_gpio_keys_data = {
-	.buttons	= mop500_gpio_keys,
-	.nbuttons	= ARRAY_SIZE(mop500_gpio_keys),
-	.enable		= mop500_prox_activate,
-	.disable	= mop500_prox_deactivate,
-};
-
-static struct platform_device mop500_gpio_keys_device = {
-	.name	= "gpio-keys",
-	.id	= 0,
-	.dev	= {
-		.platform_data	= &mop500_gpio_keys_data,
-	},
-};
-
-static int mop500_prox_activate(struct device *dev)
-{
-	prox_regulator = regulator_get(&mop500_gpio_keys_device.dev,
-						"vcc");
-	if (IS_ERR(prox_regulator)) {
-		dev_err(&mop500_gpio_keys_device.dev,
-			"no regulator\n");
-		return PTR_ERR(prox_regulator);
-	}
-
-	return regulator_enable(prox_regulator);
-}
-
-static void mop500_prox_deactivate(struct device *dev)
-{
-	regulator_disable(prox_regulator);
-	regulator_put(prox_regulator);
-}
-
-/* add any platform devices here - TODO */
-static struct platform_device *mop500_platform_devs[] __initdata = {
-	&mop500_gpio_keys_device,
-};
-
 #ifdef CONFIG_STE_DMA40
 static struct stedma40_chan_cfg ssp0_dma_cfg_rx = {
 	.mode = STEDMA40_MODE_LOGICAL,
@@ -223,20 +169,12 @@ static void __init mop500_uart_init(struct device *parent)
 static void __init mop500_init_machine(void)
 {
 	struct device *parent = NULL;
-	int i;
 
 	platform_device_register(&db8500_prcmu_device);
-	mop500_gpio_keys[0].gpio = GPIO_PROX_SENSOR;
 
 	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
-	for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
-		mop500_platform_devs[i]->dev.parent = parent;
-
-	platform_add_devices(mop500_platform_devs,
-			ARRAY_SIZE(mop500_platform_devs));
-
 	mop500_i2c_init(parent);
 	mop500_sdi_init(parent);
 	mop500_spi_init(parent);
@@ -267,25 +205,12 @@ static void __init snowball_init_machine(void)
 static void __init hrefv60_init_machine(void)
 {
 	struct device *parent = NULL;
-	int i;
 
 	platform_device_register(&db8500_prcmu_device);
-	/*
-	 * The HREFv60 board removed a GPIO expander and routed
-	 * all these GPIO pins to the internal GPIO controller
-	 * instead.
-	 */
-	mop500_gpio_keys[0].gpio = HREFV60_PROX_SENSE_GPIO;
 
 	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
-	for (i = 0; i < ARRAY_SIZE(mop500_platform_devs); i++)
-		mop500_platform_devs[i]->dev.parent = parent;
-
-	platform_add_devices(mop500_platform_devs,
-			ARRAY_SIZE(mop500_platform_devs));
-
 	mop500_i2c_init(parent);
 	hrefv60_sdi_init(parent);
 	mop500_spi_init(parent);
-- 
1.8.1.2

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

* [PATCH 17/40] ARM: ux500: Remove I2C support when booting with ATAG support
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   | 13 -------------
 arch/arm/mach-ux500/board-mop500.h   |  1 -
 arch/arm/mach-ux500/devices-common.h | 14 --------------
 arch/arm/mach-ux500/devices-db8500.h | 11 -----------
 4 files changed, 39 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index fd1e0bc..447d37d 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -14,8 +14,6 @@
 #include <linux/platform_device.h>
 #include <linux/clk.h>
 #include <linux/io.h>
-#include <linux/i2c.h>
-#include <linux/platform_data/i2c-nomadik.h>
 #include <linux/platform_data/db8500_thermal.h>
 #include <linux/gpio.h>
 #include <linux/amba/bus.h>
@@ -54,14 +52,6 @@ struct ab8500_platform_data ab8500_platdata = {
 	.regulator	= &ab8500_regulator_plat_data,
 };
 
-static void __init mop500_i2c_init(struct device *parent)
-{
-	db8500_add_i2c0(parent, NULL);
-	db8500_add_i2c1(parent, NULL);
-	db8500_add_i2c2(parent, NULL);
-	db8500_add_i2c3(parent, NULL);
-}
-
 #ifdef CONFIG_STE_DMA40
 static struct stedma40_chan_cfg ssp0_dma_cfg_rx = {
 	.mode = STEDMA40_MODE_LOGICAL,
@@ -175,7 +165,6 @@ static void __init mop500_init_machine(void)
 	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_i2c_init(parent);
 	mop500_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
@@ -193,7 +182,6 @@ static void __init snowball_init_machine(void)
 	snowball_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_i2c_init(parent);
 	snowball_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
@@ -211,7 +199,6 @@ static void __init hrefv60_init_machine(void)
 	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_i2c_init(parent);
 	hrefv60_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index cfc553c..341fad1 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -79,7 +79,6 @@
 #define SNOWBALL_EN_3V3_ETH_GPIO	MOP500_AB8500_PIN_GPIO(26)	/* GPIO26 */
 
 struct device;
-struct i2c_board_info;
 extern struct mmci_platform_data mop500_sdi0_data;
 extern struct mmci_platform_data mop500_sdi1_data;
 extern struct mmci_platform_data mop500_sdi2_data;
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 04fa009..34ec2f7 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -12,7 +12,6 @@
 #include <linux/dma-mapping.h>
 #include <linux/sys_soc.h>
 #include <linux/amba/bus.h>
-#include <linux/platform_data/i2c-nomadik.h>
 
 struct spi_master_cntlr;
 
@@ -44,19 +43,6 @@ dbx500_add_uart(struct device *parent, const char *name, resource_size_t base,
 	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
 }
 
-struct nmk_i2c_controller;
-
-static inline struct amba_device *
-dbx500_add_i2c(struct device *parent, int id, resource_size_t base, int irq,
-	       struct nmk_i2c_controller *data)
-{
-	/* Conjure a name similar to what the platform device used to have */
-	char name[16];
-
-	snprintf(name, sizeof(name), "nmk-i2c.%d", id);
-	return amba_apb_device_add(parent, name, base, SZ_4K, irq, 0, data, 0);
-}
-
 static inline struct amba_device *
 dbx500_add_rtc(struct device *parent, resource_size_t base, int irq)
 {
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 3d32668..64667f6 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -42,17 +42,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
 }
 
-#define db8500_add_i2c0(parent, pdata) \
-	dbx500_add_i2c(parent, 0, U8500_I2C0_BASE, IRQ_DB8500_I2C0, pdata)
-#define db8500_add_i2c1(parent, pdata) \
-	dbx500_add_i2c(parent, 1, U8500_I2C1_BASE, IRQ_DB8500_I2C1, pdata)
-#define db8500_add_i2c2(parent, pdata) \
-	dbx500_add_i2c(parent, 2, U8500_I2C2_BASE, IRQ_DB8500_I2C2, pdata)
-#define db8500_add_i2c3(parent, pdata) \
-	dbx500_add_i2c(parent, 3, U8500_I2C3_BASE, IRQ_DB8500_I2C3, pdata)
-#define db8500_add_i2c4(parent, pdata) \
-	dbx500_add_i2c(parent, 4, U8500_I2C4_BASE, IRQ_DB8500_I2C4, pdata)
-
 #define db8500_add_rtc(parent) \
 	dbx500_add_rtc(parent, U8500_RTC_BASE, IRQ_DB8500_RTC);
 
-- 
1.8.1.2


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

* [PATCH 17/40] ARM: ux500: Remove I2C support when booting with ATAG support
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   | 13 -------------
 arch/arm/mach-ux500/board-mop500.h   |  1 -
 arch/arm/mach-ux500/devices-common.h | 14 --------------
 arch/arm/mach-ux500/devices-db8500.h | 11 -----------
 4 files changed, 39 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index fd1e0bc..447d37d 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -14,8 +14,6 @@
 #include <linux/platform_device.h>
 #include <linux/clk.h>
 #include <linux/io.h>
-#include <linux/i2c.h>
-#include <linux/platform_data/i2c-nomadik.h>
 #include <linux/platform_data/db8500_thermal.h>
 #include <linux/gpio.h>
 #include <linux/amba/bus.h>
@@ -54,14 +52,6 @@ struct ab8500_platform_data ab8500_platdata = {
 	.regulator	= &ab8500_regulator_plat_data,
 };
 
-static void __init mop500_i2c_init(struct device *parent)
-{
-	db8500_add_i2c0(parent, NULL);
-	db8500_add_i2c1(parent, NULL);
-	db8500_add_i2c2(parent, NULL);
-	db8500_add_i2c3(parent, NULL);
-}
-
 #ifdef CONFIG_STE_DMA40
 static struct stedma40_chan_cfg ssp0_dma_cfg_rx = {
 	.mode = STEDMA40_MODE_LOGICAL,
@@ -175,7 +165,6 @@ static void __init mop500_init_machine(void)
 	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_i2c_init(parent);
 	mop500_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
@@ -193,7 +182,6 @@ static void __init snowball_init_machine(void)
 	snowball_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_i2c_init(parent);
 	snowball_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
@@ -211,7 +199,6 @@ static void __init hrefv60_init_machine(void)
 	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_i2c_init(parent);
 	hrefv60_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index cfc553c..341fad1 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -79,7 +79,6 @@
 #define SNOWBALL_EN_3V3_ETH_GPIO	MOP500_AB8500_PIN_GPIO(26)	/* GPIO26 */
 
 struct device;
-struct i2c_board_info;
 extern struct mmci_platform_data mop500_sdi0_data;
 extern struct mmci_platform_data mop500_sdi1_data;
 extern struct mmci_platform_data mop500_sdi2_data;
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 04fa009..34ec2f7 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -12,7 +12,6 @@
 #include <linux/dma-mapping.h>
 #include <linux/sys_soc.h>
 #include <linux/amba/bus.h>
-#include <linux/platform_data/i2c-nomadik.h>
 
 struct spi_master_cntlr;
 
@@ -44,19 +43,6 @@ dbx500_add_uart(struct device *parent, const char *name, resource_size_t base,
 	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
 }
 
-struct nmk_i2c_controller;
-
-static inline struct amba_device *
-dbx500_add_i2c(struct device *parent, int id, resource_size_t base, int irq,
-	       struct nmk_i2c_controller *data)
-{
-	/* Conjure a name similar to what the platform device used to have */
-	char name[16];
-
-	snprintf(name, sizeof(name), "nmk-i2c.%d", id);
-	return amba_apb_device_add(parent, name, base, SZ_4K, irq, 0, data, 0);
-}
-
 static inline struct amba_device *
 dbx500_add_rtc(struct device *parent, resource_size_t base, int irq)
 {
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 3d32668..64667f6 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -42,17 +42,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
 }
 
-#define db8500_add_i2c0(parent, pdata) \
-	dbx500_add_i2c(parent, 0, U8500_I2C0_BASE, IRQ_DB8500_I2C0, pdata)
-#define db8500_add_i2c1(parent, pdata) \
-	dbx500_add_i2c(parent, 1, U8500_I2C1_BASE, IRQ_DB8500_I2C1, pdata)
-#define db8500_add_i2c2(parent, pdata) \
-	dbx500_add_i2c(parent, 2, U8500_I2C2_BASE, IRQ_DB8500_I2C2, pdata)
-#define db8500_add_i2c3(parent, pdata) \
-	dbx500_add_i2c(parent, 3, U8500_I2C3_BASE, IRQ_DB8500_I2C3, pdata)
-#define db8500_add_i2c4(parent, pdata) \
-	dbx500_add_i2c(parent, 4, U8500_I2C4_BASE, IRQ_DB8500_I2C4, pdata)
-
 #define db8500_add_rtc(parent) \
 	dbx500_add_rtc(parent, U8500_RTC_BASE, IRQ_DB8500_RTC);
 
-- 
1.8.1.2

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

* [PATCH 18/40] ARM: ux500: Purge SDI support for ATAG booting
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-sdi.c | 39 ----------------------------------
 arch/arm/mach-ux500/board-mop500.c     |  3 ---
 arch/arm/mach-ux500/board-mop500.h     |  3 ---
 arch/arm/mach-ux500/devices-common.h   | 10 ---------
 arch/arm/mach-ux500/devices-db8500.h   | 19 -----------------
 5 files changed, 74 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-sdi.c b/arch/arm/mach-ux500/board-mop500-sdi.c
index 1ae5999..26600a1 100644
--- a/arch/arm/mach-ux500/board-mop500-sdi.c
+++ b/arch/arm/mach-ux500/board-mop500-sdi.c
@@ -65,12 +65,6 @@ struct mmci_platform_data mop500_sdi0_data = {
 #endif
 };
 
-static void sdi0_configure(struct device *parent)
-{
-	/* Add the device, force v2 to subrevision 1 */
-	db8500_add_sdi0(parent, &mop500_sdi0_data, U8500_SDI_V2_PERIPHID);
-}
-
 /*
  * SDI1 (SDIO WLAN)
  */
@@ -172,36 +166,3 @@ struct mmci_platform_data mop500_sdi4_data = {
 	.dma_tx_param	= &mop500_sdi4_dma_cfg_tx,
 #endif
 };
-
-void __init mop500_sdi_init(struct device *parent)
-{
-	/* PoP:ed eMMC */
-	db8500_add_sdi2(parent, &mop500_sdi2_data, U8500_SDI_V2_PERIPHID);
-	/* On-board eMMC */
-	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
-}
-
-void __init snowball_sdi_init(struct device *parent)
-{
-	/* On Snowball MMC_CAP_SD_HIGHSPEED isn't supported (Hardware issue?) */
-	mop500_sdi0_data.capabilities &= ~MMC_CAP_SD_HIGHSPEED;
-	/* On-board eMMC */
-	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
-	/* External Micro SD slot */
-	mop500_sdi0_data.gpio_cd = SNOWBALL_SDMMC_CD_GPIO;
-	mop500_sdi0_data.cd_invert = true;
-	sdi0_configure(parent);
-}
-
-void __init hrefv60_sdi_init(struct device *parent)
-{
-	/* PoP:ed eMMC */
-	db8500_add_sdi2(parent, &mop500_sdi2_data, U8500_SDI_V2_PERIPHID);
-	/* On-board eMMC */
-	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
-	/* External Micro SD slot */
-	mop500_sdi0_data.gpio_cd = HREFV60_SDMMC_CD_GPIO;
-	sdi0_configure(parent);
-	/* WLAN SDIO channel */
-	db8500_add_sdi1(parent, &mop500_sdi1_data, U8500_SDI_V2_PERIPHID);
-}
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 447d37d..d53d672 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -165,7 +165,6 @@ static void __init mop500_init_machine(void)
 	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
@@ -182,7 +181,6 @@ static void __init snowball_init_machine(void)
 	snowball_pinmaps_init();
 	parent = u8500_init_devices();
 
-	snowball_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
@@ -199,7 +197,6 @@ static void __init hrefv60_init_machine(void)
 	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
-	hrefv60_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 341fad1..06eb894 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -94,9 +94,6 @@ extern struct amba_pl011_data uart2_plat;
 extern struct pl022_ssp_controller ssp0_plat;
 extern struct stedma40_platform_data dma40_plat_data;
 
-extern void mop500_sdi_init(struct device *parent);
-extern void snowball_sdi_init(struct device *parent);
-extern void hrefv60_sdi_init(struct device *parent);
 void __init mop500_u8500uib_init(void);
 void __init mop500_stuib_init(void);
 void __init mop500_pinmaps_init(void);
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 34ec2f7..030f5a0 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -24,16 +24,6 @@ dbx500_add_spi(struct device *parent, const char *name, resource_size_t base,
 				   pdata, periphid);
 }
 
-struct mmci_platform_data;
-
-static inline struct amba_device *
-dbx500_add_sdi(struct device *parent, const char *name, resource_size_t base,
-	       int irq, struct mmci_platform_data *pdata, u32 periphid)
-{
-	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0,
-				   pdata, periphid);
-}
-
 struct amba_pl011_data;
 
 static inline struct amba_device *
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 64667f6..e47039b 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -49,25 +49,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	ux500_add_usb(parent, U8500_USBOTG_BASE, \
 		      IRQ_DB8500_USBOTG, rx_cfg, tx_cfg)
 
-#define db8500_add_sdi0(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi0", U8500_SDI0_BASE, \
-		       IRQ_DB8500_SDMMC0, pdata, pid)
-#define db8500_add_sdi1(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi1", U8500_SDI1_BASE, \
-		       IRQ_DB8500_SDMMC1, pdata, pid)
-#define db8500_add_sdi2(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi2", U8500_SDI2_BASE, \
-		       IRQ_DB8500_SDMMC2, pdata, pid)
-#define db8500_add_sdi3(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi3", U8500_SDI3_BASE, \
-		       IRQ_DB8500_SDMMC3, pdata, pid)
-#define db8500_add_sdi4(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi4", U8500_SDI4_BASE, \
-		       IRQ_DB8500_SDMMC4, pdata, pid)
-#define db8500_add_sdi5(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi5", U8500_SDI5_BASE, \
-		       IRQ_DB8500_SDMMC5, pdata, pid)
-
 #define db8500_add_ssp0(parent, pdata) \
 	db8500_add_ssp(parent, "ssp0", U8500_SSP0_BASE, \
 		       IRQ_DB8500_SSP0, pdata)
-- 
1.8.1.2


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

* [PATCH 18/40] ARM: ux500: Purge SDI support for ATAG booting
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-sdi.c | 39 ----------------------------------
 arch/arm/mach-ux500/board-mop500.c     |  3 ---
 arch/arm/mach-ux500/board-mop500.h     |  3 ---
 arch/arm/mach-ux500/devices-common.h   | 10 ---------
 arch/arm/mach-ux500/devices-db8500.h   | 19 -----------------
 5 files changed, 74 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-sdi.c b/arch/arm/mach-ux500/board-mop500-sdi.c
index 1ae5999..26600a1 100644
--- a/arch/arm/mach-ux500/board-mop500-sdi.c
+++ b/arch/arm/mach-ux500/board-mop500-sdi.c
@@ -65,12 +65,6 @@ struct mmci_platform_data mop500_sdi0_data = {
 #endif
 };
 
-static void sdi0_configure(struct device *parent)
-{
-	/* Add the device, force v2 to subrevision 1 */
-	db8500_add_sdi0(parent, &mop500_sdi0_data, U8500_SDI_V2_PERIPHID);
-}
-
 /*
  * SDI1 (SDIO WLAN)
  */
@@ -172,36 +166,3 @@ struct mmci_platform_data mop500_sdi4_data = {
 	.dma_tx_param	= &mop500_sdi4_dma_cfg_tx,
 #endif
 };
-
-void __init mop500_sdi_init(struct device *parent)
-{
-	/* PoP:ed eMMC */
-	db8500_add_sdi2(parent, &mop500_sdi2_data, U8500_SDI_V2_PERIPHID);
-	/* On-board eMMC */
-	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
-}
-
-void __init snowball_sdi_init(struct device *parent)
-{
-	/* On Snowball MMC_CAP_SD_HIGHSPEED isn't supported (Hardware issue?) */
-	mop500_sdi0_data.capabilities &= ~MMC_CAP_SD_HIGHSPEED;
-	/* On-board eMMC */
-	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
-	/* External Micro SD slot */
-	mop500_sdi0_data.gpio_cd = SNOWBALL_SDMMC_CD_GPIO;
-	mop500_sdi0_data.cd_invert = true;
-	sdi0_configure(parent);
-}
-
-void __init hrefv60_sdi_init(struct device *parent)
-{
-	/* PoP:ed eMMC */
-	db8500_add_sdi2(parent, &mop500_sdi2_data, U8500_SDI_V2_PERIPHID);
-	/* On-board eMMC */
-	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
-	/* External Micro SD slot */
-	mop500_sdi0_data.gpio_cd = HREFV60_SDMMC_CD_GPIO;
-	sdi0_configure(parent);
-	/* WLAN SDIO channel */
-	db8500_add_sdi1(parent, &mop500_sdi1_data, U8500_SDI_V2_PERIPHID);
-}
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 447d37d..d53d672 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -165,7 +165,6 @@ static void __init mop500_init_machine(void)
 	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
@@ -182,7 +181,6 @@ static void __init snowball_init_machine(void)
 	snowball_pinmaps_init();
 	parent = u8500_init_devices();
 
-	snowball_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
@@ -199,7 +197,6 @@ static void __init hrefv60_init_machine(void)
 	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
-	hrefv60_sdi_init(parent);
 	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 341fad1..06eb894 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -94,9 +94,6 @@ extern struct amba_pl011_data uart2_plat;
 extern struct pl022_ssp_controller ssp0_plat;
 extern struct stedma40_platform_data dma40_plat_data;
 
-extern void mop500_sdi_init(struct device *parent);
-extern void snowball_sdi_init(struct device *parent);
-extern void hrefv60_sdi_init(struct device *parent);
 void __init mop500_u8500uib_init(void);
 void __init mop500_stuib_init(void);
 void __init mop500_pinmaps_init(void);
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 34ec2f7..030f5a0 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -24,16 +24,6 @@ dbx500_add_spi(struct device *parent, const char *name, resource_size_t base,
 				   pdata, periphid);
 }
 
-struct mmci_platform_data;
-
-static inline struct amba_device *
-dbx500_add_sdi(struct device *parent, const char *name, resource_size_t base,
-	       int irq, struct mmci_platform_data *pdata, u32 periphid)
-{
-	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0,
-				   pdata, periphid);
-}
-
 struct amba_pl011_data;
 
 static inline struct amba_device *
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 64667f6..e47039b 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -49,25 +49,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	ux500_add_usb(parent, U8500_USBOTG_BASE, \
 		      IRQ_DB8500_USBOTG, rx_cfg, tx_cfg)
 
-#define db8500_add_sdi0(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi0", U8500_SDI0_BASE, \
-		       IRQ_DB8500_SDMMC0, pdata, pid)
-#define db8500_add_sdi1(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi1", U8500_SDI1_BASE, \
-		       IRQ_DB8500_SDMMC1, pdata, pid)
-#define db8500_add_sdi2(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi2", U8500_SDI2_BASE, \
-		       IRQ_DB8500_SDMMC2, pdata, pid)
-#define db8500_add_sdi3(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi3", U8500_SDI3_BASE, \
-		       IRQ_DB8500_SDMMC3, pdata, pid)
-#define db8500_add_sdi4(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi4", U8500_SDI4_BASE, \
-		       IRQ_DB8500_SDMMC4, pdata, pid)
-#define db8500_add_sdi5(parent, pdata, pid) \
-	dbx500_add_sdi(parent, "sdi5", U8500_SDI5_BASE, \
-		       IRQ_DB8500_SDMMC5, pdata, pid)
-
 #define db8500_add_ssp0(parent, pdata) \
 	db8500_add_ssp(parent, "ssp0", U8500_SSP0_BASE, \
 		       IRQ_DB8500_SSP0, pdata)
-- 
1.8.1.2

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

* [PATCH 19/40] ARM: ux500: Rip out keypad initialisation which is no longer used
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

This is part of the ux500 conversion over to Device Tree only
booting, but this stuff haven't been used for years.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/devices-db8500.c | 20 --------------------
 arch/arm/mach-ux500/devices-db8500.h | 15 ---------------
 arch/arm/mach-ux500/devices.h        |  1 -
 3 files changed, 36 deletions(-)

diff --git a/arch/arm/mach-ux500/devices-db8500.c b/arch/arm/mach-ux500/devices-db8500.c
index 516a6f5..3c5393b 100644
--- a/arch/arm/mach-ux500/devices-db8500.c
+++ b/arch/arm/mach-ux500/devices-db8500.c
@@ -56,26 +56,6 @@ struct platform_device u8500_dma40_device = {
 	.resource = dma40_resources
 };
 
-struct resource keypad_resources[] = {
-	[0] = {
-		.start = U8500_SKE_BASE,
-		.end = U8500_SKE_BASE + SZ_4K - 1,
-		.flags = IORESOURCE_MEM,
-	},
-	[1] = {
-		.start = IRQ_DB8500_KB,
-		.end = IRQ_DB8500_KB,
-		.flags = IORESOURCE_IRQ,
-	},
-};
-
-struct platform_device u8500_ske_keypad_device = {
-	.name = "nmk-ske-keypad",
-	.id = -1,
-	.num_resources = ARRAY_SIZE(keypad_resources),
-	.resource = keypad_resources,
-};
-
 struct prcmu_pdata db8500_prcmu_pdata = {
 	.ab_platdata	= &ab8500_platdata,
 	.ab_irq		= IRQ_DB8500_AB8500,
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index e47039b..be1d538 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -13,7 +13,6 @@
 #include "db8500-regs.h"
 #include "devices-common.h"
 
-struct ske_keypad_platform_data;
 struct pl022_ssp_controller;
 struct platform_device;
 
@@ -21,20 +20,6 @@ extern struct ab8500_platform_data ab8500_platdata;
 extern struct prcmu_pdata db8500_prcmu_pdata;
 extern struct platform_device db8500_prcmu_device;
 
-static inline struct platform_device *
-db8500_add_ske_keypad(struct device *parent,
-		      struct ske_keypad_platform_data *pdata,
-		      size_t size)
-{
-	struct resource resources[] = {
-		DEFINE_RES_MEM(U8500_SKE_BASE, SZ_4K),
-		DEFINE_RES_IRQ(IRQ_DB8500_KB),
-	};
-
-	return platform_device_register_resndata(parent, "nmk-ske-keypad", -1,
-						 resources, 2, pdata, size);
-}
-
 static inline struct amba_device *
 db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	       int irq, struct pl022_ssp_controller *pdata)
diff --git a/arch/arm/mach-ux500/devices.h b/arch/arm/mach-ux500/devices.h
index 9b5eb69..eafb07a 100644
--- a/arch/arm/mach-ux500/devices.h
+++ b/arch/arm/mach-ux500/devices.h
@@ -15,6 +15,5 @@ extern struct platform_device u8500_gpio_devs[];
 extern struct amba_device ux500_pl031_device;
 
 extern struct platform_device u8500_dma40_device;
-extern struct platform_device ux500_ske_keypad_device;
 
 #endif
-- 
1.8.1.2


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

* [PATCH 19/40] ARM: ux500: Rip out keypad initialisation which is no longer used
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

This is part of the ux500 conversion over to Device Tree only
booting, but this stuff haven't been used for years.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/devices-db8500.c | 20 --------------------
 arch/arm/mach-ux500/devices-db8500.h | 15 ---------------
 arch/arm/mach-ux500/devices.h        |  1 -
 3 files changed, 36 deletions(-)

diff --git a/arch/arm/mach-ux500/devices-db8500.c b/arch/arm/mach-ux500/devices-db8500.c
index 516a6f5..3c5393b 100644
--- a/arch/arm/mach-ux500/devices-db8500.c
+++ b/arch/arm/mach-ux500/devices-db8500.c
@@ -56,26 +56,6 @@ struct platform_device u8500_dma40_device = {
 	.resource = dma40_resources
 };
 
-struct resource keypad_resources[] = {
-	[0] = {
-		.start = U8500_SKE_BASE,
-		.end = U8500_SKE_BASE + SZ_4K - 1,
-		.flags = IORESOURCE_MEM,
-	},
-	[1] = {
-		.start = IRQ_DB8500_KB,
-		.end = IRQ_DB8500_KB,
-		.flags = IORESOURCE_IRQ,
-	},
-};
-
-struct platform_device u8500_ske_keypad_device = {
-	.name = "nmk-ske-keypad",
-	.id = -1,
-	.num_resources = ARRAY_SIZE(keypad_resources),
-	.resource = keypad_resources,
-};
-
 struct prcmu_pdata db8500_prcmu_pdata = {
 	.ab_platdata	= &ab8500_platdata,
 	.ab_irq		= IRQ_DB8500_AB8500,
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index e47039b..be1d538 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -13,7 +13,6 @@
 #include "db8500-regs.h"
 #include "devices-common.h"
 
-struct ske_keypad_platform_data;
 struct pl022_ssp_controller;
 struct platform_device;
 
@@ -21,20 +20,6 @@ extern struct ab8500_platform_data ab8500_platdata;
 extern struct prcmu_pdata db8500_prcmu_pdata;
 extern struct platform_device db8500_prcmu_device;
 
-static inline struct platform_device *
-db8500_add_ske_keypad(struct device *parent,
-		      struct ske_keypad_platform_data *pdata,
-		      size_t size)
-{
-	struct resource resources[] = {
-		DEFINE_RES_MEM(U8500_SKE_BASE, SZ_4K),
-		DEFINE_RES_IRQ(IRQ_DB8500_KB),
-	};
-
-	return platform_device_register_resndata(parent, "nmk-ske-keypad", -1,
-						 resources, 2, pdata, size);
-}
-
 static inline struct amba_device *
 db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	       int irq, struct pl022_ssp_controller *pdata)
diff --git a/arch/arm/mach-ux500/devices.h b/arch/arm/mach-ux500/devices.h
index 9b5eb69..eafb07a 100644
--- a/arch/arm/mach-ux500/devices.h
+++ b/arch/arm/mach-ux500/devices.h
@@ -15,6 +15,5 @@ extern struct platform_device u8500_gpio_devs[];
 extern struct amba_device ux500_pl031_device;
 
 extern struct platform_device u8500_dma40_device;
-extern struct platform_device ux500_ske_keypad_device;
 
 #endif
-- 
1.8.1.2

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

* [PATCH 20/40] ARM: ux500: Remove USB support when booting using ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/Makefile         |   2 +-
 arch/arm/mach-ux500/cpu-db8500.c     |  12 ----
 arch/arm/mach-ux500/devices-db8500.h |   5 --
 arch/arm/mach-ux500/usb.c            | 135 -----------------------------------
 4 files changed, 1 insertion(+), 153 deletions(-)
 delete mode 100644 arch/arm/mach-ux500/usb.c

diff --git a/arch/arm/mach-ux500/Makefile b/arch/arm/mach-ux500/Makefile
index bf9b6be..cac22ba 100644
--- a/arch/arm/mach-ux500/Makefile
+++ b/arch/arm/mach-ux500/Makefile
@@ -3,7 +3,7 @@
 #
 
 obj-y				:= cpu.o devices.o devices-common.o \
-				   id.o usb.o timer.o pm.o
+				   id.o timer.o pm.o
 obj-$(CONFIG_CPU_IDLE)          += cpuidle.o
 obj-$(CONFIG_CACHE_L2X0)	+= cache-l2x0.o
 obj-$(CONFIG_UX500_SOC_DB8500)	+= cpu-db8500.o devices-db8500.o
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 12eee81..30024ff 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -162,17 +162,6 @@ static void __init db8500_add_gpios(struct device *parent)
 	dbx500_add_pinctrl(parent, "pinctrl-db8500", U8500_PRCMU_BASE);
 }
 
-static int usb_db8500_dma_cfg[] = {
-	DB8500_DMA_DEV38_USB_OTG_IEP_AND_OEP_1_9,
-	DB8500_DMA_DEV37_USB_OTG_IEP_AND_OEP_2_10,
-	DB8500_DMA_DEV36_USB_OTG_IEP_AND_OEP_3_11,
-	DB8500_DMA_DEV19_USB_OTG_IEP_AND_OEP_4_12,
-	DB8500_DMA_DEV18_USB_OTG_IEP_AND_OEP_5_13,
-	DB8500_DMA_DEV17_USB_OTG_IEP_AND_OEP_6_14,
-	DB8500_DMA_DEV16_USB_OTG_IEP_AND_OEP_7_15,
-	DB8500_DMA_DEV39_USB_OTG_IEP_AND_OEP_8
-};
-
 static const char *db8500_read_soc_id(void)
 {
 	void __iomem *uid = __io_address(U8500_BB_UID_BASE);
@@ -204,7 +193,6 @@ struct device * __init u8500_init_devices(void)
 
 	db8500_add_rtc(parent);
 	db8500_add_gpios(parent);
-	db8500_add_usb(parent, usb_db8500_dma_cfg, usb_db8500_dma_cfg);
 
 	for (i = 0; i < ARRAY_SIZE(platform_devs); i++)
 		platform_devs[i]->dev.parent = parent;
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index be1d538..9352400 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -8,7 +8,6 @@
 #ifndef __DEVICES_DB8500_H
 #define __DEVICES_DB8500_H
 
-#include <linux/platform_data/usb-musb-ux500.h>
 #include "irqs.h"
 #include "db8500-regs.h"
 #include "devices-common.h"
@@ -30,10 +29,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 #define db8500_add_rtc(parent) \
 	dbx500_add_rtc(parent, U8500_RTC_BASE, IRQ_DB8500_RTC);
 
-#define db8500_add_usb(parent, rx_cfg, tx_cfg) \
-	ux500_add_usb(parent, U8500_USBOTG_BASE, \
-		      IRQ_DB8500_USBOTG, rx_cfg, tx_cfg)
-
 #define db8500_add_ssp0(parent, pdata) \
 	db8500_add_ssp(parent, "ssp0", U8500_SSP0_BASE, \
 		       IRQ_DB8500_SSP0, pdata)
diff --git a/arch/arm/mach-ux500/usb.c b/arch/arm/mach-ux500/usb.c
deleted file mode 100644
index b7bd8d3..0000000
--- a/arch/arm/mach-ux500/usb.c
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Copyright (C) ST-Ericsson SA 2011
- *
- * Author: Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>
- * License terms: GNU General Public License (GPL) version 2
- */
-#include <linux/platform_device.h>
-#include <linux/usb/musb.h>
-#include <linux/dma-mapping.h>
-#include <linux/platform_data/usb-musb-ux500.h>
-#include <linux/platform_data/dma-ste-dma40.h>
-
-#include "db8500-regs.h"
-
-#define MUSB_DMA40_RX_CH { \
-		.mode = STEDMA40_MODE_LOGICAL, \
-		.dir = DMA_DEV_TO_MEM, \
-	}
-
-#define MUSB_DMA40_TX_CH { \
-		.mode = STEDMA40_MODE_LOGICAL, \
-		.dir = DMA_MEM_TO_DEV, \
-	}
-
-static struct stedma40_chan_cfg musb_dma_rx_ch[UX500_MUSB_DMA_NUM_RX_TX_CHANNELS]
-	= {
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH
-};
-
-static struct stedma40_chan_cfg musb_dma_tx_ch[UX500_MUSB_DMA_NUM_RX_TX_CHANNELS]
-	= {
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-};
-
-static void *ux500_dma_rx_param_array[UX500_MUSB_DMA_NUM_RX_TX_CHANNELS] = {
-	&musb_dma_rx_ch[0],
-	&musb_dma_rx_ch[1],
-	&musb_dma_rx_ch[2],
-	&musb_dma_rx_ch[3],
-	&musb_dma_rx_ch[4],
-	&musb_dma_rx_ch[5],
-	&musb_dma_rx_ch[6],
-	&musb_dma_rx_ch[7]
-};
-
-static void *ux500_dma_tx_param_array[UX500_MUSB_DMA_NUM_RX_TX_CHANNELS] = {
-	&musb_dma_tx_ch[0],
-	&musb_dma_tx_ch[1],
-	&musb_dma_tx_ch[2],
-	&musb_dma_tx_ch[3],
-	&musb_dma_tx_ch[4],
-	&musb_dma_tx_ch[5],
-	&musb_dma_tx_ch[6],
-	&musb_dma_tx_ch[7]
-};
-
-static struct ux500_musb_board_data musb_board_data = {
-	.dma_rx_param_array = ux500_dma_rx_param_array,
-	.dma_tx_param_array = ux500_dma_tx_param_array,
-	.dma_filter = stedma40_filter,
-};
-
-static struct musb_hdrc_platform_data musb_platform_data = {
-	.mode = MUSB_OTG,
-	.board_data = &musb_board_data,
-};
-
-static struct resource usb_resources[] = {
-	[0] = {
-		.name	= "usb-mem",
-		.flags	=  IORESOURCE_MEM,
-	},
-
-	[1] = {
-		.name   = "mc", /* hard-coded in musb */
-		.flags	= IORESOURCE_IRQ,
-	},
-};
-
-struct platform_device ux500_musb_device = {
-	.name = "musb-ux500",
-	.id = 0,
-	.dev = {
-		.platform_data = &musb_platform_data,
-		.coherent_dma_mask = DMA_BIT_MASK(32),
-	},
-	.num_resources = ARRAY_SIZE(usb_resources),
-	.resource = usb_resources,
-};
-
-static inline void ux500_usb_dma_update_rx_ch_config(int *dev_type)
-{
-	u32 idx;
-
-	for (idx = 0; idx < UX500_MUSB_DMA_NUM_RX_TX_CHANNELS; idx++)
-		musb_dma_rx_ch[idx].dev_type = dev_type[idx];
-}
-
-static inline void ux500_usb_dma_update_tx_ch_config(int *dev_type)
-{
-	u32 idx;
-
-	for (idx = 0; idx < UX500_MUSB_DMA_NUM_RX_TX_CHANNELS; idx++)
-		musb_dma_tx_ch[idx].dev_type = dev_type[idx];
-}
-
-void ux500_add_usb(struct device *parent, resource_size_t base, int irq,
-		   int *dma_rx_cfg, int *dma_tx_cfg)
-{
-	ux500_musb_device.resource[0].start = base;
-	ux500_musb_device.resource[0].end = base + SZ_64K - 1;
-	ux500_musb_device.resource[1].start = irq;
-	ux500_musb_device.resource[1].end = irq;
-
-	ux500_usb_dma_update_rx_ch_config(dma_rx_cfg);
-	ux500_usb_dma_update_tx_ch_config(dma_tx_cfg);
-
-	ux500_musb_device.dev.parent = parent;
-
-	platform_device_register(&ux500_musb_device);
-}
-- 
1.8.1.2


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

* [PATCH 20/40] ARM: ux500: Remove USB support when booting using ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/Makefile         |   2 +-
 arch/arm/mach-ux500/cpu-db8500.c     |  12 ----
 arch/arm/mach-ux500/devices-db8500.h |   5 --
 arch/arm/mach-ux500/usb.c            | 135 -----------------------------------
 4 files changed, 1 insertion(+), 153 deletions(-)
 delete mode 100644 arch/arm/mach-ux500/usb.c

diff --git a/arch/arm/mach-ux500/Makefile b/arch/arm/mach-ux500/Makefile
index bf9b6be..cac22ba 100644
--- a/arch/arm/mach-ux500/Makefile
+++ b/arch/arm/mach-ux500/Makefile
@@ -3,7 +3,7 @@
 #
 
 obj-y				:= cpu.o devices.o devices-common.o \
-				   id.o usb.o timer.o pm.o
+				   id.o timer.o pm.o
 obj-$(CONFIG_CPU_IDLE)          += cpuidle.o
 obj-$(CONFIG_CACHE_L2X0)	+= cache-l2x0.o
 obj-$(CONFIG_UX500_SOC_DB8500)	+= cpu-db8500.o devices-db8500.o
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 12eee81..30024ff 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -162,17 +162,6 @@ static void __init db8500_add_gpios(struct device *parent)
 	dbx500_add_pinctrl(parent, "pinctrl-db8500", U8500_PRCMU_BASE);
 }
 
-static int usb_db8500_dma_cfg[] = {
-	DB8500_DMA_DEV38_USB_OTG_IEP_AND_OEP_1_9,
-	DB8500_DMA_DEV37_USB_OTG_IEP_AND_OEP_2_10,
-	DB8500_DMA_DEV36_USB_OTG_IEP_AND_OEP_3_11,
-	DB8500_DMA_DEV19_USB_OTG_IEP_AND_OEP_4_12,
-	DB8500_DMA_DEV18_USB_OTG_IEP_AND_OEP_5_13,
-	DB8500_DMA_DEV17_USB_OTG_IEP_AND_OEP_6_14,
-	DB8500_DMA_DEV16_USB_OTG_IEP_AND_OEP_7_15,
-	DB8500_DMA_DEV39_USB_OTG_IEP_AND_OEP_8
-};
-
 static const char *db8500_read_soc_id(void)
 {
 	void __iomem *uid = __io_address(U8500_BB_UID_BASE);
@@ -204,7 +193,6 @@ struct device * __init u8500_init_devices(void)
 
 	db8500_add_rtc(parent);
 	db8500_add_gpios(parent);
-	db8500_add_usb(parent, usb_db8500_dma_cfg, usb_db8500_dma_cfg);
 
 	for (i = 0; i < ARRAY_SIZE(platform_devs); i++)
 		platform_devs[i]->dev.parent = parent;
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index be1d538..9352400 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -8,7 +8,6 @@
 #ifndef __DEVICES_DB8500_H
 #define __DEVICES_DB8500_H
 
-#include <linux/platform_data/usb-musb-ux500.h>
 #include "irqs.h"
 #include "db8500-regs.h"
 #include "devices-common.h"
@@ -30,10 +29,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 #define db8500_add_rtc(parent) \
 	dbx500_add_rtc(parent, U8500_RTC_BASE, IRQ_DB8500_RTC);
 
-#define db8500_add_usb(parent, rx_cfg, tx_cfg) \
-	ux500_add_usb(parent, U8500_USBOTG_BASE, \
-		      IRQ_DB8500_USBOTG, rx_cfg, tx_cfg)
-
 #define db8500_add_ssp0(parent, pdata) \
 	db8500_add_ssp(parent, "ssp0", U8500_SSP0_BASE, \
 		       IRQ_DB8500_SSP0, pdata)
diff --git a/arch/arm/mach-ux500/usb.c b/arch/arm/mach-ux500/usb.c
deleted file mode 100644
index b7bd8d3..0000000
--- a/arch/arm/mach-ux500/usb.c
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Copyright (C) ST-Ericsson SA 2011
- *
- * Author: Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>
- * License terms: GNU General Public License (GPL) version 2
- */
-#include <linux/platform_device.h>
-#include <linux/usb/musb.h>
-#include <linux/dma-mapping.h>
-#include <linux/platform_data/usb-musb-ux500.h>
-#include <linux/platform_data/dma-ste-dma40.h>
-
-#include "db8500-regs.h"
-
-#define MUSB_DMA40_RX_CH { \
-		.mode = STEDMA40_MODE_LOGICAL, \
-		.dir = DMA_DEV_TO_MEM, \
-	}
-
-#define MUSB_DMA40_TX_CH { \
-		.mode = STEDMA40_MODE_LOGICAL, \
-		.dir = DMA_MEM_TO_DEV, \
-	}
-
-static struct stedma40_chan_cfg musb_dma_rx_ch[UX500_MUSB_DMA_NUM_RX_TX_CHANNELS]
-	= {
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH,
-	MUSB_DMA40_RX_CH
-};
-
-static struct stedma40_chan_cfg musb_dma_tx_ch[UX500_MUSB_DMA_NUM_RX_TX_CHANNELS]
-	= {
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-	MUSB_DMA40_TX_CH,
-};
-
-static void *ux500_dma_rx_param_array[UX500_MUSB_DMA_NUM_RX_TX_CHANNELS] = {
-	&musb_dma_rx_ch[0],
-	&musb_dma_rx_ch[1],
-	&musb_dma_rx_ch[2],
-	&musb_dma_rx_ch[3],
-	&musb_dma_rx_ch[4],
-	&musb_dma_rx_ch[5],
-	&musb_dma_rx_ch[6],
-	&musb_dma_rx_ch[7]
-};
-
-static void *ux500_dma_tx_param_array[UX500_MUSB_DMA_NUM_RX_TX_CHANNELS] = {
-	&musb_dma_tx_ch[0],
-	&musb_dma_tx_ch[1],
-	&musb_dma_tx_ch[2],
-	&musb_dma_tx_ch[3],
-	&musb_dma_tx_ch[4],
-	&musb_dma_tx_ch[5],
-	&musb_dma_tx_ch[6],
-	&musb_dma_tx_ch[7]
-};
-
-static struct ux500_musb_board_data musb_board_data = {
-	.dma_rx_param_array = ux500_dma_rx_param_array,
-	.dma_tx_param_array = ux500_dma_tx_param_array,
-	.dma_filter = stedma40_filter,
-};
-
-static struct musb_hdrc_platform_data musb_platform_data = {
-	.mode = MUSB_OTG,
-	.board_data = &musb_board_data,
-};
-
-static struct resource usb_resources[] = {
-	[0] = {
-		.name	= "usb-mem",
-		.flags	=  IORESOURCE_MEM,
-	},
-
-	[1] = {
-		.name   = "mc", /* hard-coded in musb */
-		.flags	= IORESOURCE_IRQ,
-	},
-};
-
-struct platform_device ux500_musb_device = {
-	.name = "musb-ux500",
-	.id = 0,
-	.dev = {
-		.platform_data = &musb_platform_data,
-		.coherent_dma_mask = DMA_BIT_MASK(32),
-	},
-	.num_resources = ARRAY_SIZE(usb_resources),
-	.resource = usb_resources,
-};
-
-static inline void ux500_usb_dma_update_rx_ch_config(int *dev_type)
-{
-	u32 idx;
-
-	for (idx = 0; idx < UX500_MUSB_DMA_NUM_RX_TX_CHANNELS; idx++)
-		musb_dma_rx_ch[idx].dev_type = dev_type[idx];
-}
-
-static inline void ux500_usb_dma_update_tx_ch_config(int *dev_type)
-{
-	u32 idx;
-
-	for (idx = 0; idx < UX500_MUSB_DMA_NUM_RX_TX_CHANNELS; idx++)
-		musb_dma_tx_ch[idx].dev_type = dev_type[idx];
-}
-
-void ux500_add_usb(struct device *parent, resource_size_t base, int irq,
-		   int *dma_rx_cfg, int *dma_tx_cfg)
-{
-	ux500_musb_device.resource[0].start = base;
-	ux500_musb_device.resource[0].end = base + SZ_64K - 1;
-	ux500_musb_device.resource[1].start = irq;
-	ux500_musb_device.resource[1].end = irq;
-
-	ux500_usb_dma_update_rx_ch_config(dma_rx_cfg);
-	ux500_usb_dma_update_tx_ch_config(dma_tx_cfg);
-
-	ux500_musb_device.dev.parent = parent;
-
-	platform_device_register(&ux500_musb_device);
-}
-- 
1.8.1.2

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

* [PATCH 21/40] ARM: ux500: Purge support for registering the RTC when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/cpu-db8500.c     | 1 -
 arch/arm/mach-ux500/devices-common.h | 7 -------
 arch/arm/mach-ux500/devices-db8500.h | 3 ---
 3 files changed, 11 deletions(-)

diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 30024ff..ebac072 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -191,7 +191,6 @@ struct device * __init u8500_init_devices(void)
 
 	parent = db8500_soc_device_init();
 
-	db8500_add_rtc(parent);
 	db8500_add_gpios(parent);
 
 	for (i = 0; i < ARRAY_SIZE(platform_devs); i++)
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 030f5a0..360112e2 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -33,13 +33,6 @@ dbx500_add_uart(struct device *parent, const char *name, resource_size_t base,
 	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
 }
 
-static inline struct amba_device *
-dbx500_add_rtc(struct device *parent, resource_size_t base, int irq)
-{
-	return amba_apb_device_add(parent, "rtc-pl031", base, SZ_4K, irq,
-				0, NULL, 0);
-}
-
 struct nmk_gpio_platform_data;
 
 void dbx500_add_gpios(struct device *parent, resource_size_t *base, int num,
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 9352400..0b523b5 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -26,9 +26,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
 }
 
-#define db8500_add_rtc(parent) \
-	dbx500_add_rtc(parent, U8500_RTC_BASE, IRQ_DB8500_RTC);
-
 #define db8500_add_ssp0(parent, pdata) \
 	db8500_add_ssp(parent, "ssp0", U8500_SSP0_BASE, \
 		       IRQ_DB8500_SSP0, pdata)
-- 
1.8.1.2


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

* [PATCH 21/40] ARM: ux500: Purge support for registering the RTC when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/cpu-db8500.c     | 1 -
 arch/arm/mach-ux500/devices-common.h | 7 -------
 arch/arm/mach-ux500/devices-db8500.h | 3 ---
 3 files changed, 11 deletions(-)

diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 30024ff..ebac072 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -191,7 +191,6 @@ struct device * __init u8500_init_devices(void)
 
 	parent = db8500_soc_device_init();
 
-	db8500_add_rtc(parent);
 	db8500_add_gpios(parent);
 
 	for (i = 0; i < ARRAY_SIZE(platform_devs); i++)
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 030f5a0..360112e2 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -33,13 +33,6 @@ dbx500_add_uart(struct device *parent, const char *name, resource_size_t base,
 	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
 }
 
-static inline struct amba_device *
-dbx500_add_rtc(struct device *parent, resource_size_t base, int irq)
-{
-	return amba_apb_device_add(parent, "rtc-pl031", base, SZ_4K, irq,
-				0, NULL, 0);
-}
-
 struct nmk_gpio_platform_data;
 
 void dbx500_add_gpios(struct device *parent, resource_size_t *base, int num,
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 9352400..0b523b5 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -26,9 +26,6 @@ db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
 	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
 }
 
-#define db8500_add_rtc(parent) \
-	dbx500_add_rtc(parent, U8500_RTC_BASE, IRQ_DB8500_RTC);
-
 #define db8500_add_ssp0(parent, pdata) \
 	db8500_add_ssp(parent, "ssp0", U8500_SSP0_BASE, \
 		       IRQ_DB8500_SSP0, pdata)
-- 
1.8.1.2

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

* [PATCH 22/40] ARM: ux500: Stop registering Pinctrl when booting with ATAG support
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/cpu-db8500.c     |  1 -
 arch/arm/mach-ux500/devices-common.h | 18 ------------------
 2 files changed, 19 deletions(-)

diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index ebac072..33264f5 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -159,7 +159,6 @@ static void __init db8500_add_gpios(struct device *parent)
 
 	dbx500_add_gpios(parent, ARRAY_AND_SIZE(db8500_gpio_base),
 			 IRQ_DB8500_GPIO0, &pdata);
-	dbx500_add_pinctrl(parent, "pinctrl-db8500", U8500_PRCMU_BASE);
 }
 
 static const char *db8500_read_soc_id(void)
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 360112e2..7167b69 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -38,22 +38,4 @@ struct nmk_gpio_platform_data;
 void dbx500_add_gpios(struct device *parent, resource_size_t *base, int num,
 		      int irq, struct nmk_gpio_platform_data *pdata);
 
-static inline void
-dbx500_add_pinctrl(struct device *parent, const char *name,
-		   resource_size_t base)
-{
-	struct resource res[] = {
-		DEFINE_RES_MEM(base, SZ_8K),
-	};
-	struct platform_device_info pdevinfo = {
-		.parent = parent,
-		.name = name,
-		.id = -1,
-		.res = res,
-		.num_res = ARRAY_SIZE(res),
-	};
-
-	platform_device_register_full(&pdevinfo);
-}
-
 #endif
-- 
1.8.1.2


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

* [PATCH 22/40] ARM: ux500: Stop registering Pinctrl when booting with ATAG support
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/cpu-db8500.c     |  1 -
 arch/arm/mach-ux500/devices-common.h | 18 ------------------
 2 files changed, 19 deletions(-)

diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index ebac072..33264f5 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -159,7 +159,6 @@ static void __init db8500_add_gpios(struct device *parent)
 
 	dbx500_add_gpios(parent, ARRAY_AND_SIZE(db8500_gpio_base),
 			 IRQ_DB8500_GPIO0, &pdata);
-	dbx500_add_pinctrl(parent, "pinctrl-db8500", U8500_PRCMU_BASE);
 }
 
 static const char *db8500_read_soc_id(void)
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 360112e2..7167b69 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -38,22 +38,4 @@ struct nmk_gpio_platform_data;
 void dbx500_add_gpios(struct device *parent, resource_size_t *base, int num,
 		      int irq, struct nmk_gpio_platform_data *pdata);
 
-static inline void
-dbx500_add_pinctrl(struct device *parent, const char *name,
-		   resource_size_t base)
-{
-	struct resource res[] = {
-		DEFINE_RES_MEM(base, SZ_8K),
-	};
-	struct platform_device_info pdevinfo = {
-		.parent = parent,
-		.name = name,
-		.id = -1,
-		.res = res,
-		.num_res = ARRAY_SIZE(res),
-	};
-
-	platform_device_register_full(&pdevinfo);
-}
-
 #endif
-- 
1.8.1.2

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

* [PATCH 23/40] ARM: ux500: Stop enabling GPIOs when not booting with Device Tree
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   |  2 --
 arch/arm/mach-ux500/cpu-db8500.c     | 24 ---------------
 arch/arm/mach-ux500/devices-common.c | 60 ------------------------------------
 arch/arm/mach-ux500/devices-common.h |  5 ---
 arch/arm/mach-ux500/devices-db8500.c |  1 -
 arch/arm/mach-ux500/devices.h        |  2 --
 6 files changed, 94 deletions(-)
 delete mode 100644 arch/arm/mach-ux500/devices-common.c

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index d53d672..7763c5b 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -15,7 +15,6 @@
 #include <linux/clk.h>
 #include <linux/io.h>
 #include <linux/platform_data/db8500_thermal.h>
-#include <linux/gpio.h>
 #include <linux/amba/bus.h>
 #include <linux/amba/pl022.h>
 #include <linux/amba/serial.h>
@@ -25,7 +24,6 @@
 #include <linux/regulator/fixed.h>
 #include <linux/regulator/driver.h>
 #include <linux/mfd/tps6105x.h>
-#include <linux/mfd/abx500/ab8500-gpio.h>
 #include <linux/platform_data/leds-lp55xx.h>
 #include <linux/input.h>
 #include <linux/delay.h>
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 33264f5..69cee39 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -139,28 +139,6 @@ static struct platform_device *platform_devs[] __initdata = {
 	&db8500_pmu_device,
 };
 
-static resource_size_t __initdata db8500_gpio_base[] = {
-	U8500_GPIOBANK0_BASE,
-	U8500_GPIOBANK1_BASE,
-	U8500_GPIOBANK2_BASE,
-	U8500_GPIOBANK3_BASE,
-	U8500_GPIOBANK4_BASE,
-	U8500_GPIOBANK5_BASE,
-	U8500_GPIOBANK6_BASE,
-	U8500_GPIOBANK7_BASE,
-	U8500_GPIOBANK8_BASE,
-};
-
-static void __init db8500_add_gpios(struct device *parent)
-{
-	struct nmk_gpio_platform_data pdata = {
-		.supports_sleepmode = true,
-	};
-
-	dbx500_add_gpios(parent, ARRAY_AND_SIZE(db8500_gpio_base),
-			 IRQ_DB8500_GPIO0, &pdata);
-}
-
 static const char *db8500_read_soc_id(void)
 {
 	void __iomem *uid = __io_address(U8500_BB_UID_BASE);
@@ -190,8 +168,6 @@ struct device * __init u8500_init_devices(void)
 
 	parent = db8500_soc_device_init();
 
-	db8500_add_gpios(parent);
-
 	for (i = 0; i < ARRAY_SIZE(platform_devs); i++)
 		platform_devs[i]->dev.parent = parent;
 
diff --git a/arch/arm/mach-ux500/devices-common.c b/arch/arm/mach-ux500/devices-common.c
deleted file mode 100644
index f71b3d7..0000000
--- a/arch/arm/mach-ux500/devices-common.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (C) ST-Ericsson SA 2010
- *
- * Author: Rabin Vincent <rabin.vincent@stericsson.com> for ST-Ericsson
- * License terms: GNU General Public License (GPL), version 2.
- */
-
-#include <linux/kernel.h>
-#include <linux/dma-mapping.h>
-#include <linux/err.h>
-#include <linux/irq.h>
-#include <linux/slab.h>
-#include <linux/platform_device.h>
-#include <linux/platform_data/pinctrl-nomadik.h>
-
-#include "irqs.h"
-
-#include "devices-common.h"
-
-static struct platform_device *
-dbx500_add_gpio(struct device *parent, int id, resource_size_t addr, int irq,
-		struct nmk_gpio_platform_data *pdata)
-{
-	struct resource resources[] = {
-		{
-			.start	= addr,
-			.end	= addr + 127,
-			.flags	= IORESOURCE_MEM,
-		},
-		{
-			.start	= irq,
-			.end	= irq,
-			.flags	= IORESOURCE_IRQ,
-		}
-	};
-
-	return platform_device_register_resndata(
-		parent,
-		"gpio",
-		id,
-		resources,
-		ARRAY_SIZE(resources),
-		pdata,
-		sizeof(*pdata));
-}
-
-void dbx500_add_gpios(struct device *parent, resource_size_t *base, int num,
-		      int irq, struct nmk_gpio_platform_data *pdata)
-{
-	int first = 0;
-	int i;
-
-	for (i = 0; i < num; i++, first += 32, irq++) {
-		pdata->first_gpio = first;
-		pdata->first_irq = NOMADIK_GPIO_TO_IRQ(first);
-		pdata->num_gpio = 32;
-
-		dbx500_add_gpio(parent, i, base[i], irq, pdata);
-	}
-}
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 7167b69..ce48a02 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -33,9 +33,4 @@ dbx500_add_uart(struct device *parent, const char *name, resource_size_t base,
 	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
 }
 
-struct nmk_gpio_platform_data;
-
-void dbx500_add_gpios(struct device *parent, resource_size_t *base, int num,
-		      int irq, struct nmk_gpio_platform_data *pdata);
-
 #endif
diff --git a/arch/arm/mach-ux500/devices-db8500.c b/arch/arm/mach-ux500/devices-db8500.c
index 3c5393b..d30205b 100644
--- a/arch/arm/mach-ux500/devices-db8500.c
+++ b/arch/arm/mach-ux500/devices-db8500.c
@@ -9,7 +9,6 @@
 #include <linux/platform_device.h>
 #include <linux/interrupt.h>
 #include <linux/io.h>
-#include <linux/gpio.h>
 #include <linux/amba/bus.h>
 #include <linux/amba/pl022.h>
 #include <linux/platform_data/dma-ste-dma40.h>
diff --git a/arch/arm/mach-ux500/devices.h b/arch/arm/mach-ux500/devices.h
index eafb07a..da23c05 100644
--- a/arch/arm/mach-ux500/devices.h
+++ b/arch/arm/mach-ux500/devices.h
@@ -10,8 +10,6 @@
 struct platform_device;
 struct amba_device;
 
-extern struct platform_device u8500_gpio_devs[];
-
 extern struct amba_device ux500_pl031_device;
 
 extern struct platform_device u8500_dma40_device;
-- 
1.8.1.2


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

* [PATCH 23/40] ARM: ux500: Stop enabling GPIOs when not booting with Device Tree
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   |  2 --
 arch/arm/mach-ux500/cpu-db8500.c     | 24 ---------------
 arch/arm/mach-ux500/devices-common.c | 60 ------------------------------------
 arch/arm/mach-ux500/devices-common.h |  5 ---
 arch/arm/mach-ux500/devices-db8500.c |  1 -
 arch/arm/mach-ux500/devices.h        |  2 --
 6 files changed, 94 deletions(-)
 delete mode 100644 arch/arm/mach-ux500/devices-common.c

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index d53d672..7763c5b 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -15,7 +15,6 @@
 #include <linux/clk.h>
 #include <linux/io.h>
 #include <linux/platform_data/db8500_thermal.h>
-#include <linux/gpio.h>
 #include <linux/amba/bus.h>
 #include <linux/amba/pl022.h>
 #include <linux/amba/serial.h>
@@ -25,7 +24,6 @@
 #include <linux/regulator/fixed.h>
 #include <linux/regulator/driver.h>
 #include <linux/mfd/tps6105x.h>
-#include <linux/mfd/abx500/ab8500-gpio.h>
 #include <linux/platform_data/leds-lp55xx.h>
 #include <linux/input.h>
 #include <linux/delay.h>
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 33264f5..69cee39 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -139,28 +139,6 @@ static struct platform_device *platform_devs[] __initdata = {
 	&db8500_pmu_device,
 };
 
-static resource_size_t __initdata db8500_gpio_base[] = {
-	U8500_GPIOBANK0_BASE,
-	U8500_GPIOBANK1_BASE,
-	U8500_GPIOBANK2_BASE,
-	U8500_GPIOBANK3_BASE,
-	U8500_GPIOBANK4_BASE,
-	U8500_GPIOBANK5_BASE,
-	U8500_GPIOBANK6_BASE,
-	U8500_GPIOBANK7_BASE,
-	U8500_GPIOBANK8_BASE,
-};
-
-static void __init db8500_add_gpios(struct device *parent)
-{
-	struct nmk_gpio_platform_data pdata = {
-		.supports_sleepmode = true,
-	};
-
-	dbx500_add_gpios(parent, ARRAY_AND_SIZE(db8500_gpio_base),
-			 IRQ_DB8500_GPIO0, &pdata);
-}
-
 static const char *db8500_read_soc_id(void)
 {
 	void __iomem *uid = __io_address(U8500_BB_UID_BASE);
@@ -190,8 +168,6 @@ struct device * __init u8500_init_devices(void)
 
 	parent = db8500_soc_device_init();
 
-	db8500_add_gpios(parent);
-
 	for (i = 0; i < ARRAY_SIZE(platform_devs); i++)
 		platform_devs[i]->dev.parent = parent;
 
diff --git a/arch/arm/mach-ux500/devices-common.c b/arch/arm/mach-ux500/devices-common.c
deleted file mode 100644
index f71b3d7..0000000
--- a/arch/arm/mach-ux500/devices-common.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (C) ST-Ericsson SA 2010
- *
- * Author: Rabin Vincent <rabin.vincent@stericsson.com> for ST-Ericsson
- * License terms: GNU General Public License (GPL), version 2.
- */
-
-#include <linux/kernel.h>
-#include <linux/dma-mapping.h>
-#include <linux/err.h>
-#include <linux/irq.h>
-#include <linux/slab.h>
-#include <linux/platform_device.h>
-#include <linux/platform_data/pinctrl-nomadik.h>
-
-#include "irqs.h"
-
-#include "devices-common.h"
-
-static struct platform_device *
-dbx500_add_gpio(struct device *parent, int id, resource_size_t addr, int irq,
-		struct nmk_gpio_platform_data *pdata)
-{
-	struct resource resources[] = {
-		{
-			.start	= addr,
-			.end	= addr + 127,
-			.flags	= IORESOURCE_MEM,
-		},
-		{
-			.start	= irq,
-			.end	= irq,
-			.flags	= IORESOURCE_IRQ,
-		}
-	};
-
-	return platform_device_register_resndata(
-		parent,
-		"gpio",
-		id,
-		resources,
-		ARRAY_SIZE(resources),
-		pdata,
-		sizeof(*pdata));
-}
-
-void dbx500_add_gpios(struct device *parent, resource_size_t *base, int num,
-		      int irq, struct nmk_gpio_platform_data *pdata)
-{
-	int first = 0;
-	int i;
-
-	for (i = 0; i < num; i++, first += 32, irq++) {
-		pdata->first_gpio = first;
-		pdata->first_irq = NOMADIK_GPIO_TO_IRQ(first);
-		pdata->num_gpio = 32;
-
-		dbx500_add_gpio(parent, i, base[i], irq, pdata);
-	}
-}
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 7167b69..ce48a02 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -33,9 +33,4 @@ dbx500_add_uart(struct device *parent, const char *name, resource_size_t base,
 	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
 }
 
-struct nmk_gpio_platform_data;
-
-void dbx500_add_gpios(struct device *parent, resource_size_t *base, int num,
-		      int irq, struct nmk_gpio_platform_data *pdata);
-
 #endif
diff --git a/arch/arm/mach-ux500/devices-db8500.c b/arch/arm/mach-ux500/devices-db8500.c
index 3c5393b..d30205b 100644
--- a/arch/arm/mach-ux500/devices-db8500.c
+++ b/arch/arm/mach-ux500/devices-db8500.c
@@ -9,7 +9,6 @@
 #include <linux/platform_device.h>
 #include <linux/interrupt.h>
 #include <linux/io.h>
-#include <linux/gpio.h>
 #include <linux/amba/bus.h>
 #include <linux/amba/pl022.h>
 #include <linux/platform_data/dma-ste-dma40.h>
diff --git a/arch/arm/mach-ux500/devices.h b/arch/arm/mach-ux500/devices.h
index eafb07a..da23c05 100644
--- a/arch/arm/mach-ux500/devices.h
+++ b/arch/arm/mach-ux500/devices.h
@@ -10,8 +10,6 @@
 struct platform_device;
 struct amba_device;
 
-extern struct platform_device u8500_gpio_devs[];
-
 extern struct amba_device ux500_pl031_device;
 
 extern struct platform_device u8500_dma40_device;
-- 
1.8.1.2

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

* [PATCH 24/40] ARM: ux500: Deactivate enablement of DMA40 during ATAG booting
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.h   |  1 -
 arch/arm/mach-ux500/cpu-db8500.c     |  2 --
 arch/arm/mach-ux500/devices-db8500.c | 36 ------------------------------------
 arch/arm/mach-ux500/devices.h        |  2 --
 4 files changed, 41 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 06eb894..3b35a73 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -92,7 +92,6 @@ extern struct amba_pl011_data uart0_plat;
 extern struct amba_pl011_data uart1_plat;
 extern struct amba_pl011_data uart2_plat;
 extern struct pl022_ssp_controller ssp0_plat;
-extern struct stedma40_platform_data dma40_plat_data;
 
 void __init mop500_u8500uib_init(void);
 void __init mop500_stuib_init(void);
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 69cee39..1289a67 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -33,7 +33,6 @@
 #include "irqs.h"
 
 #include "devices-db8500.h"
-#include "ste-dma40-db8500.h"
 #include "db8500-regs.h"
 #include "board-mop500.h"
 #include "id.h"
@@ -135,7 +134,6 @@ static struct platform_device db8500_pmu_device = {
 };
 
 static struct platform_device *platform_devs[] __initdata = {
-	&u8500_dma40_device,
 	&db8500_pmu_device,
 };
 
diff --git a/arch/arm/mach-ux500/devices-db8500.c b/arch/arm/mach-ux500/devices-db8500.c
index d30205b..1b2faba 100644
--- a/arch/arm/mach-ux500/devices-db8500.c
+++ b/arch/arm/mach-ux500/devices-db8500.c
@@ -11,7 +11,6 @@
 #include <linux/io.h>
 #include <linux/amba/bus.h>
 #include <linux/amba/pl022.h>
-#include <linux/platform_data/dma-ste-dma40.h>
 #include <linux/mfd/dbx500-prcmu.h>
 
 #include "setup.h"
@@ -19,41 +18,6 @@
 
 #include "db8500-regs.h"
 #include "devices-db8500.h"
-#include "ste-dma40-db8500.h"
-
-static struct resource dma40_resources[] = {
-	[0] = {
-		.start = U8500_DMA_BASE,
-		.end   = U8500_DMA_BASE + SZ_4K - 1,
-		.flags = IORESOURCE_MEM,
-		.name  = "base",
-	},
-	[1] = {
-		.start = U8500_DMA_LCPA_BASE,
-		.end   = U8500_DMA_LCPA_BASE + 2 * SZ_1K - 1,
-		.flags = IORESOURCE_MEM,
-		.name  = "lcpa",
-	},
-	[2] = {
-		.start = IRQ_DB8500_DMA,
-		.end   = IRQ_DB8500_DMA,
-		.flags = IORESOURCE_IRQ,
-	}
-};
-
-struct stedma40_platform_data dma40_plat_data = {
-	.disabled_channels = {-1},
-};
-
-struct platform_device u8500_dma40_device = {
-	.dev = {
-		.platform_data = &dma40_plat_data,
-	},
-	.name = "dma40",
-	.id = 0,
-	.num_resources = ARRAY_SIZE(dma40_resources),
-	.resource = dma40_resources
-};
 
 struct prcmu_pdata db8500_prcmu_pdata = {
 	.ab_platdata	= &ab8500_platdata,
diff --git a/arch/arm/mach-ux500/devices.h b/arch/arm/mach-ux500/devices.h
index da23c05..5bca7c6 100644
--- a/arch/arm/mach-ux500/devices.h
+++ b/arch/arm/mach-ux500/devices.h
@@ -12,6 +12,4 @@ struct amba_device;
 
 extern struct amba_device ux500_pl031_device;
 
-extern struct platform_device u8500_dma40_device;
-
 #endif
-- 
1.8.1.2


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

* [PATCH 24/40] ARM: ux500: Deactivate enablement of DMA40 during ATAG booting
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.h   |  1 -
 arch/arm/mach-ux500/cpu-db8500.c     |  2 --
 arch/arm/mach-ux500/devices-db8500.c | 36 ------------------------------------
 arch/arm/mach-ux500/devices.h        |  2 --
 4 files changed, 41 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 06eb894..3b35a73 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -92,7 +92,6 @@ extern struct amba_pl011_data uart0_plat;
 extern struct amba_pl011_data uart1_plat;
 extern struct amba_pl011_data uart2_plat;
 extern struct pl022_ssp_controller ssp0_plat;
-extern struct stedma40_platform_data dma40_plat_data;
 
 void __init mop500_u8500uib_init(void);
 void __init mop500_stuib_init(void);
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 69cee39..1289a67 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -33,7 +33,6 @@
 #include "irqs.h"
 
 #include "devices-db8500.h"
-#include "ste-dma40-db8500.h"
 #include "db8500-regs.h"
 #include "board-mop500.h"
 #include "id.h"
@@ -135,7 +134,6 @@ static struct platform_device db8500_pmu_device = {
 };
 
 static struct platform_device *platform_devs[] __initdata = {
-	&u8500_dma40_device,
 	&db8500_pmu_device,
 };
 
diff --git a/arch/arm/mach-ux500/devices-db8500.c b/arch/arm/mach-ux500/devices-db8500.c
index d30205b..1b2faba 100644
--- a/arch/arm/mach-ux500/devices-db8500.c
+++ b/arch/arm/mach-ux500/devices-db8500.c
@@ -11,7 +11,6 @@
 #include <linux/io.h>
 #include <linux/amba/bus.h>
 #include <linux/amba/pl022.h>
-#include <linux/platform_data/dma-ste-dma40.h>
 #include <linux/mfd/dbx500-prcmu.h>
 
 #include "setup.h"
@@ -19,41 +18,6 @@
 
 #include "db8500-regs.h"
 #include "devices-db8500.h"
-#include "ste-dma40-db8500.h"
-
-static struct resource dma40_resources[] = {
-	[0] = {
-		.start = U8500_DMA_BASE,
-		.end   = U8500_DMA_BASE + SZ_4K - 1,
-		.flags = IORESOURCE_MEM,
-		.name  = "base",
-	},
-	[1] = {
-		.start = U8500_DMA_LCPA_BASE,
-		.end   = U8500_DMA_LCPA_BASE + 2 * SZ_1K - 1,
-		.flags = IORESOURCE_MEM,
-		.name  = "lcpa",
-	},
-	[2] = {
-		.start = IRQ_DB8500_DMA,
-		.end   = IRQ_DB8500_DMA,
-		.flags = IORESOURCE_IRQ,
-	}
-};
-
-struct stedma40_platform_data dma40_plat_data = {
-	.disabled_channels = {-1},
-};
-
-struct platform_device u8500_dma40_device = {
-	.dev = {
-		.platform_data = &dma40_plat_data,
-	},
-	.name = "dma40",
-	.id = 0,
-	.num_resources = ARRAY_SIZE(dma40_resources),
-	.resource = dma40_resources
-};
 
 struct prcmu_pdata db8500_prcmu_pdata = {
 	.ab_platdata	= &ab8500_platdata,
diff --git a/arch/arm/mach-ux500/devices.h b/arch/arm/mach-ux500/devices.h
index da23c05..5bca7c6 100644
--- a/arch/arm/mach-ux500/devices.h
+++ b/arch/arm/mach-ux500/devices.h
@@ -12,6 +12,4 @@ struct amba_device;
 
 extern struct amba_device ux500_pl031_device;
 
-extern struct platform_device u8500_dma40_device;
-
 #endif
-- 
1.8.1.2

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

* [PATCH 25/40] ARM: ux500: Do not register the PMU device if booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

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

diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 3b35a73..2cced8b 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -87,7 +87,6 @@ extern struct msp_i2s_platform_data msp0_platform_data;
 extern struct msp_i2s_platform_data msp1_platform_data;
 extern struct msp_i2s_platform_data msp2_platform_data;
 extern struct msp_i2s_platform_data msp3_platform_data;
-extern struct arm_pmu_platdata db8500_pmu_platdata;
 extern struct amba_pl011_data uart0_plat;
 extern struct amba_pl011_data uart1_plat;
 extern struct amba_pl011_data uart2_plat;
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 1289a67..0ec6ddf 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -93,14 +93,6 @@ void __init u8500_map_io(void)
 		iotable_init(u8500_io_desc, ARRAY_SIZE(u8500_io_desc));
 }
 
-static struct resource db8500_pmu_resources[] = {
-	[0] = {
-		.start		= IRQ_DB8500_PMU,
-		.end		= IRQ_DB8500_PMU,
-		.flags		= IORESOURCE_IRQ,
-	},
-};
-
 /*
  * The PMU IRQ lines of two cores are wired together into a single interrupt.
  * Bounce the interrupt to the other core if it's not ours.
@@ -125,18 +117,6 @@ struct arm_pmu_platdata db8500_pmu_platdata = {
 	.handle_irq		= db8500_pmu_handler,
 };
 
-static struct platform_device db8500_pmu_device = {
-	.name			= "arm-pmu",
-	.id			= -1,
-	.num_resources		= ARRAY_SIZE(db8500_pmu_resources),
-	.resource		= db8500_pmu_resources,
-	.dev.platform_data	= &db8500_pmu_platdata,
-};
-
-static struct platform_device *platform_devs[] __initdata = {
-	&db8500_pmu_device,
-};
-
 static const char *db8500_read_soc_id(void)
 {
 	void __iomem *uid = __io_address(U8500_BB_UID_BASE);
@@ -161,17 +141,7 @@ static struct device * __init db8500_soc_device_init(void)
  */
 struct device * __init u8500_init_devices(void)
 {
-	struct device *parent;
-	int i;
-
-	parent = db8500_soc_device_init();
-
-	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;
+	return db8500_soc_device_init();
 }
 
 #ifdef CONFIG_MACH_UX500_DT
-- 
1.8.1.2


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

* [PATCH 25/40] ARM: ux500: Do not register the PMU device if booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

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

diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 3b35a73..2cced8b 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -87,7 +87,6 @@ extern struct msp_i2s_platform_data msp0_platform_data;
 extern struct msp_i2s_platform_data msp1_platform_data;
 extern struct msp_i2s_platform_data msp2_platform_data;
 extern struct msp_i2s_platform_data msp3_platform_data;
-extern struct arm_pmu_platdata db8500_pmu_platdata;
 extern struct amba_pl011_data uart0_plat;
 extern struct amba_pl011_data uart1_plat;
 extern struct amba_pl011_data uart2_plat;
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 1289a67..0ec6ddf 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -93,14 +93,6 @@ void __init u8500_map_io(void)
 		iotable_init(u8500_io_desc, ARRAY_SIZE(u8500_io_desc));
 }
 
-static struct resource db8500_pmu_resources[] = {
-	[0] = {
-		.start		= IRQ_DB8500_PMU,
-		.end		= IRQ_DB8500_PMU,
-		.flags		= IORESOURCE_IRQ,
-	},
-};
-
 /*
  * The PMU IRQ lines of two cores are wired together into a single interrupt.
  * Bounce the interrupt to the other core if it's not ours.
@@ -125,18 +117,6 @@ struct arm_pmu_platdata db8500_pmu_platdata = {
 	.handle_irq		= db8500_pmu_handler,
 };
 
-static struct platform_device db8500_pmu_device = {
-	.name			= "arm-pmu",
-	.id			= -1,
-	.num_resources		= ARRAY_SIZE(db8500_pmu_resources),
-	.resource		= db8500_pmu_resources,
-	.dev.platform_data	= &db8500_pmu_platdata,
-};
-
-static struct platform_device *platform_devs[] __initdata = {
-	&db8500_pmu_device,
-};
-
 static const char *db8500_read_soc_id(void)
 {
 	void __iomem *uid = __io_address(U8500_BB_UID_BASE);
@@ -161,17 +141,7 @@ static struct device * __init db8500_soc_device_init(void)
  */
 struct device * __init u8500_init_devices(void)
 {
-	struct device *parent;
-	int i;
-
-	parent = db8500_soc_device_init();
-
-	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;
+	return db8500_soc_device_init();
 }
 
 #ifdef CONFIG_MACH_UX500_DT
-- 
1.8.1.2

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

* [PATCH 26/40] ARM: ux500: Rip out SSP/SPI registration when not booting with Device Tree
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   |  9 ---------
 arch/arm/mach-ux500/devices-common.h | 11 -----------
 arch/arm/mach-ux500/devices-db8500.h | 28 ----------------------------
 3 files changed, 48 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 7763c5b..939ba22 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -18,7 +18,6 @@
 #include <linux/amba/bus.h>
 #include <linux/amba/pl022.h>
 #include <linux/amba/serial.h>
-#include <linux/spi/spi.h>
 #include <linux/mfd/abx500/ab8500.h>
 #include <linux/regulator/ab8500.h>
 #include <linux/regulator/fixed.h>
@@ -80,11 +79,6 @@ struct pl022_ssp_controller ssp0_plat = {
 	.num_chipselect = 5,
 };
 
-static void __init mop500_spi_init(struct device *parent)
-{
-	db8500_add_ssp0(parent, &ssp0_plat);
-}
-
 #ifdef CONFIG_STE_DMA40
 static struct stedma40_chan_cfg uart0_dma_cfg_rx = {
 	.mode = STEDMA40_MODE_LOGICAL,
@@ -163,7 +157,6 @@ static void __init mop500_init_machine(void)
 	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
 	/* This board has full regulator constraints */
@@ -179,7 +172,6 @@ static void __init snowball_init_machine(void)
 	snowball_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
 	/* This board has full regulator constraints */
@@ -195,7 +187,6 @@ static void __init hrefv60_init_machine(void)
 	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
 	/* This board has full regulator constraints */
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index ce48a02..15bf1ab 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -13,17 +13,6 @@
 #include <linux/sys_soc.h>
 #include <linux/amba/bus.h>
 
-struct spi_master_cntlr;
-
-static inline struct amba_device *
-dbx500_add_spi(struct device *parent, const char *name, resource_size_t base,
-	       int irq, struct spi_master_cntlr *pdata,
-	       u32 periphid)
-{
-	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0,
-				   pdata, periphid);
-}
-
 struct amba_pl011_data;
 
 static inline struct amba_device *
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 0b523b5..e6ac6d2 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -12,40 +12,12 @@
 #include "db8500-regs.h"
 #include "devices-common.h"
 
-struct pl022_ssp_controller;
 struct platform_device;
 
 extern struct ab8500_platform_data ab8500_platdata;
 extern struct prcmu_pdata db8500_prcmu_pdata;
 extern struct platform_device db8500_prcmu_device;
 
-static inline struct amba_device *
-db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
-	       int irq, struct pl022_ssp_controller *pdata)
-{
-	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
-}
-
-#define db8500_add_ssp0(parent, pdata) \
-	db8500_add_ssp(parent, "ssp0", U8500_SSP0_BASE, \
-		       IRQ_DB8500_SSP0, pdata)
-#define db8500_add_ssp1(parent, pdata) \
-	db8500_add_ssp(parent, "ssp1", U8500_SSP1_BASE, \
-		       IRQ_DB8500_SSP1, pdata)
-
-#define db8500_add_spi0(parent, pdata) \
-	dbx500_add_spi(parent, "spi0", U8500_SPI0_BASE, \
-		       IRQ_DB8500_SPI0, pdata, 0)
-#define db8500_add_spi1(parent, pdata) \
-	dbx500_add_spi(parent, "spi1", U8500_SPI1_BASE, \
-		       IRQ_DB8500_SPI1, pdata, 0)
-#define db8500_add_spi2(parent, pdata) \
-	dbx500_add_spi(parent, "spi2", U8500_SPI2_BASE, \
-		       IRQ_DB8500_SPI2, pdata, 0)
-#define db8500_add_spi3(parent, pdata) \
-	dbx500_add_spi(parent, "spi3", U8500_SPI3_BASE, \
-		       IRQ_DB8500_SPI3, pdata, 0)
-
 #define db8500_add_uart0(parent, pdata) \
 	dbx500_add_uart(parent, "uart0", U8500_UART0_BASE, \
 			IRQ_DB8500_UART0, pdata)
-- 
1.8.1.2


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

* [PATCH 26/40] ARM: ux500: Rip out SSP/SPI registration when not booting with Device Tree
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   |  9 ---------
 arch/arm/mach-ux500/devices-common.h | 11 -----------
 arch/arm/mach-ux500/devices-db8500.h | 28 ----------------------------
 3 files changed, 48 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 7763c5b..939ba22 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -18,7 +18,6 @@
 #include <linux/amba/bus.h>
 #include <linux/amba/pl022.h>
 #include <linux/amba/serial.h>
-#include <linux/spi/spi.h>
 #include <linux/mfd/abx500/ab8500.h>
 #include <linux/regulator/ab8500.h>
 #include <linux/regulator/fixed.h>
@@ -80,11 +79,6 @@ struct pl022_ssp_controller ssp0_plat = {
 	.num_chipselect = 5,
 };
 
-static void __init mop500_spi_init(struct device *parent)
-{
-	db8500_add_ssp0(parent, &ssp0_plat);
-}
-
 #ifdef CONFIG_STE_DMA40
 static struct stedma40_chan_cfg uart0_dma_cfg_rx = {
 	.mode = STEDMA40_MODE_LOGICAL,
@@ -163,7 +157,6 @@ static void __init mop500_init_machine(void)
 	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
 	/* This board has full regulator constraints */
@@ -179,7 +172,6 @@ static void __init snowball_init_machine(void)
 	snowball_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
 	/* This board has full regulator constraints */
@@ -195,7 +187,6 @@ static void __init hrefv60_init_machine(void)
 	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
-	mop500_spi_init(parent);
 	mop500_uart_init(parent);
 
 	/* This board has full regulator constraints */
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index ce48a02..15bf1ab 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -13,17 +13,6 @@
 #include <linux/sys_soc.h>
 #include <linux/amba/bus.h>
 
-struct spi_master_cntlr;
-
-static inline struct amba_device *
-dbx500_add_spi(struct device *parent, const char *name, resource_size_t base,
-	       int irq, struct spi_master_cntlr *pdata,
-	       u32 periphid)
-{
-	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0,
-				   pdata, periphid);
-}
-
 struct amba_pl011_data;
 
 static inline struct amba_device *
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index 0b523b5..e6ac6d2 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -12,40 +12,12 @@
 #include "db8500-regs.h"
 #include "devices-common.h"
 
-struct pl022_ssp_controller;
 struct platform_device;
 
 extern struct ab8500_platform_data ab8500_platdata;
 extern struct prcmu_pdata db8500_prcmu_pdata;
 extern struct platform_device db8500_prcmu_device;
 
-static inline struct amba_device *
-db8500_add_ssp(struct device *parent, const char *name, resource_size_t base,
-	       int irq, struct pl022_ssp_controller *pdata)
-{
-	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
-}
-
-#define db8500_add_ssp0(parent, pdata) \
-	db8500_add_ssp(parent, "ssp0", U8500_SSP0_BASE, \
-		       IRQ_DB8500_SSP0, pdata)
-#define db8500_add_ssp1(parent, pdata) \
-	db8500_add_ssp(parent, "ssp1", U8500_SSP1_BASE, \
-		       IRQ_DB8500_SSP1, pdata)
-
-#define db8500_add_spi0(parent, pdata) \
-	dbx500_add_spi(parent, "spi0", U8500_SPI0_BASE, \
-		       IRQ_DB8500_SPI0, pdata, 0)
-#define db8500_add_spi1(parent, pdata) \
-	dbx500_add_spi(parent, "spi1", U8500_SPI1_BASE, \
-		       IRQ_DB8500_SPI1, pdata, 0)
-#define db8500_add_spi2(parent, pdata) \
-	dbx500_add_spi(parent, "spi2", U8500_SPI2_BASE, \
-		       IRQ_DB8500_SPI2, pdata, 0)
-#define db8500_add_spi3(parent, pdata) \
-	dbx500_add_spi(parent, "spi3", U8500_SPI3_BASE, \
-		       IRQ_DB8500_SPI3, pdata, 0)
-
 #define db8500_add_uart0(parent, pdata) \
 	dbx500_add_uart(parent, "uart0", U8500_UART0_BASE, \
 			IRQ_DB8500_UART0, pdata)
-- 
1.8.1.2

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

* [PATCH 27/40] ARM: ux500: Stop initialising the pinmaps when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

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

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 939ba22..0ae083b 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -154,7 +154,6 @@ static void __init mop500_init_machine(void)
 
 	platform_device_register(&db8500_prcmu_device);
 
-	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
 	mop500_uart_init(parent);
@@ -169,7 +168,6 @@ static void __init snowball_init_machine(void)
 
 	platform_device_register(&db8500_prcmu_device);
 
-	snowball_pinmaps_init();
 	parent = u8500_init_devices();
 
 	mop500_uart_init(parent);
@@ -184,7 +182,6 @@ static void __init hrefv60_init_machine(void)
 
 	platform_device_register(&db8500_prcmu_device);
 
-	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
 	mop500_uart_init(parent);
-- 
1.8.1.2


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

* [PATCH 27/40] ARM: ux500: Stop initialising the pinmaps when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

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

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 939ba22..0ae083b 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -154,7 +154,6 @@ static void __init mop500_init_machine(void)
 
 	platform_device_register(&db8500_prcmu_device);
 
-	mop500_pinmaps_init();
 	parent = u8500_init_devices();
 
 	mop500_uart_init(parent);
@@ -169,7 +168,6 @@ static void __init snowball_init_machine(void)
 
 	platform_device_register(&db8500_prcmu_device);
 
-	snowball_pinmaps_init();
 	parent = u8500_init_devices();
 
 	mop500_uart_init(parent);
@@ -184,7 +182,6 @@ static void __init hrefv60_init_machine(void)
 
 	platform_device_register(&db8500_prcmu_device);
 
-	hrefv60_pinmaps_init();
 	parent = u8500_init_devices();
 
 	mop500_uart_init(parent);
-- 
1.8.1.2

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

* [PATCH 28/40] ARM: ux500: Remove UART support when booting without Device Tree
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   | 76 ------------------------------------
 arch/arm/mach-ux500/board-mop500.h   |  3 --
 arch/arm/mach-ux500/devices-common.h | 10 -----
 arch/arm/mach-ux500/devices-db8500.h | 10 -----
 4 files changed, 99 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 0ae083b..db6908a 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -17,7 +17,6 @@
 #include <linux/platform_data/db8500_thermal.h>
 #include <linux/amba/bus.h>
 #include <linux/amba/pl022.h>
-#include <linux/amba/serial.h>
 #include <linux/mfd/abx500/ab8500.h>
 #include <linux/regulator/ab8500.h>
 #include <linux/regulator/fixed.h>
@@ -79,75 +78,6 @@ struct pl022_ssp_controller ssp0_plat = {
 	.num_chipselect = 5,
 };
 
-#ifdef CONFIG_STE_DMA40
-static struct stedma40_chan_cfg uart0_dma_cfg_rx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_DEV_TO_MEM,
-	.dev_type = DB8500_DMA_DEV13_UART0,
-};
-
-static struct stedma40_chan_cfg uart0_dma_cfg_tx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_MEM_TO_DEV,
-	.dev_type = DB8500_DMA_DEV13_UART0,
-};
-
-static struct stedma40_chan_cfg uart1_dma_cfg_rx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_DEV_TO_MEM,
-	.dev_type = DB8500_DMA_DEV12_UART1,
-};
-
-static struct stedma40_chan_cfg uart1_dma_cfg_tx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_MEM_TO_DEV,
-	.dev_type = DB8500_DMA_DEV12_UART1,
-};
-
-static struct stedma40_chan_cfg uart2_dma_cfg_rx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_DEV_TO_MEM,
-	.dev_type = DB8500_DMA_DEV11_UART2,
-};
-
-static struct stedma40_chan_cfg uart2_dma_cfg_tx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_MEM_TO_DEV,
-	.dev_type = DB8500_DMA_DEV11_UART2,
-};
-#endif
-
-struct amba_pl011_data uart0_plat = {
-#ifdef CONFIG_STE_DMA40
-	.dma_filter = stedma40_filter,
-	.dma_rx_param = &uart0_dma_cfg_rx,
-	.dma_tx_param = &uart0_dma_cfg_tx,
-#endif
-};
-
-struct amba_pl011_data uart1_plat = {
-#ifdef CONFIG_STE_DMA40
-	.dma_filter = stedma40_filter,
-	.dma_rx_param = &uart1_dma_cfg_rx,
-	.dma_tx_param = &uart1_dma_cfg_tx,
-#endif
-};
-
-struct amba_pl011_data uart2_plat = {
-#ifdef CONFIG_STE_DMA40
-	.dma_filter = stedma40_filter,
-	.dma_rx_param = &uart2_dma_cfg_rx,
-	.dma_tx_param = &uart2_dma_cfg_tx,
-#endif
-};
-
-static void __init mop500_uart_init(struct device *parent)
-{
-	db8500_add_uart0(parent, &uart0_plat);
-	db8500_add_uart1(parent, &uart1_plat);
-	db8500_add_uart2(parent, &uart2_plat);
-}
-
 static void __init mop500_init_machine(void)
 {
 	struct device *parent = NULL;
@@ -156,8 +86,6 @@ static void __init mop500_init_machine(void)
 
 	parent = u8500_init_devices();
 
-	mop500_uart_init(parent);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
@@ -170,8 +98,6 @@ static void __init snowball_init_machine(void)
 
 	parent = u8500_init_devices();
 
-	mop500_uart_init(parent);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
@@ -184,8 +110,6 @@ static void __init hrefv60_init_machine(void)
 
 	parent = u8500_init_devices();
 
-	mop500_uart_init(parent);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 2cced8b..cf6b304 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -87,9 +87,6 @@ extern struct msp_i2s_platform_data msp0_platform_data;
 extern struct msp_i2s_platform_data msp1_platform_data;
 extern struct msp_i2s_platform_data msp2_platform_data;
 extern struct msp_i2s_platform_data msp3_platform_data;
-extern struct amba_pl011_data uart0_plat;
-extern struct amba_pl011_data uart1_plat;
-extern struct amba_pl011_data uart2_plat;
 extern struct pl022_ssp_controller ssp0_plat;
 
 void __init mop500_u8500uib_init(void);
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 15bf1ab..f3f7349 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -11,15 +11,5 @@
 #include <linux/platform_device.h>
 #include <linux/dma-mapping.h>
 #include <linux/sys_soc.h>
-#include <linux/amba/bus.h>
-
-struct amba_pl011_data;
-
-static inline struct amba_device *
-dbx500_add_uart(struct device *parent, const char *name, resource_size_t base,
-		int irq, struct amba_pl011_data *pdata)
-{
-	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
-}
 
 #endif
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index e6ac6d2..fc4048f 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -18,14 +18,4 @@ extern struct ab8500_platform_data ab8500_platdata;
 extern struct prcmu_pdata db8500_prcmu_pdata;
 extern struct platform_device db8500_prcmu_device;
 
-#define db8500_add_uart0(parent, pdata) \
-	dbx500_add_uart(parent, "uart0", U8500_UART0_BASE, \
-			IRQ_DB8500_UART0, pdata)
-#define db8500_add_uart1(parent, pdata) \
-	dbx500_add_uart(parent, "uart1", U8500_UART1_BASE, \
-			IRQ_DB8500_UART1, pdata)
-#define db8500_add_uart2(parent, pdata) \
-	dbx500_add_uart(parent, "uart2", U8500_UART2_BASE, \
-			IRQ_DB8500_UART2, pdata)
-
 #endif
-- 
1.8.1.2


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

* [PATCH 28/40] ARM: ux500: Remove UART support when booting without Device Tree
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   | 76 ------------------------------------
 arch/arm/mach-ux500/board-mop500.h   |  3 --
 arch/arm/mach-ux500/devices-common.h | 10 -----
 arch/arm/mach-ux500/devices-db8500.h | 10 -----
 4 files changed, 99 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 0ae083b..db6908a 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -17,7 +17,6 @@
 #include <linux/platform_data/db8500_thermal.h>
 #include <linux/amba/bus.h>
 #include <linux/amba/pl022.h>
-#include <linux/amba/serial.h>
 #include <linux/mfd/abx500/ab8500.h>
 #include <linux/regulator/ab8500.h>
 #include <linux/regulator/fixed.h>
@@ -79,75 +78,6 @@ struct pl022_ssp_controller ssp0_plat = {
 	.num_chipselect = 5,
 };
 
-#ifdef CONFIG_STE_DMA40
-static struct stedma40_chan_cfg uart0_dma_cfg_rx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_DEV_TO_MEM,
-	.dev_type = DB8500_DMA_DEV13_UART0,
-};
-
-static struct stedma40_chan_cfg uart0_dma_cfg_tx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_MEM_TO_DEV,
-	.dev_type = DB8500_DMA_DEV13_UART0,
-};
-
-static struct stedma40_chan_cfg uart1_dma_cfg_rx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_DEV_TO_MEM,
-	.dev_type = DB8500_DMA_DEV12_UART1,
-};
-
-static struct stedma40_chan_cfg uart1_dma_cfg_tx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_MEM_TO_DEV,
-	.dev_type = DB8500_DMA_DEV12_UART1,
-};
-
-static struct stedma40_chan_cfg uart2_dma_cfg_rx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_DEV_TO_MEM,
-	.dev_type = DB8500_DMA_DEV11_UART2,
-};
-
-static struct stedma40_chan_cfg uart2_dma_cfg_tx = {
-	.mode = STEDMA40_MODE_LOGICAL,
-	.dir = DMA_MEM_TO_DEV,
-	.dev_type = DB8500_DMA_DEV11_UART2,
-};
-#endif
-
-struct amba_pl011_data uart0_plat = {
-#ifdef CONFIG_STE_DMA40
-	.dma_filter = stedma40_filter,
-	.dma_rx_param = &uart0_dma_cfg_rx,
-	.dma_tx_param = &uart0_dma_cfg_tx,
-#endif
-};
-
-struct amba_pl011_data uart1_plat = {
-#ifdef CONFIG_STE_DMA40
-	.dma_filter = stedma40_filter,
-	.dma_rx_param = &uart1_dma_cfg_rx,
-	.dma_tx_param = &uart1_dma_cfg_tx,
-#endif
-};
-
-struct amba_pl011_data uart2_plat = {
-#ifdef CONFIG_STE_DMA40
-	.dma_filter = stedma40_filter,
-	.dma_rx_param = &uart2_dma_cfg_rx,
-	.dma_tx_param = &uart2_dma_cfg_tx,
-#endif
-};
-
-static void __init mop500_uart_init(struct device *parent)
-{
-	db8500_add_uart0(parent, &uart0_plat);
-	db8500_add_uart1(parent, &uart1_plat);
-	db8500_add_uart2(parent, &uart2_plat);
-}
-
 static void __init mop500_init_machine(void)
 {
 	struct device *parent = NULL;
@@ -156,8 +86,6 @@ static void __init mop500_init_machine(void)
 
 	parent = u8500_init_devices();
 
-	mop500_uart_init(parent);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
@@ -170,8 +98,6 @@ static void __init snowball_init_machine(void)
 
 	parent = u8500_init_devices();
 
-	mop500_uart_init(parent);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
@@ -184,8 +110,6 @@ static void __init hrefv60_init_machine(void)
 
 	parent = u8500_init_devices();
 
-	mop500_uart_init(parent);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 2cced8b..cf6b304 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -87,9 +87,6 @@ extern struct msp_i2s_platform_data msp0_platform_data;
 extern struct msp_i2s_platform_data msp1_platform_data;
 extern struct msp_i2s_platform_data msp2_platform_data;
 extern struct msp_i2s_platform_data msp3_platform_data;
-extern struct amba_pl011_data uart0_plat;
-extern struct amba_pl011_data uart1_plat;
-extern struct amba_pl011_data uart2_plat;
 extern struct pl022_ssp_controller ssp0_plat;
 
 void __init mop500_u8500uib_init(void);
diff --git a/arch/arm/mach-ux500/devices-common.h b/arch/arm/mach-ux500/devices-common.h
index 15bf1ab..f3f7349 100644
--- a/arch/arm/mach-ux500/devices-common.h
+++ b/arch/arm/mach-ux500/devices-common.h
@@ -11,15 +11,5 @@
 #include <linux/platform_device.h>
 #include <linux/dma-mapping.h>
 #include <linux/sys_soc.h>
-#include <linux/amba/bus.h>
-
-struct amba_pl011_data;
-
-static inline struct amba_device *
-dbx500_add_uart(struct device *parent, const char *name, resource_size_t base,
-		int irq, struct amba_pl011_data *pdata)
-{
-	return amba_ahb_device_add(parent, name, base, SZ_4K, irq, 0, pdata, 0);
-}
 
 #endif
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index e6ac6d2..fc4048f 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -18,14 +18,4 @@ extern struct ab8500_platform_data ab8500_platdata;
 extern struct prcmu_pdata db8500_prcmu_pdata;
 extern struct platform_device db8500_prcmu_device;
 
-#define db8500_add_uart0(parent, pdata) \
-	dbx500_add_uart(parent, "uart0", U8500_UART0_BASE, \
-			IRQ_DB8500_UART0, pdata)
-#define db8500_add_uart1(parent, pdata) \
-	dbx500_add_uart(parent, "uart1", U8500_UART1_BASE, \
-			IRQ_DB8500_UART1, pdata)
-#define db8500_add_uart2(parent, pdata) \
-	dbx500_add_uart(parent, "uart2", U8500_UART2_BASE, \
-			IRQ_DB8500_UART2, pdata)
-
 #endif
-- 
1.8.1.2

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

* [PATCH 29/40] ARM: ux500: Stop requesting the SoC device to play 'parent' role
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

There are no more devices which require left to register which require
a parent. This is part of the ux500 conversion over to Device Tree only
booting.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 12 ------------
 arch/arm/mach-ux500/cpu-db8500.c   |  8 --------
 2 files changed, 20 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index db6908a..25c6dcd 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -80,36 +80,24 @@ struct pl022_ssp_controller ssp0_plat = {
 
 static void __init mop500_init_machine(void)
 {
-	struct device *parent = NULL;
-
 	platform_device_register(&db8500_prcmu_device);
 
-	parent = u8500_init_devices();
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
 
 static void __init snowball_init_machine(void)
 {
-	struct device *parent = NULL;
-
 	platform_device_register(&db8500_prcmu_device);
 
-	parent = u8500_init_devices();
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
 
 static void __init hrefv60_init_machine(void)
 {
-	struct device *parent = NULL;
-
 	platform_device_register(&db8500_prcmu_device);
 
-	parent = u8500_init_devices();
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 0ec6ddf..162ea03 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -136,14 +136,6 @@ static struct device * __init db8500_soc_device_init(void)
 	return ux500_soc_device_init(soc_id);
 }
 
-/*
- * This function is called from the board init
- */
-struct device * __init u8500_init_devices(void)
-{
-	return db8500_soc_device_init();
-}
-
 #ifdef CONFIG_MACH_UX500_DT
 static struct of_dev_auxdata u8500_auxdata_lookup[] __initdata = {
 	/* Requires call-back bindings. */
-- 
1.8.1.2


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

* [PATCH 29/40] ARM: ux500: Stop requesting the SoC device to play 'parent' role
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

There are no more devices which require left to register which require
a parent. This is part of the ux500 conversion over to Device Tree only
booting.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 12 ------------
 arch/arm/mach-ux500/cpu-db8500.c   |  8 --------
 2 files changed, 20 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index db6908a..25c6dcd 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -80,36 +80,24 @@ struct pl022_ssp_controller ssp0_plat = {
 
 static void __init mop500_init_machine(void)
 {
-	struct device *parent = NULL;
-
 	platform_device_register(&db8500_prcmu_device);
 
-	parent = u8500_init_devices();
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
 
 static void __init snowball_init_machine(void)
 {
-	struct device *parent = NULL;
-
 	platform_device_register(&db8500_prcmu_device);
 
-	parent = u8500_init_devices();
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
 
 static void __init hrefv60_init_machine(void)
 {
-	struct device *parent = NULL;
-
 	platform_device_register(&db8500_prcmu_device);
 
-	parent = u8500_init_devices();
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c
index 0ec6ddf..162ea03 100644
--- a/arch/arm/mach-ux500/cpu-db8500.c
+++ b/arch/arm/mach-ux500/cpu-db8500.c
@@ -136,14 +136,6 @@ static struct device * __init db8500_soc_device_init(void)
 	return ux500_soc_device_init(soc_id);
 }
 
-/*
- * This function is called from the board init
- */
-struct device * __init u8500_init_devices(void)
-{
-	return db8500_soc_device_init();
-}
-
 #ifdef CONFIG_MACH_UX500_DT
 static struct of_dev_auxdata u8500_auxdata_lookup[] __initdata = {
 	/* Requires call-back bindings. */
-- 
1.8.1.2

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

* [PATCH 30/40] ARM: ux500: Purge DB8500 PRCMU registration when not booting with DT
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   |  6 ------
 arch/arm/mach-ux500/devices-db8500.c | 36 ------------------------------------
 arch/arm/mach-ux500/devices-db8500.h |  1 -
 3 files changed, 43 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 25c6dcd..3086192 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -80,24 +80,18 @@ struct pl022_ssp_controller ssp0_plat = {
 
 static void __init mop500_init_machine(void)
 {
-	platform_device_register(&db8500_prcmu_device);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
 
 static void __init snowball_init_machine(void)
 {
-	platform_device_register(&db8500_prcmu_device);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
 
 static void __init hrefv60_init_machine(void)
 {
-	platform_device_register(&db8500_prcmu_device);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
diff --git a/arch/arm/mach-ux500/devices-db8500.c b/arch/arm/mach-ux500/devices-db8500.c
index 1b2faba..c59f89d 100644
--- a/arch/arm/mach-ux500/devices-db8500.c
+++ b/arch/arm/mach-ux500/devices-db8500.c
@@ -26,39 +26,3 @@ struct prcmu_pdata db8500_prcmu_pdata = {
 	.version_offset	= DB8500_PRCMU_FW_VERSION_OFFSET,
 	.legacy_offset	= DB8500_PRCMU_LEGACY_OFFSET,
 };
-
-static struct resource db8500_prcmu_res[] = {
-	{
-		.name  = "prcmu",
-		.start = U8500_PRCMU_BASE,
-		.end   = U8500_PRCMU_BASE + SZ_8K - 1,
-		.flags = IORESOURCE_MEM,
-	},
-	{
-		.name  = "prcmu-tcdm",
-		.start = U8500_PRCMU_TCDM_BASE,
-		.end   = U8500_PRCMU_TCDM_BASE + SZ_4K - 1,
-		.flags = IORESOURCE_MEM,
-	},
-	{
-		.name  = "irq",
-		.start = IRQ_DB8500_PRCMU1,
-		.end   = IRQ_DB8500_PRCMU1,
-		.flags = IORESOURCE_IRQ,
-	},
-	{
-		.name  = "prcmu-tcpm",
-		.start = U8500_PRCMU_TCPM_BASE,
-		.end   = U8500_PRCMU_TCPM_BASE + SZ_32K - 1,
-		.flags = IORESOURCE_MEM,
-	},
-};
-
-struct platform_device db8500_prcmu_device = {
-	.name			= "db8500-prcmu",
-	.resource		= db8500_prcmu_res,
-	.num_resources		= ARRAY_SIZE(db8500_prcmu_res),
-	.dev = {
-		.platform_data = &db8500_prcmu_pdata,
-	},
-};
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index fc4048f..6d59218 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -16,6 +16,5 @@ struct platform_device;
 
 extern struct ab8500_platform_data ab8500_platdata;
 extern struct prcmu_pdata db8500_prcmu_pdata;
-extern struct platform_device db8500_prcmu_device;
 
 #endif
-- 
1.8.1.2


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

* [PATCH 30/40] ARM: ux500: Purge DB8500 PRCMU registration when not booting with DT
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c   |  6 ------
 arch/arm/mach-ux500/devices-db8500.c | 36 ------------------------------------
 arch/arm/mach-ux500/devices-db8500.h |  1 -
 3 files changed, 43 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 25c6dcd..3086192 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -80,24 +80,18 @@ struct pl022_ssp_controller ssp0_plat = {
 
 static void __init mop500_init_machine(void)
 {
-	platform_device_register(&db8500_prcmu_device);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
 
 static void __init snowball_init_machine(void)
 {
-	platform_device_register(&db8500_prcmu_device);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
 
 static void __init hrefv60_init_machine(void)
 {
-	platform_device_register(&db8500_prcmu_device);
-
 	/* This board has full regulator constraints */
 	regulator_has_full_constraints();
 }
diff --git a/arch/arm/mach-ux500/devices-db8500.c b/arch/arm/mach-ux500/devices-db8500.c
index 1b2faba..c59f89d 100644
--- a/arch/arm/mach-ux500/devices-db8500.c
+++ b/arch/arm/mach-ux500/devices-db8500.c
@@ -26,39 +26,3 @@ struct prcmu_pdata db8500_prcmu_pdata = {
 	.version_offset	= DB8500_PRCMU_FW_VERSION_OFFSET,
 	.legacy_offset	= DB8500_PRCMU_LEGACY_OFFSET,
 };
-
-static struct resource db8500_prcmu_res[] = {
-	{
-		.name  = "prcmu",
-		.start = U8500_PRCMU_BASE,
-		.end   = U8500_PRCMU_BASE + SZ_8K - 1,
-		.flags = IORESOURCE_MEM,
-	},
-	{
-		.name  = "prcmu-tcdm",
-		.start = U8500_PRCMU_TCDM_BASE,
-		.end   = U8500_PRCMU_TCDM_BASE + SZ_4K - 1,
-		.flags = IORESOURCE_MEM,
-	},
-	{
-		.name  = "irq",
-		.start = IRQ_DB8500_PRCMU1,
-		.end   = IRQ_DB8500_PRCMU1,
-		.flags = IORESOURCE_IRQ,
-	},
-	{
-		.name  = "prcmu-tcpm",
-		.start = U8500_PRCMU_TCPM_BASE,
-		.end   = U8500_PRCMU_TCPM_BASE + SZ_32K - 1,
-		.flags = IORESOURCE_MEM,
-	},
-};
-
-struct platform_device db8500_prcmu_device = {
-	.name			= "db8500-prcmu",
-	.resource		= db8500_prcmu_res,
-	.num_resources		= ARRAY_SIZE(db8500_prcmu_res),
-	.dev = {
-		.platform_data = &db8500_prcmu_pdata,
-	},
-};
diff --git a/arch/arm/mach-ux500/devices-db8500.h b/arch/arm/mach-ux500/devices-db8500.h
index fc4048f..6d59218 100644
--- a/arch/arm/mach-ux500/devices-db8500.h
+++ b/arch/arm/mach-ux500/devices-db8500.h
@@ -16,6 +16,5 @@ struct platform_device;
 
 extern struct ab8500_platform_data ab8500_platdata;
 extern struct prcmu_pdata db8500_prcmu_pdata;
-extern struct platform_device db8500_prcmu_device;
 
 #endif
-- 
1.8.1.2

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

* [PATCH 31/40] ARM: ux500: Don't register Synaptics RMI4 TS when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-u8500uib.c | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-u8500uib.c b/arch/arm/mach-ux500/board-mop500-u8500uib.c
index 6f6553e..43c9ff1 100644
--- a/arch/arm/mach-ux500/board-mop500-u8500uib.c
+++ b/arch/arm/mach-ux500/board-mop500-u8500uib.c
@@ -4,25 +4,11 @@
  * Board data for the U8500 UIB, also known as the New UIB
  * License terms: GNU General Public License (GPL), version 2
  */
-#include <linux/gpio.h>
 #include <linux/kernel.h>
 #include <linux/init.h>
-#include <linux/i2c.h>
-#include <linux/interrupt.h>
-
-#include "irqs.h"
 
 #include "board-mop500.h"
 
-static struct i2c_board_info __initdata mop500_i2c3_devices_u8500[] = {
-	{
-		I2C_BOARD_INFO("synaptics_rmi4_i2c", 0x4B),
-		.irq = NOMADIK_GPIO_TO_IRQ(84),
-	},
-};
-
 void __init mop500_u8500uib_init(void)
 {
-	mop500_uib_i2c_add(3, mop500_i2c3_devices_u8500,
-			ARRAY_SIZE(mop500_i2c3_devices_u8500));
 }
-- 
1.8.1.2


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

* [PATCH 31/40] ARM: ux500: Don't register Synaptics RMI4 TS when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-u8500uib.c | 14 --------------
 1 file changed, 14 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-u8500uib.c b/arch/arm/mach-ux500/board-mop500-u8500uib.c
index 6f6553e..43c9ff1 100644
--- a/arch/arm/mach-ux500/board-mop500-u8500uib.c
+++ b/arch/arm/mach-ux500/board-mop500-u8500uib.c
@@ -4,25 +4,11 @@
  * Board data for the U8500 UIB, also known as the New UIB
  * License terms: GNU General Public License (GPL), version 2
  */
-#include <linux/gpio.h>
 #include <linux/kernel.h>
 #include <linux/init.h>
-#include <linux/i2c.h>
-#include <linux/interrupt.h>
-
-#include "irqs.h"
 
 #include "board-mop500.h"
 
-static struct i2c_board_info __initdata mop500_i2c3_devices_u8500[] = {
-	{
-		I2C_BOARD_INFO("synaptics_rmi4_i2c", 0x4B),
-		.irq = NOMADIK_GPIO_TO_IRQ(84),
-	},
-};
-
 void __init mop500_u8500uib_init(void)
 {
-	mop500_uib_i2c_add(3, mop500_i2c3_devices_u8500,
-			ARRAY_SIZE(mop500_i2c3_devices_u8500));
 }
-- 
1.8.1.2

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

* [PATCH 32/40] ARM: ux500: Delete U8500 UIB support when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/Makefile                |  1 -
 arch/arm/mach-ux500/board-mop500-u8500uib.c | 14 --------------
 arch/arm/mach-ux500/board-mop500-uib.c      | 30 +----------------------------
 arch/arm/mach-ux500/board-mop500.h          |  1 -
 4 files changed, 1 insertion(+), 45 deletions(-)
 delete mode 100644 arch/arm/mach-ux500/board-mop500-u8500uib.c

diff --git a/arch/arm/mach-ux500/Makefile b/arch/arm/mach-ux500/Makefile
index cac22ba..8634a3fa 100644
--- a/arch/arm/mach-ux500/Makefile
+++ b/arch/arm/mach-ux500/Makefile
@@ -10,7 +10,6 @@ obj-$(CONFIG_UX500_SOC_DB8500)	+= cpu-db8500.o devices-db8500.o
 obj-$(CONFIG_MACH_MOP500)	+= board-mop500.o board-mop500-sdi.o \
 				board-mop500-regulators.o \
 				board-mop500-uib.o board-mop500-stuib.o \
-				board-mop500-u8500uib.o \
 				board-mop500-pins.o \
 				board-mop500-audio.o
 obj-$(CONFIG_SMP)		+= platsmp.o headsmp.o
diff --git a/arch/arm/mach-ux500/board-mop500-u8500uib.c b/arch/arm/mach-ux500/board-mop500-u8500uib.c
deleted file mode 100644
index 43c9ff1..0000000
--- a/arch/arm/mach-ux500/board-mop500-u8500uib.c
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- * Copyright (C) ST-Ericsson SA 2010
- *
- * Board data for the U8500 UIB, also known as the New UIB
- * License terms: GNU General Public License (GPL), version 2
- */
-#include <linux/kernel.h>
-#include <linux/init.h>
-
-#include "board-mop500.h"
-
-void __init mop500_u8500uib_init(void)
-{
-}
diff --git a/arch/arm/mach-ux500/board-mop500-uib.c b/arch/arm/mach-ux500/board-mop500-uib.c
index bdaa422..0e94f1d 100644
--- a/arch/arm/mach-ux500/board-mop500-uib.c
+++ b/arch/arm/mach-ux500/board-mop500-uib.c
@@ -16,7 +16,6 @@
 
 enum mop500_uib {
 	STUIB,
-	U8500UIB,
 };
 
 struct uib {
@@ -31,11 +30,6 @@ static struct uib __initdata mop500_uibs[] = {
 		.option	= "stuib",
 		.init	= mop500_stuib_init,
 	},
-	[U8500UIB] = {
-		.name	= "U8500-UIB",
-		.option	= "u8500uib",
-		.init	= mop500_u8500uib_init,
-	},
 };
 
 static struct uib *mop500_uib;
@@ -93,14 +87,9 @@ static void __init __mop500_uib_init(struct uib *uib, const char *why)
 	uib->init();
 }
 
-/*
- * Detect the UIB attached based on the presence or absence of i2c devices.
- */
 int __init mop500_uib_init(void)
 {
 	struct uib *uib = mop500_uib;
-	struct i2c_adapter *i2c0;
-	int ret;
 
 	if (!cpu_is_u8500_family())
 		return -ENODEV;
@@ -110,24 +99,7 @@ int __init mop500_uib_init(void)
 		return 0;
 	}
 
-	i2c0 = i2c_get_adapter(0);
-	if (!i2c0) {
-		__mop500_uib_init(&mop500_uibs[STUIB],
-				"fallback, could not get i2c0");
-		return -ENODEV;
-	}
-
-	/* U8500-UIB has the TC35893 at 0x44 on I2C0, the ST-UIB doesn't. */
-	ret = i2c_smbus_xfer(i2c0, 0x44, 0, I2C_SMBUS_WRITE, 0,
-			I2C_SMBUS_QUICK, NULL);
-	i2c_put_adapter(i2c0);
-
-	if (ret == 0)
-		uib = &mop500_uibs[U8500UIB];
-	else
-		uib = &mop500_uibs[STUIB];
-
-	__mop500_uib_init(uib, "detected");
+	__mop500_uib_init(&mop500_uibs[STUIB], "detected");
 
 	return 0;
 }
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index cf6b304..223639b 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -89,7 +89,6 @@ extern struct msp_i2s_platform_data msp2_platform_data;
 extern struct msp_i2s_platform_data msp3_platform_data;
 extern struct pl022_ssp_controller ssp0_plat;
 
-void __init mop500_u8500uib_init(void);
 void __init mop500_stuib_init(void);
 void __init mop500_pinmaps_init(void);
 void __init snowball_pinmaps_init(void);
-- 
1.8.1.2


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

* [PATCH 32/40] ARM: ux500: Delete U8500 UIB support when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/Makefile                |  1 -
 arch/arm/mach-ux500/board-mop500-u8500uib.c | 14 --------------
 arch/arm/mach-ux500/board-mop500-uib.c      | 30 +----------------------------
 arch/arm/mach-ux500/board-mop500.h          |  1 -
 4 files changed, 1 insertion(+), 45 deletions(-)
 delete mode 100644 arch/arm/mach-ux500/board-mop500-u8500uib.c

diff --git a/arch/arm/mach-ux500/Makefile b/arch/arm/mach-ux500/Makefile
index cac22ba..8634a3fa 100644
--- a/arch/arm/mach-ux500/Makefile
+++ b/arch/arm/mach-ux500/Makefile
@@ -10,7 +10,6 @@ obj-$(CONFIG_UX500_SOC_DB8500)	+= cpu-db8500.o devices-db8500.o
 obj-$(CONFIG_MACH_MOP500)	+= board-mop500.o board-mop500-sdi.o \
 				board-mop500-regulators.o \
 				board-mop500-uib.o board-mop500-stuib.o \
-				board-mop500-u8500uib.o \
 				board-mop500-pins.o \
 				board-mop500-audio.o
 obj-$(CONFIG_SMP)		+= platsmp.o headsmp.o
diff --git a/arch/arm/mach-ux500/board-mop500-u8500uib.c b/arch/arm/mach-ux500/board-mop500-u8500uib.c
deleted file mode 100644
index 43c9ff1..0000000
--- a/arch/arm/mach-ux500/board-mop500-u8500uib.c
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- * Copyright (C) ST-Ericsson SA 2010
- *
- * Board data for the U8500 UIB, also known as the New UIB
- * License terms: GNU General Public License (GPL), version 2
- */
-#include <linux/kernel.h>
-#include <linux/init.h>
-
-#include "board-mop500.h"
-
-void __init mop500_u8500uib_init(void)
-{
-}
diff --git a/arch/arm/mach-ux500/board-mop500-uib.c b/arch/arm/mach-ux500/board-mop500-uib.c
index bdaa422..0e94f1d 100644
--- a/arch/arm/mach-ux500/board-mop500-uib.c
+++ b/arch/arm/mach-ux500/board-mop500-uib.c
@@ -16,7 +16,6 @@
 
 enum mop500_uib {
 	STUIB,
-	U8500UIB,
 };
 
 struct uib {
@@ -31,11 +30,6 @@ static struct uib __initdata mop500_uibs[] = {
 		.option	= "stuib",
 		.init	= mop500_stuib_init,
 	},
-	[U8500UIB] = {
-		.name	= "U8500-UIB",
-		.option	= "u8500uib",
-		.init	= mop500_u8500uib_init,
-	},
 };
 
 static struct uib *mop500_uib;
@@ -93,14 +87,9 @@ static void __init __mop500_uib_init(struct uib *uib, const char *why)
 	uib->init();
 }
 
-/*
- * Detect the UIB attached based on the presence or absence of i2c devices.
- */
 int __init mop500_uib_init(void)
 {
 	struct uib *uib = mop500_uib;
-	struct i2c_adapter *i2c0;
-	int ret;
 
 	if (!cpu_is_u8500_family())
 		return -ENODEV;
@@ -110,24 +99,7 @@ int __init mop500_uib_init(void)
 		return 0;
 	}
 
-	i2c0 = i2c_get_adapter(0);
-	if (!i2c0) {
-		__mop500_uib_init(&mop500_uibs[STUIB],
-				"fallback, could not get i2c0");
-		return -ENODEV;
-	}
-
-	/* U8500-UIB has the TC35893 at 0x44 on I2C0, the ST-UIB doesn't. */
-	ret = i2c_smbus_xfer(i2c0, 0x44, 0, I2C_SMBUS_WRITE, 0,
-			I2C_SMBUS_QUICK, NULL);
-	i2c_put_adapter(i2c0);
-
-	if (ret == 0)
-		uib = &mop500_uibs[U8500UIB];
-	else
-		uib = &mop500_uibs[STUIB];
-
-	__mop500_uib_init(uib, "detected");
+	__mop500_uib_init(&mop500_uibs[STUIB], "detected");
 
 	return 0;
 }
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index cf6b304..223639b 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -89,7 +89,6 @@ extern struct msp_i2s_platform_data msp2_platform_data;
 extern struct msp_i2s_platform_data msp3_platform_data;
 extern struct pl022_ssp_controller ssp0_plat;
 
-void __init mop500_u8500uib_init(void);
 void __init mop500_stuib_init(void);
 void __init mop500_pinmaps_init(void);
 void __init snowball_pinmaps_init(void);
-- 
1.8.1.2

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

* [PATCH 33/40] ARM: ux500: Don't register the STMPE/SKE when booting with ATAG support
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-stuib.c | 62 --------------------------------
 1 file changed, 62 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-stuib.c b/arch/arm/mach-ux500/board-mop500-stuib.c
index 7e1f294..b57996b 100644
--- a/arch/arm/mach-ux500/board-mop500-stuib.c
+++ b/arch/arm/mach-ux500/board-mop500-stuib.c
@@ -6,73 +6,14 @@
 
 #include <linux/kernel.h>
 #include <linux/init.h>
-#include <linux/mfd/stmpe.h>
 #include <linux/input/bu21013.h>
 #include <linux/gpio.h>
 #include <linux/interrupt.h>
 #include <linux/i2c.h>
-#include <linux/input/matrix_keypad.h>
 #include <asm/mach-types.h>
 
 #include "board-mop500.h"
 
-/* STMPE/SKE keypad use this key layout */
-static const unsigned int mop500_keymap[] = {
-	KEY(2, 5, KEY_END),
-	KEY(4, 1, KEY_POWER),
-	KEY(3, 5, KEY_VOLUMEDOWN),
-	KEY(1, 3, KEY_3),
-	KEY(5, 2, KEY_RIGHT),
-	KEY(5, 0, KEY_9),
-
-	KEY(0, 5, KEY_MENU),
-	KEY(7, 6, KEY_ENTER),
-	KEY(4, 5, KEY_0),
-	KEY(6, 7, KEY_2),
-	KEY(3, 4, KEY_UP),
-	KEY(3, 3, KEY_DOWN),
-
-	KEY(6, 4, KEY_SEND),
-	KEY(6, 2, KEY_BACK),
-	KEY(4, 2, KEY_VOLUMEUP),
-	KEY(5, 5, KEY_1),
-	KEY(4, 3, KEY_LEFT),
-	KEY(3, 2, KEY_7),
-};
-
-static const struct matrix_keymap_data mop500_keymap_data = {
-	.keymap		= mop500_keymap,
-	.keymap_size    = ARRAY_SIZE(mop500_keymap),
-};
-/*
- * STMPE1601
- */
-static struct stmpe_keypad_platform_data stmpe1601_keypad_data = {
-	.debounce_ms    = 64,
-	.scan_count     = 8,
-	.no_autorepeat  = true,
-	.keymap_data    = &mop500_keymap_data,
-};
-
-static struct stmpe_platform_data stmpe1601_data = {
-	.id		= 1,
-	.blocks		= STMPE_BLOCK_KEYPAD,
-	.irq_trigger    = IRQF_TRIGGER_FALLING,
-	.irq_base       = MOP500_STMPE1601_IRQ(0),
-	.keypad		= &stmpe1601_keypad_data,
-	.autosleep      = true,
-	.autosleep_timeout = 1024,
-};
-
-static struct i2c_board_info __initdata mop500_i2c0_devices_stuib[] = {
-	{
-		I2C_BOARD_INFO("stmpe1601", 0x40),
-		.irq = NOMADIK_GPIO_TO_IRQ(218),
-		.platform_data = &stmpe1601_data,
-		.flags = I2C_CLIENT_WAKE,
-	},
-};
-
 /*
  * BU21013 ROHM touchscreen interface on the STUIBs
  */
@@ -112,9 +53,6 @@ void __init mop500_stuib_init(void)
 	else
 		tsc_plat_device.cs_pin = GPIO_BU21013_CS;
 
-	mop500_uib_i2c_add(0, mop500_i2c0_devices_stuib,
-			ARRAY_SIZE(mop500_i2c0_devices_stuib));
-
 	mop500_uib_i2c_add(3, u8500_i2c3_devices_stuib,
 			ARRAY_SIZE(u8500_i2c3_devices_stuib));
 }
-- 
1.8.1.2


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

* [PATCH 33/40] ARM: ux500: Don't register the STMPE/SKE when booting with ATAG support
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-stuib.c | 62 --------------------------------
 1 file changed, 62 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-stuib.c b/arch/arm/mach-ux500/board-mop500-stuib.c
index 7e1f294..b57996b 100644
--- a/arch/arm/mach-ux500/board-mop500-stuib.c
+++ b/arch/arm/mach-ux500/board-mop500-stuib.c
@@ -6,73 +6,14 @@
 
 #include <linux/kernel.h>
 #include <linux/init.h>
-#include <linux/mfd/stmpe.h>
 #include <linux/input/bu21013.h>
 #include <linux/gpio.h>
 #include <linux/interrupt.h>
 #include <linux/i2c.h>
-#include <linux/input/matrix_keypad.h>
 #include <asm/mach-types.h>
 
 #include "board-mop500.h"
 
-/* STMPE/SKE keypad use this key layout */
-static const unsigned int mop500_keymap[] = {
-	KEY(2, 5, KEY_END),
-	KEY(4, 1, KEY_POWER),
-	KEY(3, 5, KEY_VOLUMEDOWN),
-	KEY(1, 3, KEY_3),
-	KEY(5, 2, KEY_RIGHT),
-	KEY(5, 0, KEY_9),
-
-	KEY(0, 5, KEY_MENU),
-	KEY(7, 6, KEY_ENTER),
-	KEY(4, 5, KEY_0),
-	KEY(6, 7, KEY_2),
-	KEY(3, 4, KEY_UP),
-	KEY(3, 3, KEY_DOWN),
-
-	KEY(6, 4, KEY_SEND),
-	KEY(6, 2, KEY_BACK),
-	KEY(4, 2, KEY_VOLUMEUP),
-	KEY(5, 5, KEY_1),
-	KEY(4, 3, KEY_LEFT),
-	KEY(3, 2, KEY_7),
-};
-
-static const struct matrix_keymap_data mop500_keymap_data = {
-	.keymap		= mop500_keymap,
-	.keymap_size    = ARRAY_SIZE(mop500_keymap),
-};
-/*
- * STMPE1601
- */
-static struct stmpe_keypad_platform_data stmpe1601_keypad_data = {
-	.debounce_ms    = 64,
-	.scan_count     = 8,
-	.no_autorepeat  = true,
-	.keymap_data    = &mop500_keymap_data,
-};
-
-static struct stmpe_platform_data stmpe1601_data = {
-	.id		= 1,
-	.blocks		= STMPE_BLOCK_KEYPAD,
-	.irq_trigger    = IRQF_TRIGGER_FALLING,
-	.irq_base       = MOP500_STMPE1601_IRQ(0),
-	.keypad		= &stmpe1601_keypad_data,
-	.autosleep      = true,
-	.autosleep_timeout = 1024,
-};
-
-static struct i2c_board_info __initdata mop500_i2c0_devices_stuib[] = {
-	{
-		I2C_BOARD_INFO("stmpe1601", 0x40),
-		.irq = NOMADIK_GPIO_TO_IRQ(218),
-		.platform_data = &stmpe1601_data,
-		.flags = I2C_CLIENT_WAKE,
-	},
-};
-
 /*
  * BU21013 ROHM touchscreen interface on the STUIBs
  */
@@ -112,9 +53,6 @@ void __init mop500_stuib_init(void)
 	else
 		tsc_plat_device.cs_pin = GPIO_BU21013_CS;
 
-	mop500_uib_i2c_add(0, mop500_i2c0_devices_stuib,
-			ARRAY_SIZE(mop500_i2c0_devices_stuib));
-
 	mop500_uib_i2c_add(3, u8500_i2c3_devices_stuib,
 			ARRAY_SIZE(u8500_i2c3_devices_stuib));
 }
-- 
1.8.1.2

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

* [PATCH 34/40] ARM: ux500: Remove BU21013 ROHM TS support when booting with only ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-stuib.c | 44 --------------------------------
 1 file changed, 44 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-stuib.c b/arch/arm/mach-ux500/board-mop500-stuib.c
index b57996b..7fa3021 100644
--- a/arch/arm/mach-ux500/board-mop500-stuib.c
+++ b/arch/arm/mach-ux500/board-mop500-stuib.c
@@ -6,53 +6,9 @@
 
 #include <linux/kernel.h>
 #include <linux/init.h>
-#include <linux/input/bu21013.h>
-#include <linux/gpio.h>
-#include <linux/interrupt.h>
-#include <linux/i2c.h>
-#include <asm/mach-types.h>
 
 #include "board-mop500.h"
 
-/*
- * BU21013 ROHM touchscreen interface on the STUIBs
- */
-
-#define TOUCH_GPIO_PIN  84
-
-#define TOUCH_XMAX	384
-#define TOUCH_YMAX	704
-
-#define PRCMU_CLOCK_OCR		0x1CC
-#define TSC_EXT_CLOCK_9_6MHZ	0x840000
-
-static struct bu21013_platform_device tsc_plat_device = {
-	.touch_pin = TOUCH_GPIO_PIN,
-	.touch_x_max = TOUCH_XMAX,
-	.touch_y_max = TOUCH_YMAX,
-	.ext_clk = false,
-	.x_flip = false,
-	.y_flip = true,
-};
-
-static struct i2c_board_info __initdata u8500_i2c3_devices_stuib[] = {
-	{
-		I2C_BOARD_INFO("bu21013_tp", 0x5C),
-		.platform_data = &tsc_plat_device,
-	},
-	{
-		I2C_BOARD_INFO("bu21013_tp", 0x5D),
-		.platform_data = &tsc_plat_device,
-	},
-};
-
 void __init mop500_stuib_init(void)
 {
-	if (machine_is_hrefv60())
-		tsc_plat_device.cs_pin = HREFV60_TOUCH_RST_GPIO;
-	else
-		tsc_plat_device.cs_pin = GPIO_BU21013_CS;
-
-	mop500_uib_i2c_add(3, u8500_i2c3_devices_stuib,
-			ARRAY_SIZE(u8500_i2c3_devices_stuib));
 }
-- 
1.8.1.2


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

* [PATCH 34/40] ARM: ux500: Remove BU21013 ROHM TS support when booting with only ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500-stuib.c | 44 --------------------------------
 1 file changed, 44 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500-stuib.c b/arch/arm/mach-ux500/board-mop500-stuib.c
index b57996b..7fa3021 100644
--- a/arch/arm/mach-ux500/board-mop500-stuib.c
+++ b/arch/arm/mach-ux500/board-mop500-stuib.c
@@ -6,53 +6,9 @@
 
 #include <linux/kernel.h>
 #include <linux/init.h>
-#include <linux/input/bu21013.h>
-#include <linux/gpio.h>
-#include <linux/interrupt.h>
-#include <linux/i2c.h>
-#include <asm/mach-types.h>
 
 #include "board-mop500.h"
 
-/*
- * BU21013 ROHM touchscreen interface on the STUIBs
- */
-
-#define TOUCH_GPIO_PIN  84
-
-#define TOUCH_XMAX	384
-#define TOUCH_YMAX	704
-
-#define PRCMU_CLOCK_OCR		0x1CC
-#define TSC_EXT_CLOCK_9_6MHZ	0x840000
-
-static struct bu21013_platform_device tsc_plat_device = {
-	.touch_pin = TOUCH_GPIO_PIN,
-	.touch_x_max = TOUCH_XMAX,
-	.touch_y_max = TOUCH_YMAX,
-	.ext_clk = false,
-	.x_flip = false,
-	.y_flip = true,
-};
-
-static struct i2c_board_info __initdata u8500_i2c3_devices_stuib[] = {
-	{
-		I2C_BOARD_INFO("bu21013_tp", 0x5C),
-		.platform_data = &tsc_plat_device,
-	},
-	{
-		I2C_BOARD_INFO("bu21013_tp", 0x5D),
-		.platform_data = &tsc_plat_device,
-	},
-};
-
 void __init mop500_stuib_init(void)
 {
-	if (machine_is_hrefv60())
-		tsc_plat_device.cs_pin = HREFV60_TOUCH_RST_GPIO;
-	else
-		tsc_plat_device.cs_pin = GPIO_BU21013_CS;
-
-	mop500_uib_i2c_add(3, u8500_i2c3_devices_stuib,
-			ARRAY_SIZE(u8500_i2c3_devices_stuib));
 }
-- 
1.8.1.2

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

* [PATCH 35/40] ARM: ux500: Take out STUIB support when not booting with Device Tree
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/Makefile             |  2 +-
 arch/arm/mach-ux500/board-mop500-stuib.c | 14 --------------
 arch/arm/mach-ux500/board-mop500-uib.c   |  8 --------
 arch/arm/mach-ux500/board-mop500.h       |  1 -
 4 files changed, 1 insertion(+), 24 deletions(-)
 delete mode 100644 arch/arm/mach-ux500/board-mop500-stuib.c

diff --git a/arch/arm/mach-ux500/Makefile b/arch/arm/mach-ux500/Makefile
index 8634a3fa..b34b74b 100644
--- a/arch/arm/mach-ux500/Makefile
+++ b/arch/arm/mach-ux500/Makefile
@@ -9,7 +9,7 @@ obj-$(CONFIG_CACHE_L2X0)	+= cache-l2x0.o
 obj-$(CONFIG_UX500_SOC_DB8500)	+= cpu-db8500.o devices-db8500.o
 obj-$(CONFIG_MACH_MOP500)	+= board-mop500.o board-mop500-sdi.o \
 				board-mop500-regulators.o \
-				board-mop500-uib.o board-mop500-stuib.o \
+				board-mop500-uib.o \
 				board-mop500-pins.o \
 				board-mop500-audio.o
 obj-$(CONFIG_SMP)		+= platsmp.o headsmp.o
diff --git a/arch/arm/mach-ux500/board-mop500-stuib.c b/arch/arm/mach-ux500/board-mop500-stuib.c
deleted file mode 100644
index 7fa3021..0000000
--- a/arch/arm/mach-ux500/board-mop500-stuib.c
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- * Copyright (C) ST-Ericsson SA 2010
- *
- * License terms: GNU General Public License (GPL), version 2
- */
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-
-#include "board-mop500.h"
-
-void __init mop500_stuib_init(void)
-{
-}
diff --git a/arch/arm/mach-ux500/board-mop500-uib.c b/arch/arm/mach-ux500/board-mop500-uib.c
index 0e94f1d..2742eec 100644
--- a/arch/arm/mach-ux500/board-mop500-uib.c
+++ b/arch/arm/mach-ux500/board-mop500-uib.c
@@ -15,7 +15,6 @@
 #include "id.h"
 
 enum mop500_uib {
-	STUIB,
 };
 
 struct uib {
@@ -25,11 +24,6 @@ struct uib {
 };
 
 static struct uib __initdata mop500_uibs[] = {
-	[STUIB] = {
-		.name	= "ST-UIB",
-		.option	= "stuib",
-		.init	= mop500_stuib_init,
-	},
 };
 
 static struct uib *mop500_uib;
@@ -99,7 +93,5 @@ int __init mop500_uib_init(void)
 		return 0;
 	}
 
-	__mop500_uib_init(&mop500_uibs[STUIB], "detected");
-
 	return 0;
 }
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 223639b..2fb89e2 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -89,7 +89,6 @@ extern struct msp_i2s_platform_data msp2_platform_data;
 extern struct msp_i2s_platform_data msp3_platform_data;
 extern struct pl022_ssp_controller ssp0_plat;
 
-void __init mop500_stuib_init(void);
 void __init mop500_pinmaps_init(void);
 void __init snowball_pinmaps_init(void);
 void __init hrefv60_pinmaps_init(void);
-- 
1.8.1.2


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

* [PATCH 35/40] ARM: ux500: Take out STUIB support when not booting with Device Tree
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/Makefile             |  2 +-
 arch/arm/mach-ux500/board-mop500-stuib.c | 14 --------------
 arch/arm/mach-ux500/board-mop500-uib.c   |  8 --------
 arch/arm/mach-ux500/board-mop500.h       |  1 -
 4 files changed, 1 insertion(+), 24 deletions(-)
 delete mode 100644 arch/arm/mach-ux500/board-mop500-stuib.c

diff --git a/arch/arm/mach-ux500/Makefile b/arch/arm/mach-ux500/Makefile
index 8634a3fa..b34b74b 100644
--- a/arch/arm/mach-ux500/Makefile
+++ b/arch/arm/mach-ux500/Makefile
@@ -9,7 +9,7 @@ obj-$(CONFIG_CACHE_L2X0)	+= cache-l2x0.o
 obj-$(CONFIG_UX500_SOC_DB8500)	+= cpu-db8500.o devices-db8500.o
 obj-$(CONFIG_MACH_MOP500)	+= board-mop500.o board-mop500-sdi.o \
 				board-mop500-regulators.o \
-				board-mop500-uib.o board-mop500-stuib.o \
+				board-mop500-uib.o \
 				board-mop500-pins.o \
 				board-mop500-audio.o
 obj-$(CONFIG_SMP)		+= platsmp.o headsmp.o
diff --git a/arch/arm/mach-ux500/board-mop500-stuib.c b/arch/arm/mach-ux500/board-mop500-stuib.c
deleted file mode 100644
index 7fa3021..0000000
--- a/arch/arm/mach-ux500/board-mop500-stuib.c
+++ /dev/null
@@ -1,14 +0,0 @@
-/*
- * Copyright (C) ST-Ericsson SA 2010
- *
- * License terms: GNU General Public License (GPL), version 2
- */
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-
-#include "board-mop500.h"
-
-void __init mop500_stuib_init(void)
-{
-}
diff --git a/arch/arm/mach-ux500/board-mop500-uib.c b/arch/arm/mach-ux500/board-mop500-uib.c
index 0e94f1d..2742eec 100644
--- a/arch/arm/mach-ux500/board-mop500-uib.c
+++ b/arch/arm/mach-ux500/board-mop500-uib.c
@@ -15,7 +15,6 @@
 #include "id.h"
 
 enum mop500_uib {
-	STUIB,
 };
 
 struct uib {
@@ -25,11 +24,6 @@ struct uib {
 };
 
 static struct uib __initdata mop500_uibs[] = {
-	[STUIB] = {
-		.name	= "ST-UIB",
-		.option	= "stuib",
-		.init	= mop500_stuib_init,
-	},
 };
 
 static struct uib *mop500_uib;
@@ -99,7 +93,5 @@ int __init mop500_uib_init(void)
 		return 0;
 	}
 
-	__mop500_uib_init(&mop500_uibs[STUIB], "detected");
-
 	return 0;
 }
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 223639b..2fb89e2 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -89,7 +89,6 @@ extern struct msp_i2s_platform_data msp2_platform_data;
 extern struct msp_i2s_platform_data msp3_platform_data;
 extern struct pl022_ssp_controller ssp0_plat;
 
-void __init mop500_stuib_init(void);
 void __init mop500_pinmaps_init(void);
 void __init snowball_pinmaps_init(void);
 void __init hrefv60_pinmaps_init(void);
-- 
1.8.1.2

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

* [PATCH 36/40] ARM: ux500: Purge UIB framework when booting with ATAGs
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/Makefile           |  1 -
 arch/arm/mach-ux500/board-mop500-uib.c | 97 ----------------------------------
 arch/arm/mach-ux500/board-mop500.c     |  6 +--
 arch/arm/mach-ux500/board-mop500.h     |  3 --
 arch/arm/mach-ux500/cpu.c              |  5 --
 arch/arm/mach-ux500/setup.h            |  1 -
 6 files changed, 3 insertions(+), 110 deletions(-)
 delete mode 100644 arch/arm/mach-ux500/board-mop500-uib.c

diff --git a/arch/arm/mach-ux500/Makefile b/arch/arm/mach-ux500/Makefile
index b34b74b..d5245c1 100644
--- a/arch/arm/mach-ux500/Makefile
+++ b/arch/arm/mach-ux500/Makefile
@@ -9,7 +9,6 @@ obj-$(CONFIG_CACHE_L2X0)	+= cache-l2x0.o
 obj-$(CONFIG_UX500_SOC_DB8500)	+= cpu-db8500.o devices-db8500.o
 obj-$(CONFIG_MACH_MOP500)	+= board-mop500.o board-mop500-sdi.o \
 				board-mop500-regulators.o \
-				board-mop500-uib.o \
 				board-mop500-pins.o \
 				board-mop500-audio.o
 obj-$(CONFIG_SMP)		+= platsmp.o headsmp.o
diff --git a/arch/arm/mach-ux500/board-mop500-uib.c b/arch/arm/mach-ux500/board-mop500-uib.c
deleted file mode 100644
index 2742eec..0000000
--- a/arch/arm/mach-ux500/board-mop500-uib.c
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright (C) ST-Ericsson SA 2010
- *
- * Author: Rabin Vincent <rabin.vincent@stericsson.com> for ST-Ericsson
- * License terms: GNU General Public License (GPL), version 2
- */
-
-#define pr_fmt(fmt)	"mop500-uib: " fmt
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/i2c.h>
-
-#include "board-mop500.h"
-#include "id.h"
-
-enum mop500_uib {
-};
-
-struct uib {
-	const char *name;
-	const char *option;
-	void (*init)(void);
-};
-
-static struct uib __initdata mop500_uibs[] = {
-};
-
-static struct uib *mop500_uib;
-
-static int __init mop500_uib_setup(char *str)
-{
-	int i;
-
-	for (i = 0; i < ARRAY_SIZE(mop500_uibs); i++) {
-		struct uib *uib = &mop500_uibs[i];
-
-		if (!strcmp(str, uib->option)) {
-			mop500_uib = uib;
-			break;
-		}
-	}
-
-	if (i == ARRAY_SIZE(mop500_uibs))
-		pr_err("invalid uib= option (%s)\n", str);
-
-	return 1;
-}
-__setup("uib=", mop500_uib_setup);
-
-/*
- * The UIBs are detected after the I2C host controllers are registered, so
- * i2c_register_board_info() can't be used.
- */
-void mop500_uib_i2c_add(int busnum, struct i2c_board_info *info,
-		unsigned n)
-{
-	struct i2c_adapter *adap;
-	struct i2c_client *client;
-	int i;
-
-	adap = i2c_get_adapter(busnum);
-	if (!adap) {
-		pr_err("failed to get adapter i2c%d\n", busnum);
-		return;
-	}
-
-	for (i = 0; i < n; i++) {
-		client = i2c_new_device(adap, &info[i]);
-		if (!client)
-			pr_err("failed to register %s to i2c%d\n",
-					info[i].type, busnum);
-	}
-
-	i2c_put_adapter(adap);
-}
-
-static void __init __mop500_uib_init(struct uib *uib, const char *why)
-{
-	pr_info("%s (%s)\n", uib->name, why);
-	uib->init();
-}
-
-int __init mop500_uib_init(void)
-{
-	struct uib *uib = mop500_uib;
-
-	if (!cpu_is_u8500_family())
-		return -ENODEV;
-
-	if (uib) {
-		__mop500_uib_init(uib, "from uib= boot argument");
-		return 0;
-	}
-
-	return 0;
-}
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 3086192..8f1b98a 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -105,7 +105,7 @@ MACHINE_START(U8500, "ST-Ericsson MOP500 platform")
 	/* we re-use nomadik timer here */
 	.init_time	= ux500_timer_init,
 	.init_machine	= mop500_init_machine,
-	.init_late	= ux500_init_late,
+	.init_late	= NULL,
 MACHINE_END
 
 MACHINE_START(U8520, "ST-Ericsson U8520 Platform HREFP520")
@@ -114,7 +114,7 @@ MACHINE_START(U8520, "ST-Ericsson U8520 Platform HREFP520")
 	.init_irq	= ux500_init_irq,
 	.init_time	= ux500_timer_init,
 	.init_machine	= mop500_init_machine,
-	.init_late	= ux500_init_late,
+	.init_late	= NULL,
 MACHINE_END
 
 MACHINE_START(HREFV60, "ST-Ericsson U8500 Platform HREFv60+")
@@ -124,7 +124,7 @@ MACHINE_START(HREFV60, "ST-Ericsson U8500 Platform HREFv60+")
 	.init_irq	= ux500_init_irq,
 	.init_time	= ux500_timer_init,
 	.init_machine	= hrefv60_init_machine,
-	.init_late	= ux500_init_late,
+	.init_late	= NULL,
 MACHINE_END
 
 MACHINE_START(SNOWBALL, "Calao Systems Snowball platform")
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 2fb89e2..511d6fe 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -93,7 +93,4 @@ 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);
 #endif
diff --git a/arch/arm/mach-ux500/cpu.c b/arch/arm/mach-ux500/cpu.c
index e6fb023..24548cd 100644
--- a/arch/arm/mach-ux500/cpu.c
+++ b/arch/arm/mach-ux500/cpu.c
@@ -88,11 +88,6 @@ void __init ux500_init_irq(void)
 	}
 }
 
-void __init ux500_init_late(void)
-{
-	mop500_uib_init();
-}
-
 static const char * __init ux500_get_machine(void)
 {
 	return kasprintf(GFP_KERNEL, "DB%4x", dbx500_partnumber());
diff --git a/arch/arm/mach-ux500/setup.h b/arch/arm/mach-ux500/setup.h
index cad3ca8..8578d91 100644
--- a/arch/arm/mach-ux500/setup.h
+++ b/arch/arm/mach-ux500/setup.h
@@ -21,7 +21,6 @@ extern void __init u8500_map_io(void);
 extern struct device * __init u8500_init_devices(void);
 
 extern void __init ux500_init_irq(void);
-extern void __init ux500_init_late(void);
 
 extern struct device *ux500_soc_device_init(const char *soc_id);
 
-- 
1.8.1.2


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

* [PATCH 36/40] ARM: ux500: Purge UIB framework when booting with ATAGs
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/Makefile           |  1 -
 arch/arm/mach-ux500/board-mop500-uib.c | 97 ----------------------------------
 arch/arm/mach-ux500/board-mop500.c     |  6 +--
 arch/arm/mach-ux500/board-mop500.h     |  3 --
 arch/arm/mach-ux500/cpu.c              |  5 --
 arch/arm/mach-ux500/setup.h            |  1 -
 6 files changed, 3 insertions(+), 110 deletions(-)
 delete mode 100644 arch/arm/mach-ux500/board-mop500-uib.c

diff --git a/arch/arm/mach-ux500/Makefile b/arch/arm/mach-ux500/Makefile
index b34b74b..d5245c1 100644
--- a/arch/arm/mach-ux500/Makefile
+++ b/arch/arm/mach-ux500/Makefile
@@ -9,7 +9,6 @@ obj-$(CONFIG_CACHE_L2X0)	+= cache-l2x0.o
 obj-$(CONFIG_UX500_SOC_DB8500)	+= cpu-db8500.o devices-db8500.o
 obj-$(CONFIG_MACH_MOP500)	+= board-mop500.o board-mop500-sdi.o \
 				board-mop500-regulators.o \
-				board-mop500-uib.o \
 				board-mop500-pins.o \
 				board-mop500-audio.o
 obj-$(CONFIG_SMP)		+= platsmp.o headsmp.o
diff --git a/arch/arm/mach-ux500/board-mop500-uib.c b/arch/arm/mach-ux500/board-mop500-uib.c
deleted file mode 100644
index 2742eec..0000000
--- a/arch/arm/mach-ux500/board-mop500-uib.c
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * Copyright (C) ST-Ericsson SA 2010
- *
- * Author: Rabin Vincent <rabin.vincent@stericsson.com> for ST-Ericsson
- * License terms: GNU General Public License (GPL), version 2
- */
-
-#define pr_fmt(fmt)	"mop500-uib: " fmt
-
-#include <linux/kernel.h>
-#include <linux/init.h>
-#include <linux/i2c.h>
-
-#include "board-mop500.h"
-#include "id.h"
-
-enum mop500_uib {
-};
-
-struct uib {
-	const char *name;
-	const char *option;
-	void (*init)(void);
-};
-
-static struct uib __initdata mop500_uibs[] = {
-};
-
-static struct uib *mop500_uib;
-
-static int __init mop500_uib_setup(char *str)
-{
-	int i;
-
-	for (i = 0; i < ARRAY_SIZE(mop500_uibs); i++) {
-		struct uib *uib = &mop500_uibs[i];
-
-		if (!strcmp(str, uib->option)) {
-			mop500_uib = uib;
-			break;
-		}
-	}
-
-	if (i == ARRAY_SIZE(mop500_uibs))
-		pr_err("invalid uib= option (%s)\n", str);
-
-	return 1;
-}
-__setup("uib=", mop500_uib_setup);
-
-/*
- * The UIBs are detected after the I2C host controllers are registered, so
- * i2c_register_board_info() can't be used.
- */
-void mop500_uib_i2c_add(int busnum, struct i2c_board_info *info,
-		unsigned n)
-{
-	struct i2c_adapter *adap;
-	struct i2c_client *client;
-	int i;
-
-	adap = i2c_get_adapter(busnum);
-	if (!adap) {
-		pr_err("failed to get adapter i2c%d\n", busnum);
-		return;
-	}
-
-	for (i = 0; i < n; i++) {
-		client = i2c_new_device(adap, &info[i]);
-		if (!client)
-			pr_err("failed to register %s to i2c%d\n",
-					info[i].type, busnum);
-	}
-
-	i2c_put_adapter(adap);
-}
-
-static void __init __mop500_uib_init(struct uib *uib, const char *why)
-{
-	pr_info("%s (%s)\n", uib->name, why);
-	uib->init();
-}
-
-int __init mop500_uib_init(void)
-{
-	struct uib *uib = mop500_uib;
-
-	if (!cpu_is_u8500_family())
-		return -ENODEV;
-
-	if (uib) {
-		__mop500_uib_init(uib, "from uib= boot argument");
-		return 0;
-	}
-
-	return 0;
-}
diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 3086192..8f1b98a 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -105,7 +105,7 @@ MACHINE_START(U8500, "ST-Ericsson MOP500 platform")
 	/* we re-use nomadik timer here */
 	.init_time	= ux500_timer_init,
 	.init_machine	= mop500_init_machine,
-	.init_late	= ux500_init_late,
+	.init_late	= NULL,
 MACHINE_END
 
 MACHINE_START(U8520, "ST-Ericsson U8520 Platform HREFP520")
@@ -114,7 +114,7 @@ MACHINE_START(U8520, "ST-Ericsson U8520 Platform HREFP520")
 	.init_irq	= ux500_init_irq,
 	.init_time	= ux500_timer_init,
 	.init_machine	= mop500_init_machine,
-	.init_late	= ux500_init_late,
+	.init_late	= NULL,
 MACHINE_END
 
 MACHINE_START(HREFV60, "ST-Ericsson U8500 Platform HREFv60+")
@@ -124,7 +124,7 @@ MACHINE_START(HREFV60, "ST-Ericsson U8500 Platform HREFv60+")
 	.init_irq	= ux500_init_irq,
 	.init_time	= ux500_timer_init,
 	.init_machine	= hrefv60_init_machine,
-	.init_late	= ux500_init_late,
+	.init_late	= NULL,
 MACHINE_END
 
 MACHINE_START(SNOWBALL, "Calao Systems Snowball platform")
diff --git a/arch/arm/mach-ux500/board-mop500.h b/arch/arm/mach-ux500/board-mop500.h
index 2fb89e2..511d6fe 100644
--- a/arch/arm/mach-ux500/board-mop500.h
+++ b/arch/arm/mach-ux500/board-mop500.h
@@ -93,7 +93,4 @@ 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);
 #endif
diff --git a/arch/arm/mach-ux500/cpu.c b/arch/arm/mach-ux500/cpu.c
index e6fb023..24548cd 100644
--- a/arch/arm/mach-ux500/cpu.c
+++ b/arch/arm/mach-ux500/cpu.c
@@ -88,11 +88,6 @@ void __init ux500_init_irq(void)
 	}
 }
 
-void __init ux500_init_late(void)
-{
-	mop500_uib_init();
-}
-
 static const char * __init ux500_get_machine(void)
 {
 	return kasprintf(GFP_KERNEL, "DB%4x", dbx500_partnumber());
diff --git a/arch/arm/mach-ux500/setup.h b/arch/arm/mach-ux500/setup.h
index cad3ca8..8578d91 100644
--- a/arch/arm/mach-ux500/setup.h
+++ b/arch/arm/mach-ux500/setup.h
@@ -21,7 +21,6 @@ extern void __init u8500_map_io(void);
 extern struct device * __init u8500_init_devices(void);
 
 extern void __init ux500_init_irq(void);
-extern void __init ux500_init_late(void);
 
 extern struct device *ux500_soc_device_init(const char *soc_id);
 
-- 
1.8.1.2

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

* [PATCH 37/40] ARM: ux500: Remove ATAG booting support for MOP500
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 12 ------------
 1 file changed, 12 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 8f1b98a..705b0d7 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -96,18 +96,6 @@ static void __init hrefv60_init_machine(void)
 	regulator_has_full_constraints();
 }
 
-MACHINE_START(U8500, "ST-Ericsson MOP500 platform")
-	/* Maintainer: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> */
-	.atag_offset	= 0x100,
-	.smp		= smp_ops(ux500_smp_ops),
-	.map_io		= u8500_map_io,
-	.init_irq	= ux500_init_irq,
-	/* we re-use nomadik timer here */
-	.init_time	= ux500_timer_init,
-	.init_machine	= mop500_init_machine,
-	.init_late	= NULL,
-MACHINE_END
-
 MACHINE_START(U8520, "ST-Ericsson U8520 Platform HREFP520")
 	.atag_offset	= 0x100,
 	.map_io		= u8500_map_io,
-- 
1.8.1.2


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

* [PATCH 37/40] ARM: ux500: Remove ATAG booting support for MOP500
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 12 ------------
 1 file changed, 12 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 8f1b98a..705b0d7 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -96,18 +96,6 @@ static void __init hrefv60_init_machine(void)
 	regulator_has_full_constraints();
 }
 
-MACHINE_START(U8500, "ST-Ericsson MOP500 platform")
-	/* Maintainer: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com> */
-	.atag_offset	= 0x100,
-	.smp		= smp_ops(ux500_smp_ops),
-	.map_io		= u8500_map_io,
-	.init_irq	= ux500_init_irq,
-	/* we re-use nomadik timer here */
-	.init_time	= ux500_timer_init,
-	.init_machine	= mop500_init_machine,
-	.init_late	= NULL,
-MACHINE_END
-
 MACHINE_START(U8520, "ST-Ericsson U8520 Platform HREFP520")
 	.atag_offset	= 0x100,
 	.map_io		= u8500_map_io,
-- 
1.8.1.2

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

* [PATCH 38/40] ARM: ux500: Remove ATAG booting support for U8520
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 15 ---------------
 1 file changed, 15 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 705b0d7..9a454b1 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -78,12 +78,6 @@ struct pl022_ssp_controller ssp0_plat = {
 	.num_chipselect = 5,
 };
 
-static void __init mop500_init_machine(void)
-{
-	/* This board has full regulator constraints */
-	regulator_has_full_constraints();
-}
-
 static void __init snowball_init_machine(void)
 {
 	/* This board has full regulator constraints */
@@ -96,15 +90,6 @@ static void __init hrefv60_init_machine(void)
 	regulator_has_full_constraints();
 }
 
-MACHINE_START(U8520, "ST-Ericsson U8520 Platform HREFP520")
-	.atag_offset	= 0x100,
-	.map_io		= u8500_map_io,
-	.init_irq	= ux500_init_irq,
-	.init_time	= ux500_timer_init,
-	.init_machine	= mop500_init_machine,
-	.init_late	= NULL,
-MACHINE_END
-
 MACHINE_START(HREFV60, "ST-Ericsson U8500 Platform HREFv60+")
 	.atag_offset	= 0x100,
 	.smp		= smp_ops(ux500_smp_ops),
-- 
1.8.1.2


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

* [PATCH 38/40] ARM: ux500: Remove ATAG booting support for U8520
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 15 ---------------
 1 file changed, 15 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 705b0d7..9a454b1 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -78,12 +78,6 @@ struct pl022_ssp_controller ssp0_plat = {
 	.num_chipselect = 5,
 };
 
-static void __init mop500_init_machine(void)
-{
-	/* This board has full regulator constraints */
-	regulator_has_full_constraints();
-}
-
 static void __init snowball_init_machine(void)
 {
 	/* This board has full regulator constraints */
@@ -96,15 +90,6 @@ static void __init hrefv60_init_machine(void)
 	regulator_has_full_constraints();
 }
 
-MACHINE_START(U8520, "ST-Ericsson U8520 Platform HREFP520")
-	.atag_offset	= 0x100,
-	.map_io		= u8500_map_io,
-	.init_irq	= ux500_init_irq,
-	.init_time	= ux500_timer_init,
-	.init_machine	= mop500_init_machine,
-	.init_late	= NULL,
-MACHINE_END
-
 MACHINE_START(HREFV60, "ST-Ericsson U8500 Platform HREFv60+")
 	.atag_offset	= 0x100,
 	.smp		= smp_ops(ux500_smp_ops),
-- 
1.8.1.2

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

* [PATCH 39/40] ARM: ux500: Remove ATAG booting support for HREF
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 16 ----------------
 1 file changed, 16 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 9a454b1..f5b1274 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -84,22 +84,6 @@ static void __init snowball_init_machine(void)
 	regulator_has_full_constraints();
 }
 
-static void __init hrefv60_init_machine(void)
-{
-	/* This board has full regulator constraints */
-	regulator_has_full_constraints();
-}
-
-MACHINE_START(HREFV60, "ST-Ericsson U8500 Platform HREFv60+")
-	.atag_offset	= 0x100,
-	.smp		= smp_ops(ux500_smp_ops),
-	.map_io		= u8500_map_io,
-	.init_irq	= ux500_init_irq,
-	.init_time	= ux500_timer_init,
-	.init_machine	= hrefv60_init_machine,
-	.init_late	= NULL,
-MACHINE_END
-
 MACHINE_START(SNOWBALL, "Calao Systems Snowball platform")
 	.atag_offset	= 0x100,
 	.smp		= smp_ops(ux500_smp_ops),
-- 
1.8.1.2


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

* [PATCH 39/40] ARM: ux500: Remove ATAG booting support for HREF
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 16 ----------------
 1 file changed, 16 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index 9a454b1..f5b1274 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -84,22 +84,6 @@ static void __init snowball_init_machine(void)
 	regulator_has_full_constraints();
 }
 
-static void __init hrefv60_init_machine(void)
-{
-	/* This board has full regulator constraints */
-	regulator_has_full_constraints();
-}
-
-MACHINE_START(HREFV60, "ST-Ericsson U8500 Platform HREFv60+")
-	.atag_offset	= 0x100,
-	.smp		= smp_ops(ux500_smp_ops),
-	.map_io		= u8500_map_io,
-	.init_irq	= ux500_init_irq,
-	.init_time	= ux500_timer_init,
-	.init_machine	= hrefv60_init_machine,
-	.init_late	= NULL,
-MACHINE_END
-
 MACHINE_START(SNOWBALL, "Calao Systems Snowball platform")
 	.atag_offset	= 0x100,
 	.smp		= smp_ops(ux500_smp_ops),
-- 
1.8.1.2

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

* [PATCH 40/40] ARM: ux500: Remove ATAG booting support for Snowball
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 12:23   ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel, linux-kernel; +Cc: arnd, linus.walleij, Lee Jones

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 17 -----------------
 1 file changed, 17 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index f5b1274..463e321 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -77,20 +77,3 @@ struct pl022_ssp_controller ssp0_plat = {
 	 */
 	.num_chipselect = 5,
 };
-
-static void __init snowball_init_machine(void)
-{
-	/* This board has full regulator constraints */
-	regulator_has_full_constraints();
-}
-
-MACHINE_START(SNOWBALL, "Calao Systems Snowball platform")
-	.atag_offset	= 0x100,
-	.smp		= smp_ops(ux500_smp_ops),
-	.map_io		= u8500_map_io,
-	.init_irq	= ux500_init_irq,
-	/* we re-use nomadik timer here */
-	.init_time	= ux500_timer_init,
-	.init_machine	= snowball_init_machine,
-	.init_late	= NULL,
-MACHINE_END
-- 
1.8.1.2


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

* [PATCH 40/40] ARM: ux500: Remove ATAG booting support for Snowball
@ 2013-08-23 12:23   ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 12:23 UTC (permalink / raw)
  To: linux-arm-kernel

It's time to remove all ATAG support from ux500 and rely solely on
Device Tree booting. This patch is part of that endeavour.

Signed-off-by: Lee Jones <lee.jones@linaro.org>
---
 arch/arm/mach-ux500/board-mop500.c | 17 -----------------
 1 file changed, 17 deletions(-)

diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c
index f5b1274..463e321 100644
--- a/arch/arm/mach-ux500/board-mop500.c
+++ b/arch/arm/mach-ux500/board-mop500.c
@@ -77,20 +77,3 @@ struct pl022_ssp_controller ssp0_plat = {
 	 */
 	.num_chipselect = 5,
 };
-
-static void __init snowball_init_machine(void)
-{
-	/* This board has full regulator constraints */
-	regulator_has_full_constraints();
-}
-
-MACHINE_START(SNOWBALL, "Calao Systems Snowball platform")
-	.atag_offset	= 0x100,
-	.smp		= smp_ops(ux500_smp_ops),
-	.map_io		= u8500_map_io,
-	.init_irq	= ux500_init_irq,
-	/* we re-use nomadik timer here */
-	.init_time	= ux500_timer_init,
-	.init_machine	= snowball_init_machine,
-	.init_late	= NULL,
-MACHINE_END
-- 
1.8.1.2

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

* Re: [PATCH 32/40] ARM: ux500: Delete U8500 UIB support when booting with ATAGs
  2013-08-23 12:23   ` Lee Jones
@ 2013-08-23 12:53     ` Linus Walleij
  -1 siblings, 0 replies; 98+ messages in thread
From: Linus Walleij @ 2013-08-23 12:53 UTC (permalink / raw)
  To: Lee Jones; +Cc: linux-arm-kernel, linux-kernel, Arnd Bergmann

On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:

> It's time to remove all ATAG support from ux500 and rely solely on
> Device Tree booting. This patch is part of that endeavour.
>
> Signed-off-by: Lee Jones <lee.jones@linaro.org>

This needs some more afterthought.

> -       i2c0 = i2c_get_adapter(0);
> -       if (!i2c0) {
> -               __mop500_uib_init(&mop500_uibs[STUIB],
> -                               "fallback, could not get i2c0");
> -               return -ENODEV;
> -       }
> -
> -       /* U8500-UIB has the TC35893 at 0x44 on I2C0, the ST-UIB doesn't. */
> -       ret = i2c_smbus_xfer(i2c0, 0x44, 0, I2C_SMBUS_WRITE, 0,
> -                       I2C_SMBUS_QUICK, NULL);
> -       i2c_put_adapter(i2c0);
> -
> -       if (ret == 0)
> -               uib = &mop500_uibs[U8500UIB];
> -       else
> -               uib = &mop500_uibs[STUIB];
> -
> -       __mop500_uib_init(uib, "detected");
> +       __mop500_uib_init(&mop500_uibs[STUIB], "detected");

It is not true at all that all HREFs have the STUIB mounted.

This detection needs to stay for now, unless we go and define
in the device tree which UIB is mounted, which would be unfortunate
as we can very well auto-detect it, and that makes it easier for
a user to just swap the UIB and test the other toch screen
(for example).

Yours,
Linus Walleij

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

* [PATCH 32/40] ARM: ux500: Delete U8500 UIB support when booting with ATAGs
@ 2013-08-23 12:53     ` Linus Walleij
  0 siblings, 0 replies; 98+ messages in thread
From: Linus Walleij @ 2013-08-23 12:53 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:

> It's time to remove all ATAG support from ux500 and rely solely on
> Device Tree booting. This patch is part of that endeavour.
>
> Signed-off-by: Lee Jones <lee.jones@linaro.org>

This needs some more afterthought.

> -       i2c0 = i2c_get_adapter(0);
> -       if (!i2c0) {
> -               __mop500_uib_init(&mop500_uibs[STUIB],
> -                               "fallback, could not get i2c0");
> -               return -ENODEV;
> -       }
> -
> -       /* U8500-UIB has the TC35893 at 0x44 on I2C0, the ST-UIB doesn't. */
> -       ret = i2c_smbus_xfer(i2c0, 0x44, 0, I2C_SMBUS_WRITE, 0,
> -                       I2C_SMBUS_QUICK, NULL);
> -       i2c_put_adapter(i2c0);
> -
> -       if (ret == 0)
> -               uib = &mop500_uibs[U8500UIB];
> -       else
> -               uib = &mop500_uibs[STUIB];
> -
> -       __mop500_uib_init(uib, "detected");
> +       __mop500_uib_init(&mop500_uibs[STUIB], "detected");

It is not true at all that all HREFs have the STUIB mounted.

This detection needs to stay for now, unless we go and define
in the device tree which UIB is mounted, which would be unfortunate
as we can very well auto-detect it, and that makes it easier for
a user to just swap the UIB and test the other toch screen
(for example).

Yours,
Linus Walleij

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

* Re: [PATCH 33/40] ARM: ux500: Don't register the STMPE/SKE when booting with ATAG support
  2013-08-23 12:23   ` Lee Jones
@ 2013-08-23 12:55     ` Linus Walleij
  -1 siblings, 0 replies; 98+ messages in thread
From: Linus Walleij @ 2013-08-23 12:55 UTC (permalink / raw)
  To: Lee Jones; +Cc: linux-arm-kernel, linux-kernel, Arnd Bergmann

On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:

> It's time to remove all ATAG support from ux500 and rely solely on
> Device Tree booting. This patch is part of that endeavour.
>
> Signed-off-by: Lee Jones <lee.jones@linaro.org>
(...)
> -/* STMPE/SKE keypad use this key layout */
> -static const unsigned int mop500_keymap[] = {
> -       KEY(2, 5, KEY_END),
> -       KEY(4, 1, KEY_POWER),
> -       KEY(3, 5, KEY_VOLUMEDOWN),
> -       KEY(1, 3, KEY_3),
> -       KEY(5, 2, KEY_RIGHT),
> -       KEY(5, 0, KEY_9),
> -
> -       KEY(0, 5, KEY_MENU),
> -       KEY(7, 6, KEY_ENTER),
> -       KEY(4, 5, KEY_0),
> -       KEY(6, 7, KEY_2),
> -       KEY(3, 4, KEY_UP),
> -       KEY(3, 3, KEY_DOWN),
> -
> -       KEY(6, 4, KEY_SEND),
> -       KEY(6, 2, KEY_BACK),
> -       KEY(4, 2, KEY_VOLUMEUP),
> -       KEY(5, 5, KEY_1),
> -       KEY(4, 3, KEY_LEFT),
> -       KEY(3, 2, KEY_7),
> -};

This STMPE1601 keypad @0x40 and UIB encoding for
the U8500 UIB does not exist in any DTS file does it? This
means that the support for this UIB is effectively terminated.

This needs more afterthought.

Yours,
Linus Walleij

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

* [PATCH 33/40] ARM: ux500: Don't register the STMPE/SKE when booting with ATAG support
@ 2013-08-23 12:55     ` Linus Walleij
  0 siblings, 0 replies; 98+ messages in thread
From: Linus Walleij @ 2013-08-23 12:55 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:

> It's time to remove all ATAG support from ux500 and rely solely on
> Device Tree booting. This patch is part of that endeavour.
>
> Signed-off-by: Lee Jones <lee.jones@linaro.org>
(...)
> -/* STMPE/SKE keypad use this key layout */
> -static const unsigned int mop500_keymap[] = {
> -       KEY(2, 5, KEY_END),
> -       KEY(4, 1, KEY_POWER),
> -       KEY(3, 5, KEY_VOLUMEDOWN),
> -       KEY(1, 3, KEY_3),
> -       KEY(5, 2, KEY_RIGHT),
> -       KEY(5, 0, KEY_9),
> -
> -       KEY(0, 5, KEY_MENU),
> -       KEY(7, 6, KEY_ENTER),
> -       KEY(4, 5, KEY_0),
> -       KEY(6, 7, KEY_2),
> -       KEY(3, 4, KEY_UP),
> -       KEY(3, 3, KEY_DOWN),
> -
> -       KEY(6, 4, KEY_SEND),
> -       KEY(6, 2, KEY_BACK),
> -       KEY(4, 2, KEY_VOLUMEUP),
> -       KEY(5, 5, KEY_1),
> -       KEY(4, 3, KEY_LEFT),
> -       KEY(3, 2, KEY_7),
> -};

This STMPE1601 keypad @0x40 and UIB encoding for
the U8500 UIB does not exist in any DTS file does it? This
means that the support for this UIB is effectively terminated.

This needs more afterthought.

Yours,
Linus Walleij

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

* Re: [PATCH 32/40] ARM: ux500: Delete U8500 UIB support when booting with ATAGs
  2013-08-23 12:53     ` Linus Walleij
@ 2013-08-23 13:03       ` Linus Walleij
  -1 siblings, 0 replies; 98+ messages in thread
From: Linus Walleij @ 2013-08-23 13:03 UTC (permalink / raw)
  To: Lee Jones; +Cc: linux-arm-kernel, linux-kernel, Arnd Bergmann

On Fri, Aug 23, 2013 at 2:53 PM, Linus Walleij <linus.walleij@linaro.org> wrote:

> It is not true at all that all HREFs have the STUIB mounted.

Hm I'm confused here...

arch/arm/boot/dts/[ste-]stuib.dtsi does define this stuff
so forget about the misplaced comments.

For *all* HREF boards. As it is included from both
[ste-]hrefprev60.dts and [ste-]hrefv60plus.dts

However it is only really mounted on some of the HREFs,
and the following stays valid:

> This detection needs to stay for now, unless we go and define
> in the device tree which UIB is mounted, which would be unfortunate
> as we can very well auto-detect it, and that makes it easier for
> a user to just swap the UIB and test the other toch screen
> (for example).

So it would be really nice to keep this autodetection.

What would be nice if we could mark all the STUIB as
"disabled" in the device trees, and then augment the device tree
at boot depending on if we find something at 0x44 as in this
test:

> -       /* U8500-UIB has the TC35893 at 0x44 on I2C0, the ST-UIB doesn't. */
> -       ret = i2c_smbus_xfer(i2c0, 0x44, 0, I2C_SMBUS_WRITE, 0,
> -                       I2C_SMBUS_QUICK, NULL);

And then mark these as "okay" in the DT.

That's pretty high-tech but I bet we can pull it off (and set
a good example).

Yours,
Linus Walleij

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

* [PATCH 32/40] ARM: ux500: Delete U8500 UIB support when booting with ATAGs
@ 2013-08-23 13:03       ` Linus Walleij
  0 siblings, 0 replies; 98+ messages in thread
From: Linus Walleij @ 2013-08-23 13:03 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Aug 23, 2013 at 2:53 PM, Linus Walleij <linus.walleij@linaro.org> wrote:

> It is not true at all that all HREFs have the STUIB mounted.

Hm I'm confused here...

arch/arm/boot/dts/[ste-]stuib.dtsi does define this stuff
so forget about the misplaced comments.

For *all* HREF boards. As it is included from both
[ste-]hrefprev60.dts and [ste-]hrefv60plus.dts

However it is only really mounted on some of the HREFs,
and the following stays valid:

> This detection needs to stay for now, unless we go and define
> in the device tree which UIB is mounted, which would be unfortunate
> as we can very well auto-detect it, and that makes it easier for
> a user to just swap the UIB and test the other toch screen
> (for example).

So it would be really nice to keep this autodetection.

What would be nice if we could mark all the STUIB as
"disabled" in the device trees, and then augment the device tree
at boot depending on if we find something at 0x44 as in this
test:

> -       /* U8500-UIB has the TC35893 at 0x44 on I2C0, the ST-UIB doesn't. */
> -       ret = i2c_smbus_xfer(i2c0, 0x44, 0, I2C_SMBUS_WRITE, 0,
> -                       I2C_SMBUS_QUICK, NULL);

And then mark these as "okay" in the DT.

That's pretty high-tech but I bet we can pull it off (and set
a good example).

Yours,
Linus Walleij

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

* Re: [PATCH 33/40] ARM: ux500: Don't register the STMPE/SKE when booting with ATAG support
  2013-08-23 12:55     ` Linus Walleij
@ 2013-08-23 13:05       ` Linus Walleij
  -1 siblings, 0 replies; 98+ messages in thread
From: Linus Walleij @ 2013-08-23 13:05 UTC (permalink / raw)
  To: Lee Jones; +Cc: linux-arm-kernel, linux-kernel, Arnd Bergmann

On Fri, Aug 23, 2013 at 2:55 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
> On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:
>
>> It's time to remove all ATAG support from ux500 and rely solely on
>> Device Tree booting. This patch is part of that endeavour.
>>
>> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> (...)
>> -/* STMPE/SKE keypad use this key layout */
>> -static const unsigned int mop500_keymap[] = {
>> -       KEY(2, 5, KEY_END),
>> -       KEY(4, 1, KEY_POWER),
>> -       KEY(3, 5, KEY_VOLUMEDOWN),
>> -       KEY(1, 3, KEY_3),
>> -       KEY(5, 2, KEY_RIGHT),
>> -       KEY(5, 0, KEY_9),
>> -
>> -       KEY(0, 5, KEY_MENU),
>> -       KEY(7, 6, KEY_ENTER),
>> -       KEY(4, 5, KEY_0),
>> -       KEY(6, 7, KEY_2),
>> -       KEY(3, 4, KEY_UP),
>> -       KEY(3, 3, KEY_DOWN),
>> -
>> -       KEY(6, 4, KEY_SEND),
>> -       KEY(6, 2, KEY_BACK),
>> -       KEY(4, 2, KEY_VOLUMEUP),
>> -       KEY(5, 5, KEY_1),
>> -       KEY(4, 3, KEY_LEFT),
>> -       KEY(3, 2, KEY_7),
>> -};
>
> This STMPE1601 keypad @0x40 and UIB encoding for
> the U8500 UIB does not exist in any DTS file does it? This
> means that the support for this UIB is effectively terminated.

You are wrong. Go read arch/arm/boot/dts/[ste-]stuib.dtsi.

Anyway, what you wanted to say was for these to be marked
"disabled" by default and turned into "okay" using an I2C
probe operation.

Yours,
Linus Walleij

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

* [PATCH 33/40] ARM: ux500: Don't register the STMPE/SKE when booting with ATAG support
@ 2013-08-23 13:05       ` Linus Walleij
  0 siblings, 0 replies; 98+ messages in thread
From: Linus Walleij @ 2013-08-23 13:05 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Aug 23, 2013 at 2:55 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
> On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:
>
>> It's time to remove all ATAG support from ux500 and rely solely on
>> Device Tree booting. This patch is part of that endeavour.
>>
>> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> (...)
>> -/* STMPE/SKE keypad use this key layout */
>> -static const unsigned int mop500_keymap[] = {
>> -       KEY(2, 5, KEY_END),
>> -       KEY(4, 1, KEY_POWER),
>> -       KEY(3, 5, KEY_VOLUMEDOWN),
>> -       KEY(1, 3, KEY_3),
>> -       KEY(5, 2, KEY_RIGHT),
>> -       KEY(5, 0, KEY_9),
>> -
>> -       KEY(0, 5, KEY_MENU),
>> -       KEY(7, 6, KEY_ENTER),
>> -       KEY(4, 5, KEY_0),
>> -       KEY(6, 7, KEY_2),
>> -       KEY(3, 4, KEY_UP),
>> -       KEY(3, 3, KEY_DOWN),
>> -
>> -       KEY(6, 4, KEY_SEND),
>> -       KEY(6, 2, KEY_BACK),
>> -       KEY(4, 2, KEY_VOLUMEUP),
>> -       KEY(5, 5, KEY_1),
>> -       KEY(4, 3, KEY_LEFT),
>> -       KEY(3, 2, KEY_7),
>> -};
>
> This STMPE1601 keypad @0x40 and UIB encoding for
> the U8500 UIB does not exist in any DTS file does it? This
> means that the support for this UIB is effectively terminated.

You are wrong. Go read arch/arm/boot/dts/[ste-]stuib.dtsi.

Anyway, what you wanted to say was for these to be marked
"disabled" by default and turned into "okay" using an I2C
probe operation.

Yours,
Linus Walleij

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

* Re: [PATCH 0/40] ARM: ux500: Convert to Device Tree only platform
  2013-08-23 12:23 ` Lee Jones
@ 2013-08-23 13:26   ` Linus Walleij
  -1 siblings, 0 replies; 98+ messages in thread
From: Linus Walleij @ 2013-08-23 13:26 UTC (permalink / raw)
  To: Lee Jones; +Cc: linux-arm-kernel, linux-kernel, Arnd Bergmann, Ulf Hansson

On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:

> I started by taking out simple, unimportant pieces, then finalised by
> removing the critical booting components required for booting with
> ATAGs. After this patch-set the ux500 will only boot with Device Tree
> enabled. DT boot appears to be unaffected by the work, tested on
> Snowball.

Overall a very nice pice-by-piece approach, thanks!

We need to CLK DT stuff sorted out and applied first though.

I think we can just go ahead and start applying first the clk DT
and then this as a first take for v3.13 after the merge window.
(It's way too late for v3.12.)

Yours,
Linus Walleij

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

* [PATCH 0/40] ARM: ux500: Convert to Device Tree only platform
@ 2013-08-23 13:26   ` Linus Walleij
  0 siblings, 0 replies; 98+ messages in thread
From: Linus Walleij @ 2013-08-23 13:26 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:

> I started by taking out simple, unimportant pieces, then finalised by
> removing the critical booting components required for booting with
> ATAGs. After this patch-set the ux500 will only boot with Device Tree
> enabled. DT boot appears to be unaffected by the work, tested on
> Snowball.

Overall a very nice pice-by-piece approach, thanks!

We need to CLK DT stuff sorted out and applied first though.

I think we can just go ahead and start applying first the clk DT
and then this as a first take for v3.13 after the merge window.
(It's way too late for v3.12.)

Yours,
Linus Walleij

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

* Re: [PATCH 0/40] ARM: ux500: Convert to Device Tree only platform
  2013-08-23 13:26   ` Linus Walleij
@ 2013-08-23 14:46     ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 14:46 UTC (permalink / raw)
  To: Linus Walleij; +Cc: linux-arm-kernel, linux-kernel, Arnd Bergmann, Ulf Hansson

On Fri, 23 Aug 2013, Linus Walleij wrote:

> On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:
> 
> > I started by taking out simple, unimportant pieces, then finalised by
> > removing the critical booting components required for booting with
> > ATAGs. After this patch-set the ux500 will only boot with Device Tree
> > enabled. DT boot appears to be unaffected by the work, tested on
> > Snowball.
> 
> Overall a very nice pice-by-piece approach, thanks!
> 
> We need to CLK DT stuff sorted out and applied first though.
> 
> I think we can just go ahead and start applying first the clk DT
> and then this as a first take for v3.13 after the merge window.
> (It's way too late for v3.12.)

Sure. Sounds like a good approach.

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

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

* [PATCH 0/40] ARM: ux500: Convert to Device Tree only platform
@ 2013-08-23 14:46     ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 14:46 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, 23 Aug 2013, Linus Walleij wrote:

> On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:
> 
> > I started by taking out simple, unimportant pieces, then finalised by
> > removing the critical booting components required for booting with
> > ATAGs. After this patch-set the ux500 will only boot with Device Tree
> > enabled. DT boot appears to be unaffected by the work, tested on
> > Snowball.
> 
> Overall a very nice pice-by-piece approach, thanks!
> 
> We need to CLK DT stuff sorted out and applied first though.
> 
> I think we can just go ahead and start applying first the clk DT
> and then this as a first take for v3.13 after the merge window.
> (It's way too late for v3.12.)

Sure. Sounds like a good approach.

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

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

* Re: [PATCH 33/40] ARM: ux500: Don't register the STMPE/SKE when booting with ATAG support
  2013-08-23 13:05       ` Linus Walleij
@ 2013-08-23 14:50         ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 14:50 UTC (permalink / raw)
  To: Linus Walleij; +Cc: linux-arm-kernel, linux-kernel, Arnd Bergmann

On Fri, 23 Aug 2013, Linus Walleij wrote:

> On Fri, Aug 23, 2013 at 2:55 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
> > On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:
> >
> >> It's time to remove all ATAG support from ux500 and rely solely on
> >> Device Tree booting. This patch is part of that endeavour.
> >>
> >> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> > (...)
> >> -/* STMPE/SKE keypad use this key layout */
> >> -static const unsigned int mop500_keymap[] = {
> >> -       KEY(2, 5, KEY_END),
> >> -       KEY(4, 1, KEY_POWER),
> >> -       KEY(3, 5, KEY_VOLUMEDOWN),
> >> -       KEY(1, 3, KEY_3),
> >> -       KEY(5, 2, KEY_RIGHT),
> >> -       KEY(5, 0, KEY_9),
> >> -
> >> -       KEY(0, 5, KEY_MENU),
> >> -       KEY(7, 6, KEY_ENTER),
> >> -       KEY(4, 5, KEY_0),
> >> -       KEY(6, 7, KEY_2),
> >> -       KEY(3, 4, KEY_UP),
> >> -       KEY(3, 3, KEY_DOWN),
> >> -
> >> -       KEY(6, 4, KEY_SEND),
> >> -       KEY(6, 2, KEY_BACK),
> >> -       KEY(4, 2, KEY_VOLUMEUP),
> >> -       KEY(5, 5, KEY_1),
> >> -       KEY(4, 3, KEY_LEFT),
> >> -       KEY(3, 2, KEY_7),
> >> -};
> >
> > This STMPE1601 keypad @0x40 and UIB encoding for
> > the U8500 UIB does not exist in any DTS file does it? This
> > means that the support for this UIB is effectively terminated.
> 
> You are wrong. Go read arch/arm/boot/dts/[ste-]stuib.dtsi.
> 
> Anyway, what you wanted to say was for these to be marked
> "disabled" by default and turned into "okay" using an I2C
> probe operation.

Why are you talking to yourself? Have you finally lost it?

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

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

* [PATCH 33/40] ARM: ux500: Don't register the STMPE/SKE when booting with ATAG support
@ 2013-08-23 14:50         ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-23 14:50 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, 23 Aug 2013, Linus Walleij wrote:

> On Fri, Aug 23, 2013 at 2:55 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
> > On Fri, Aug 23, 2013 at 2:23 PM, Lee Jones <lee.jones@linaro.org> wrote:
> >
> >> It's time to remove all ATAG support from ux500 and rely solely on
> >> Device Tree booting. This patch is part of that endeavour.
> >>
> >> Signed-off-by: Lee Jones <lee.jones@linaro.org>
> > (...)
> >> -/* STMPE/SKE keypad use this key layout */
> >> -static const unsigned int mop500_keymap[] = {
> >> -       KEY(2, 5, KEY_END),
> >> -       KEY(4, 1, KEY_POWER),
> >> -       KEY(3, 5, KEY_VOLUMEDOWN),
> >> -       KEY(1, 3, KEY_3),
> >> -       KEY(5, 2, KEY_RIGHT),
> >> -       KEY(5, 0, KEY_9),
> >> -
> >> -       KEY(0, 5, KEY_MENU),
> >> -       KEY(7, 6, KEY_ENTER),
> >> -       KEY(4, 5, KEY_0),
> >> -       KEY(6, 7, KEY_2),
> >> -       KEY(3, 4, KEY_UP),
> >> -       KEY(3, 3, KEY_DOWN),
> >> -
> >> -       KEY(6, 4, KEY_SEND),
> >> -       KEY(6, 2, KEY_BACK),
> >> -       KEY(4, 2, KEY_VOLUMEUP),
> >> -       KEY(5, 5, KEY_1),
> >> -       KEY(4, 3, KEY_LEFT),
> >> -       KEY(3, 2, KEY_7),
> >> -};
> >
> > This STMPE1601 keypad @0x40 and UIB encoding for
> > the U8500 UIB does not exist in any DTS file does it? This
> > means that the support for this UIB is effectively terminated.
> 
> You are wrong. Go read arch/arm/boot/dts/[ste-]stuib.dtsi.
> 
> Anyway, what you wanted to say was for these to be marked
> "disabled" by default and turned into "okay" using an I2C
> probe operation.

Why are you talking to yourself? Have you finally lost it?

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

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

* Re: [PATCH 32/40] ARM: ux500: Delete U8500 UIB support when booting with ATAGs
  2013-08-23 13:03       ` Linus Walleij
@ 2013-08-27  7:52         ` Lee Jones
  -1 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-27  7:52 UTC (permalink / raw)
  To: Linus Walleij; +Cc: linux-arm-kernel, linux-kernel, Arnd Bergmann

On Fri, 23 Aug 2013, Linus Walleij wrote:

> On Fri, Aug 23, 2013 at 2:53 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
> 
> > It is not true at all that all HREFs have the STUIB mounted.
> 
> Hm I'm confused here...
> 
> arch/arm/boot/dts/[ste-]stuib.dtsi does define this stuff
> so forget about the misplaced comments.
> 
> For *all* HREF boards. As it is included from both
> [ste-]hrefprev60.dts and [ste-]hrefv60plus.dts
> 
> However it is only really mounted on some of the HREFs,
> and the following stays valid:
> 
> > This detection needs to stay for now, unless we go and define
> > in the device tree which UIB is mounted, which would be unfortunate
> > as we can very well auto-detect it, and that makes it easier for
> > a user to just swap the UIB and test the other toch screen
> > (for example).
> 
> So it would be really nice to keep this autodetection.
> 
> What would be nice if we could mark all the STUIB as
> "disabled" in the device trees, and then augment the device tree
> at boot depending on if we find something at 0x44 as in this
> test:
> 
> > -       /* U8500-UIB has the TC35893 at 0x44 on I2C0, the ST-UIB doesn't. */
> > -       ret = i2c_smbus_xfer(i2c0, 0x44, 0, I2C_SMBUS_WRITE, 0,
> > -                       I2C_SMBUS_QUICK, NULL);
> 
> And then mark these as "okay" in the DT.
> 
> That's pretty high-tech but I bet we can pull it off (and set
> a good example).

Well, this stuff is possible, but it doesn't really have anything to
do with this patch-set. We can reuse 'some' of this code, but we'd need
to think of a new way to represent it. That coupled with the fact that
the Device Tree boot doesn't use any of this stuff yet leads to
believe we can keep this removal patch in the set and re-introduce the
key parts when we've had a chat about the new implementation.

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

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

* [PATCH 32/40] ARM: ux500: Delete U8500 UIB support when booting with ATAGs
@ 2013-08-27  7:52         ` Lee Jones
  0 siblings, 0 replies; 98+ messages in thread
From: Lee Jones @ 2013-08-27  7:52 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, 23 Aug 2013, Linus Walleij wrote:

> On Fri, Aug 23, 2013 at 2:53 PM, Linus Walleij <linus.walleij@linaro.org> wrote:
> 
> > It is not true at all that all HREFs have the STUIB mounted.
> 
> Hm I'm confused here...
> 
> arch/arm/boot/dts/[ste-]stuib.dtsi does define this stuff
> so forget about the misplaced comments.
> 
> For *all* HREF boards. As it is included from both
> [ste-]hrefprev60.dts and [ste-]hrefv60plus.dts
> 
> However it is only really mounted on some of the HREFs,
> and the following stays valid:
> 
> > This detection needs to stay for now, unless we go and define
> > in the device tree which UIB is mounted, which would be unfortunate
> > as we can very well auto-detect it, and that makes it easier for
> > a user to just swap the UIB and test the other toch screen
> > (for example).
> 
> So it would be really nice to keep this autodetection.
> 
> What would be nice if we could mark all the STUIB as
> "disabled" in the device trees, and then augment the device tree
> at boot depending on if we find something at 0x44 as in this
> test:
> 
> > -       /* U8500-UIB has the TC35893 at 0x44 on I2C0, the ST-UIB doesn't. */
> > -       ret = i2c_smbus_xfer(i2c0, 0x44, 0, I2C_SMBUS_WRITE, 0,
> > -                       I2C_SMBUS_QUICK, NULL);
> 
> And then mark these as "okay" in the DT.
> 
> That's pretty high-tech but I bet we can pull it off (and set
> a good example).

Well, this stuff is possible, but it doesn't really have anything to
do with this patch-set. We can reuse 'some' of this code, but we'd need
to think of a new way to represent it. That coupled with the fact that
the Device Tree boot doesn't use any of this stuff yet leads to
believe we can keep this removal patch in the set and re-introduce the
key parts when we've had a chat about the new implementation.

-- 
Lee Jones
Linaro ST-Ericsson Landing Team Lead
Linaro.org ? Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

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

end of thread, other threads:[~2013-08-27  7:52 UTC | newest]

Thread overview: 98+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-08-23 12:23 [PATCH 0/40] ARM: ux500: Convert to Device Tree only platform Lee Jones
2013-08-23 12:23 ` Lee Jones
2013-08-23 12:23 ` [PATCH 01/40] ARM: ux500: Remove Audio/MSP support when booting with ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 02/40] ARM: ux500: Remove TPS61052 High Power White LED Driver ATAG support Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 03/40] ARM: ux500: Remove ATAG support for LP5521 Programmable Three-Channel LED driver Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 04/40] ARM: ux500: Remove ATAG booting support for Snowball's heatbeat LED Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 05/40] ARM: ux500: Purge support for Snowball user buttons when booting with ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 06/40] ARM: ux500: Disable Snowball's SMSC911x Ethernet " Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 07/40] ARM: ux500: Remove support for Snowball's Ethernet regulator " Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 08/40] ARM: ux500: Disable Snowball's CPUFreq functionality when booting with ATAGs enabled Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 09/40] ARM: ux500: Purge SDI regulator support when booting with ATAGs enable Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 10/40] ARM: ux500: Deactivate Crypt support when booting with ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 11/40] ARM: ux500: Rip out Hash " Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 12/40] ARM: ux500: Prevent CODEC platform data from being passed when booting ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 13/40] ARM: ux500: Stop passing GPIO pdata when booitng with ATAGs enabled Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 14/40] ARM: ux500: Remove TC35892 Flexible IO Expander when booting ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 15/40] ARM: ux500: Remove Light sensor Rohm BH1780GLI when booting with ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 16/40] ARM: ux500: Purge SFH7741 Proximity Sensor support " Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 17/40] ARM: ux500: Remove I2C support when booting with ATAG support Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 18/40] ARM: ux500: Purge SDI support for ATAG booting Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 19/40] ARM: ux500: Rip out keypad initialisation which is no longer used Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 20/40] ARM: ux500: Remove USB support when booting using ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 21/40] ARM: ux500: Purge support for registering the RTC when booting with ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 22/40] ARM: ux500: Stop registering Pinctrl when booting with ATAG support Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 23/40] ARM: ux500: Stop enabling GPIOs when not booting with Device Tree Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 24/40] ARM: ux500: Deactivate enablement of DMA40 during ATAG booting Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 25/40] ARM: ux500: Do not register the PMU device if booting with ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 26/40] ARM: ux500: Rip out SSP/SPI registration when not booting with Device Tree Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 27/40] ARM: ux500: Stop initialising the pinmaps when booting with ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 28/40] ARM: ux500: Remove UART support when booting without Device Tree Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 29/40] ARM: ux500: Stop requesting the SoC device to play 'parent' role Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 30/40] ARM: ux500: Purge DB8500 PRCMU registration when not booting with DT Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 31/40] ARM: ux500: Don't register Synaptics RMI4 TS when booting with ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 32/40] ARM: ux500: Delete U8500 UIB support " Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:53   ` Linus Walleij
2013-08-23 12:53     ` Linus Walleij
2013-08-23 13:03     ` Linus Walleij
2013-08-23 13:03       ` Linus Walleij
2013-08-27  7:52       ` Lee Jones
2013-08-27  7:52         ` Lee Jones
2013-08-23 12:23 ` [PATCH 33/40] ARM: ux500: Don't register the STMPE/SKE when booting with ATAG support Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:55   ` Linus Walleij
2013-08-23 12:55     ` Linus Walleij
2013-08-23 13:05     ` Linus Walleij
2013-08-23 13:05       ` Linus Walleij
2013-08-23 14:50       ` Lee Jones
2013-08-23 14:50         ` Lee Jones
2013-08-23 12:23 ` [PATCH 34/40] ARM: ux500: Remove BU21013 ROHM TS support when booting with only ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 35/40] ARM: ux500: Take out STUIB support when not booting with Device Tree Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 36/40] ARM: ux500: Purge UIB framework when booting with ATAGs Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 37/40] ARM: ux500: Remove ATAG booting support for MOP500 Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 38/40] ARM: ux500: Remove ATAG booting support for U8520 Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 39/40] ARM: ux500: Remove ATAG booting support for HREF Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 12:23 ` [PATCH 40/40] ARM: ux500: Remove ATAG booting support for Snowball Lee Jones
2013-08-23 12:23   ` Lee Jones
2013-08-23 13:26 ` [PATCH 0/40] ARM: ux500: Convert to Device Tree only platform Linus Walleij
2013-08-23 13:26   ` Linus Walleij
2013-08-23 14:46   ` Lee Jones
2013-08-23 14:46     ` Lee Jones

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.