aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorShawn Guo <shawn.guo@linaro.org>2012-09-15 09:11:28 -0400
committerShawn Guo <shawn.guo@linaro.org>2012-10-14 22:03:17 -0400
commite51d0f0ac4b7f513808743c6a62f0387eebd0144 (patch)
tree1efe37ce7bf87694ea8c79fe06256b131db5658d /arch/arm
parent73930eb31b2ecb0177c9bf81a35b4d2d73716951 (diff)
dma: imx-dma: remove cpu_is_xxx by using platform_device_id
It changes the driver to use platform_device_id rather than cpu_is_xxx to determine the controller type, and updates the platform code accordingly. As the result, mach/hardware.h inclusion gets removed from the driver. Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de> Acked-by: Arnd Bergmann <arnd@arndb.de> Tested-by: Javier Martin <javier.martin@vista-silicon.com> Cc: Vinod Koul <vinod.koul@linux.intel.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-imx/clk-imx1.c3
-rw-r--r--arch/arm/mach-imx/clk-imx21.c4
-rw-r--r--arch/arm/mach-imx/clk-imx27.c4
-rw-r--r--arch/arm/mach-imx/devices/devices-common.h2
-rw-r--r--arch/arm/mach-imx/devices/platform-imx-dma.c4
-rw-r--r--arch/arm/mach-imx/mm-imx1.c3
-rw-r--r--arch/arm/mach-imx/mm-imx21.c3
-rw-r--r--arch/arm/mach-imx/mm-imx27.c3
8 files changed, 15 insertions, 11 deletions
diff --git a/arch/arm/mach-imx/clk-imx1.c b/arch/arm/mach-imx/clk-imx1.c
index 1cc7a735ed19..49a74440bc48 100644
--- a/arch/arm/mach-imx/clk-imx1.c
+++ b/arch/arm/mach-imx/clk-imx1.c
@@ -83,7 +83,8 @@ int __init mx1_clocks_init(unsigned long fref)
83 pr_err("imx1 clk %d: register failed with %ld\n", 83 pr_err("imx1 clk %d: register failed with %ld\n",
84 i, PTR_ERR(clk[i])); 84 i, PTR_ERR(clk[i]));
85 85
86 clk_register_clkdev(clk[dma_gate], "ahb", "imx-dma"); 86 clk_register_clkdev(clk[dma_gate], "ahb", "imx1-dma");
87 clk_register_clkdev(clk[hclk], "ipg", "imx1-dma");
87 clk_register_clkdev(clk[csi_gate], NULL, "mx1-camera.0"); 88 clk_register_clkdev(clk[csi_gate], NULL, "mx1-camera.0");
88 clk_register_clkdev(clk[mma_gate], "mma", NULL); 89 clk_register_clkdev(clk[mma_gate], "mma", NULL);
89 clk_register_clkdev(clk[usbd_gate], NULL, "imx_udc.0"); 90 clk_register_clkdev(clk[usbd_gate], NULL, "imx_udc.0");
diff --git a/arch/arm/mach-imx/clk-imx21.c b/arch/arm/mach-imx/clk-imx21.c
index 96a4788032d1..8aec572f84fe 100644
--- a/arch/arm/mach-imx/clk-imx21.c
+++ b/arch/arm/mach-imx/clk-imx21.c
@@ -163,8 +163,8 @@ int __init mx21_clocks_init(unsigned long lref, unsigned long href)
163 clk_register_clkdev(clk[usb_gate], "per", "imx21-hcd.0"); 163 clk_register_clkdev(clk[usb_gate], "per", "imx21-hcd.0");
164 clk_register_clkdev(clk[usb_hclk_gate], "ahb", "imx21-hcd.0"); 164 clk_register_clkdev(clk[usb_hclk_gate], "ahb", "imx21-hcd.0");
165 clk_register_clkdev(clk[nfc_gate], NULL, "imx21-nand.0"); 165 clk_register_clkdev(clk[nfc_gate], NULL, "imx21-nand.0");
166 clk_register_clkdev(clk[dma_hclk_gate], "ahb", "imx-dma"); 166 clk_register_clkdev(clk[dma_hclk_gate], "ahb", "imx21-dma");
167 clk_register_clkdev(clk[dma_gate], "ipg", "imx-dma"); 167 clk_register_clkdev(clk[dma_gate], "ipg", "imx21-dma");
168 clk_register_clkdev(clk[wdog_gate], NULL, "imx2-wdt.0"); 168 clk_register_clkdev(clk[wdog_gate], NULL, "imx2-wdt.0");
169 clk_register_clkdev(clk[i2c_gate], NULL, "imx21-i2c.0"); 169 clk_register_clkdev(clk[i2c_gate], NULL, "imx21-i2c.0");
170 clk_register_clkdev(clk[kpp_gate], NULL, "mxc-keypad"); 170 clk_register_clkdev(clk[kpp_gate], NULL, "mxc-keypad");
diff --git a/arch/arm/mach-imx/clk-imx27.c b/arch/arm/mach-imx/clk-imx27.c
index 86a0c4262471..a5f0e3b6dec6 100644
--- a/arch/arm/mach-imx/clk-imx27.c
+++ b/arch/arm/mach-imx/clk-imx27.c
@@ -242,8 +242,8 @@ int __init mx27_clocks_init(unsigned long fref)
242 clk_register_clkdev(clk[nfc_baud_gate], NULL, "imx27-nand.0"); 242 clk_register_clkdev(clk[nfc_baud_gate], NULL, "imx27-nand.0");
243 clk_register_clkdev(clk[vpu_baud_gate], "per", "coda-imx27.0"); 243 clk_register_clkdev(clk[vpu_baud_gate], "per", "coda-imx27.0");
244 clk_register_clkdev(clk[vpu_ahb_gate], "ahb", "coda-imx27.0"); 244 clk_register_clkdev(clk[vpu_ahb_gate], "ahb", "coda-imx27.0");
245 clk_register_clkdev(clk[dma_ahb_gate], "ahb", "imx-dma"); 245 clk_register_clkdev(clk[dma_ahb_gate], "ahb", "imx27-dma");
246 clk_register_clkdev(clk[dma_ipg_gate], "ipg", "imx-dma"); 246 clk_register_clkdev(clk[dma_ipg_gate], "ipg", "imx27-dma");
247 clk_register_clkdev(clk[fec_ipg_gate], "ipg", "imx27-fec.0"); 247 clk_register_clkdev(clk[fec_ipg_gate], "ipg", "imx27-fec.0");
248 clk_register_clkdev(clk[fec_ahb_gate], "ahb", "imx27-fec.0"); 248 clk_register_clkdev(clk[fec_ahb_gate], "ahb", "imx27-fec.0");
249 clk_register_clkdev(clk[wdog_ipg_gate], NULL, "imx2-wdt.0"); 249 clk_register_clkdev(clk[wdog_ipg_gate], NULL, "imx2-wdt.0");
diff --git a/arch/arm/mach-imx/devices/devices-common.h b/arch/arm/mach-imx/devices/devices-common.h
index e4368f6c5fb4..36eb3f09f5d7 100644
--- a/arch/arm/mach-imx/devices/devices-common.h
+++ b/arch/arm/mach-imx/devices/devices-common.h
@@ -329,7 +329,7 @@ struct platform_device *__init imx_add_spi_imx(
329 const struct imx_spi_imx_data *data, 329 const struct imx_spi_imx_data *data,
330 const struct spi_imx_master *pdata); 330 const struct spi_imx_master *pdata);
331 331
332struct platform_device *imx_add_imx_dma(resource_size_t iobase, 332struct platform_device *imx_add_imx_dma(char *name, resource_size_t iobase,
333 int irq, int irq_err); 333 int irq, int irq_err);
334struct platform_device *imx_add_imx_sdma(char *name, 334struct platform_device *imx_add_imx_sdma(char *name,
335 resource_size_t iobase, int irq, struct sdma_platform_data *pdata); 335 resource_size_t iobase, int irq, struct sdma_platform_data *pdata);
diff --git a/arch/arm/mach-imx/devices/platform-imx-dma.c b/arch/arm/mach-imx/devices/platform-imx-dma.c
index f9003e4d0f57..ccdb5dc4ddbd 100644
--- a/arch/arm/mach-imx/devices/platform-imx-dma.c
+++ b/arch/arm/mach-imx/devices/platform-imx-dma.c
@@ -8,7 +8,7 @@
8 */ 8 */
9#include "devices-common.h" 9#include "devices-common.h"
10 10
11struct platform_device __init __maybe_unused *imx_add_imx_dma( 11struct platform_device __init __maybe_unused *imx_add_imx_dma(char *name,
12 resource_size_t iobase, int irq, int irq_err) 12 resource_size_t iobase, int irq, int irq_err)
13{ 13{
14 struct resource res[] = { 14 struct resource res[] = {
@@ -28,7 +28,7 @@ struct platform_device __init __maybe_unused *imx_add_imx_dma(
28 }; 28 };
29 29
30 return platform_device_register_resndata(&mxc_ahb_bus, 30 return platform_device_register_resndata(&mxc_ahb_bus,
31 "imx-dma", -1, res, ARRAY_SIZE(res), NULL, 0); 31 name, -1, res, ARRAY_SIZE(res), NULL, 0);
32} 32}
33 33
34struct platform_device __init __maybe_unused *imx_add_imx_sdma(char *name, 34struct platform_device __init __maybe_unused *imx_add_imx_sdma(char *name,
diff --git a/arch/arm/mach-imx/mm-imx1.c b/arch/arm/mach-imx/mm-imx1.c
index 9de81bf6de96..79f6c0b8f69f 100644
--- a/arch/arm/mach-imx/mm-imx1.c
+++ b/arch/arm/mach-imx/mm-imx1.c
@@ -60,6 +60,7 @@ void __init imx1_soc_init(void)
60 MX1_GPIO_INT_PORTC, 0); 60 MX1_GPIO_INT_PORTC, 0);
61 mxc_register_gpio("imx1-gpio", 3, MX1_GPIO4_BASE_ADDR, SZ_256, 61 mxc_register_gpio("imx1-gpio", 3, MX1_GPIO4_BASE_ADDR, SZ_256,
62 MX1_GPIO_INT_PORTD, 0); 62 MX1_GPIO_INT_PORTD, 0);
63 imx_add_imx_dma(MX1_DMA_BASE_ADDR, MX1_DMA_INT, MX1_DMA_ERR); 63 imx_add_imx_dma("imx1-dma", MX1_DMA_BASE_ADDR,
64 MX1_DMA_INT, MX1_DMA_ERR);
64 pinctrl_provide_dummies(); 65 pinctrl_provide_dummies();
65} 66}
diff --git a/arch/arm/mach-imx/mm-imx21.c b/arch/arm/mach-imx/mm-imx21.c
index 1c295154c296..3b97ea63b5fb 100644
--- a/arch/arm/mach-imx/mm-imx21.c
+++ b/arch/arm/mach-imx/mm-imx21.c
@@ -90,7 +90,8 @@ void __init imx21_soc_init(void)
90 mxc_register_gpio("imx21-gpio", 5, MX21_GPIO6_BASE_ADDR, SZ_256, MX21_INT_GPIO, 0); 90 mxc_register_gpio("imx21-gpio", 5, MX21_GPIO6_BASE_ADDR, SZ_256, MX21_INT_GPIO, 0);
91 91
92 pinctrl_provide_dummies(); 92 pinctrl_provide_dummies();
93 imx_add_imx_dma(MX21_DMA_BASE_ADDR, MX21_INT_DMACH0, 0); /* No ERR irq */ 93 imx_add_imx_dma("imx21-dma", MX21_DMA_BASE_ADDR,
94 MX21_INT_DMACH0, 0); /* No ERR irq */
94 platform_device_register_simple("imx21-audmux", 0, imx21_audmux_res, 95 platform_device_register_simple("imx21-audmux", 0, imx21_audmux_res,
95 ARRAY_SIZE(imx21_audmux_res)); 96 ARRAY_SIZE(imx21_audmux_res));
96} 97}
diff --git a/arch/arm/mach-imx/mm-imx27.c b/arch/arm/mach-imx/mm-imx27.c
index d389f4af33c0..91e8da832810 100644
--- a/arch/arm/mach-imx/mm-imx27.c
+++ b/arch/arm/mach-imx/mm-imx27.c
@@ -91,7 +91,8 @@ void __init imx27_soc_init(void)
91 mxc_register_gpio("imx21-gpio", 5, MX27_GPIO6_BASE_ADDR, SZ_256, MX27_INT_GPIO, 0); 91 mxc_register_gpio("imx21-gpio", 5, MX27_GPIO6_BASE_ADDR, SZ_256, MX27_INT_GPIO, 0);
92 92
93 pinctrl_provide_dummies(); 93 pinctrl_provide_dummies();
94 imx_add_imx_dma(MX27_DMA_BASE_ADDR, MX27_INT_DMACH0, 0); /* No ERR irq */ 94 imx_add_imx_dma("imx27-dma", MX27_DMA_BASE_ADDR,
95 MX27_INT_DMACH0, 0); /* No ERR irq */
95 /* imx27 has the imx21 type audmux */ 96 /* imx27 has the imx21 type audmux */
96 platform_device_register_simple("imx21-audmux", 0, imx27_audmux_res, 97 platform_device_register_simple("imx21-audmux", 0, imx27_audmux_res,
97 ARRAY_SIZE(imx27_audmux_res)); 98 ARRAY_SIZE(imx27_audmux_res));