diff options
author | Shawn Guo <shawn.guo@linaro.org> | 2012-09-15 01:34:09 -0400 |
---|---|---|
committer | Shawn Guo <shawn.guo@linaro.org> | 2012-10-14 22:03:15 -0400 |
commit | 4d62435f0601ecec379fdc48749a10353fee8217 (patch) | |
tree | ae6b8397b554700283b86150dd852763d39bbe5d /arch | |
parent | 5bdfba29f18f0a36df8e28328315213ea47eb529 (diff) |
mtd: mxc_nand: 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>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Cc: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Cc: linux-mtd@lists.infradead.org
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-imx/clk-imx21.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-imx/clk-imx25.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-imx/clk-imx27.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-imx/clk-imx31.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-imx/clk-imx35.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-imx/clk-imx51-imx53.c | 2 | ||||
-rw-r--r-- | arch/arm/mach-imx/devices/devices-common.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-imx/devices/platform-mxc_nand.c | 20 | ||||
-rw-r--r-- | arch/arm/mach-imx/imx27-dt.c | 2 |
9 files changed, 19 insertions, 16 deletions
diff --git a/arch/arm/mach-imx/clk-imx21.c b/arch/arm/mach-imx/clk-imx21.c index 09fc31c58474..96a4788032d1 100644 --- a/arch/arm/mach-imx/clk-imx21.c +++ b/arch/arm/mach-imx/clk-imx21.c | |||
@@ -162,7 +162,7 @@ int __init mx21_clocks_init(unsigned long lref, unsigned long href) | |||
162 | clk_register_clkdev(clk[lcdc_hclk_gate], "ahb", "imx-fb.0"); | 162 | clk_register_clkdev(clk[lcdc_hclk_gate], "ahb", "imx-fb.0"); |
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, "mxc_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", "imx-dma"); |
167 | clk_register_clkdev(clk[dma_gate], "ipg", "imx-dma"); | 167 | clk_register_clkdev(clk[dma_gate], "ipg", "imx-dma"); |
168 | clk_register_clkdev(clk[wdog_gate], NULL, "imx2-wdt.0"); | 168 | clk_register_clkdev(clk[wdog_gate], NULL, "imx2-wdt.0"); |
diff --git a/arch/arm/mach-imx/clk-imx25.c b/arch/arm/mach-imx/clk-imx25.c index f1d75e72e002..f0f82f204de7 100644 --- a/arch/arm/mach-imx/clk-imx25.c +++ b/arch/arm/mach-imx/clk-imx25.c | |||
@@ -198,7 +198,7 @@ int __init mx25_clocks_init(void) | |||
198 | clk_register_clkdev(clk[ipg], "ipg", "fsl-usb2-udc"); | 198 | clk_register_clkdev(clk[ipg], "ipg", "fsl-usb2-udc"); |
199 | clk_register_clkdev(clk[usbotg_ahb], "ahb", "fsl-usb2-udc"); | 199 | clk_register_clkdev(clk[usbotg_ahb], "ahb", "fsl-usb2-udc"); |
200 | clk_register_clkdev(clk[usb_div], "per", "fsl-usb2-udc"); | 200 | clk_register_clkdev(clk[usb_div], "per", "fsl-usb2-udc"); |
201 | clk_register_clkdev(clk[nfc_ipg_per], NULL, "mxc_nand.0"); | 201 | clk_register_clkdev(clk[nfc_ipg_per], NULL, "imx25-nand.0"); |
202 | /* i.mx25 has the i.mx35 type cspi */ | 202 | /* i.mx25 has the i.mx35 type cspi */ |
203 | clk_register_clkdev(clk[cspi1_ipg], NULL, "imx35-cspi.0"); | 203 | clk_register_clkdev(clk[cspi1_ipg], NULL, "imx35-cspi.0"); |
204 | clk_register_clkdev(clk[cspi2_ipg], NULL, "imx35-cspi.1"); | 204 | clk_register_clkdev(clk[cspi2_ipg], NULL, "imx35-cspi.1"); |
diff --git a/arch/arm/mach-imx/clk-imx27.c b/arch/arm/mach-imx/clk-imx27.c index c2f111f42ddb..100e38c48f9f 100644 --- a/arch/arm/mach-imx/clk-imx27.c +++ b/arch/arm/mach-imx/clk-imx27.c | |||
@@ -239,7 +239,7 @@ int __init mx27_clocks_init(unsigned long fref) | |||
239 | clk_register_clkdev(clk[usb_ahb_gate], "ahb", "mxc-ehci.2"); | 239 | clk_register_clkdev(clk[usb_ahb_gate], "ahb", "mxc-ehci.2"); |
240 | clk_register_clkdev(clk[ssi1_ipg_gate], NULL, "imx-ssi.0"); | 240 | clk_register_clkdev(clk[ssi1_ipg_gate], NULL, "imx-ssi.0"); |
241 | clk_register_clkdev(clk[ssi2_ipg_gate], NULL, "imx-ssi.1"); | 241 | clk_register_clkdev(clk[ssi2_ipg_gate], NULL, "imx-ssi.1"); |
242 | clk_register_clkdev(clk[nfc_baud_gate], NULL, "mxc_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", "imx-dma"); |
diff --git a/arch/arm/mach-imx/clk-imx31.c b/arch/arm/mach-imx/clk-imx31.c index 76e6462cf9ae..729d1a9dbf6a 100644 --- a/arch/arm/mach-imx/clk-imx31.c +++ b/arch/arm/mach-imx/clk-imx31.c | |||
@@ -127,7 +127,7 @@ int __init mx31_clocks_init(unsigned long fref) | |||
127 | clk_register_clkdev(clk[rtc_gate], NULL, "mxc_rtc"); | 127 | clk_register_clkdev(clk[rtc_gate], NULL, "mxc_rtc"); |
128 | clk_register_clkdev(clk[epit1_gate], "epit", NULL); | 128 | clk_register_clkdev(clk[epit1_gate], "epit", NULL); |
129 | clk_register_clkdev(clk[epit2_gate], "epit", NULL); | 129 | clk_register_clkdev(clk[epit2_gate], "epit", NULL); |
130 | clk_register_clkdev(clk[nfc], NULL, "mxc_nand.0"); | 130 | clk_register_clkdev(clk[nfc], NULL, "imx27-nand.0"); |
131 | clk_register_clkdev(clk[ipu_gate], NULL, "ipu-core"); | 131 | clk_register_clkdev(clk[ipu_gate], NULL, "ipu-core"); |
132 | clk_register_clkdev(clk[ipu_gate], NULL, "mx3_sdc_fb"); | 132 | clk_register_clkdev(clk[ipu_gate], NULL, "mx3_sdc_fb"); |
133 | clk_register_clkdev(clk[kpp_gate], NULL, "imx-keypad"); | 133 | clk_register_clkdev(clk[kpp_gate], NULL, "imx-keypad"); |
diff --git a/arch/arm/mach-imx/clk-imx35.c b/arch/arm/mach-imx/clk-imx35.c index ee2581254fbc..fec48e656efa 100644 --- a/arch/arm/mach-imx/clk-imx35.c +++ b/arch/arm/mach-imx/clk-imx35.c | |||
@@ -256,7 +256,7 @@ int __init mx35_clocks_init() | |||
256 | clk_register_clkdev(clk[ipg], "ipg", "fsl-usb2-udc"); | 256 | clk_register_clkdev(clk[ipg], "ipg", "fsl-usb2-udc"); |
257 | clk_register_clkdev(clk[usbotg_gate], "ahb", "fsl-usb2-udc"); | 257 | clk_register_clkdev(clk[usbotg_gate], "ahb", "fsl-usb2-udc"); |
258 | clk_register_clkdev(clk[wdog_gate], NULL, "imx2-wdt.0"); | 258 | clk_register_clkdev(clk[wdog_gate], NULL, "imx2-wdt.0"); |
259 | clk_register_clkdev(clk[nfc_div], NULL, "mxc_nand.0"); | 259 | clk_register_clkdev(clk[nfc_div], NULL, "imx25-nand.0"); |
260 | clk_register_clkdev(clk[csi_gate], NULL, "mx3-camera.0"); | 260 | clk_register_clkdev(clk[csi_gate], NULL, "mx3-camera.0"); |
261 | 261 | ||
262 | clk_prepare_enable(clk[spba_gate]); | 262 | clk_prepare_enable(clk[spba_gate]); |
diff --git a/arch/arm/mach-imx/clk-imx51-imx53.c b/arch/arm/mach-imx/clk-imx51-imx53.c index 2449d8ff4a18..4836b4d39a07 100644 --- a/arch/arm/mach-imx/clk-imx51-imx53.c +++ b/arch/arm/mach-imx/clk-imx51-imx53.c | |||
@@ -272,7 +272,7 @@ static void __init mx5_clocks_common_init(unsigned long rate_ckil, | |||
272 | clk_register_clkdev(clk[usboh3_per_gate], "per", "fsl-usb2-udc"); | 272 | clk_register_clkdev(clk[usboh3_per_gate], "per", "fsl-usb2-udc"); |
273 | clk_register_clkdev(clk[usboh3_gate], "ipg", "fsl-usb2-udc"); | 273 | clk_register_clkdev(clk[usboh3_gate], "ipg", "fsl-usb2-udc"); |
274 | clk_register_clkdev(clk[usboh3_gate], "ahb", "fsl-usb2-udc"); | 274 | clk_register_clkdev(clk[usboh3_gate], "ahb", "fsl-usb2-udc"); |
275 | clk_register_clkdev(clk[nfc_gate], NULL, "mxc_nand"); | 275 | clk_register_clkdev(clk[nfc_gate], NULL, "imx51-nand"); |
276 | clk_register_clkdev(clk[ssi1_ipg_gate], NULL, "imx-ssi.0"); | 276 | clk_register_clkdev(clk[ssi1_ipg_gate], NULL, "imx-ssi.0"); |
277 | clk_register_clkdev(clk[ssi2_ipg_gate], NULL, "imx-ssi.1"); | 277 | clk_register_clkdev(clk[ssi2_ipg_gate], NULL, "imx-ssi.1"); |
278 | clk_register_clkdev(clk[ssi3_ipg_gate], NULL, "imx-ssi.2"); | 278 | clk_register_clkdev(clk[ssi3_ipg_gate], NULL, "imx-ssi.2"); |
diff --git a/arch/arm/mach-imx/devices/devices-common.h b/arch/arm/mach-imx/devices/devices-common.h index 86bf34cd4865..30a842ffc553 100644 --- a/arch/arm/mach-imx/devices/devices-common.h +++ b/arch/arm/mach-imx/devices/devices-common.h | |||
@@ -257,6 +257,7 @@ struct platform_device *__init imx_add_mxc_mmc( | |||
257 | 257 | ||
258 | #include <linux/platform_data/mtd-mxc_nand.h> | 258 | #include <linux/platform_data/mtd-mxc_nand.h> |
259 | struct imx_mxc_nand_data { | 259 | struct imx_mxc_nand_data { |
260 | const char *devid; | ||
260 | /* | 261 | /* |
261 | * id is traditionally 0, but -1 is more appropriate. We use -1 for new | 262 | * id is traditionally 0, but -1 is more appropriate. We use -1 for new |
262 | * machines but don't change existing devices as the nand device usually | 263 | * machines but don't change existing devices as the nand device usually |
diff --git a/arch/arm/mach-imx/devices/platform-mxc_nand.c b/arch/arm/mach-imx/devices/platform-mxc_nand.c index 54b1d02cc27b..24aaad1a58c9 100644 --- a/arch/arm/mach-imx/devices/platform-mxc_nand.c +++ b/arch/arm/mach-imx/devices/platform-mxc_nand.c | |||
@@ -10,15 +10,17 @@ | |||
10 | #include <mach/hardware.h> | 10 | #include <mach/hardware.h> |
11 | #include "devices-common.h" | 11 | #include "devices-common.h" |
12 | 12 | ||
13 | #define imx_mxc_nand_data_entry_single(soc, _size) \ | 13 | #define imx_mxc_nand_data_entry_single(soc, _devid, _size) \ |
14 | { \ | 14 | { \ |
15 | .devid = _devid, \ | ||
15 | .iobase = soc ## _NFC_BASE_ADDR, \ | 16 | .iobase = soc ## _NFC_BASE_ADDR, \ |
16 | .iosize = _size, \ | 17 | .iosize = _size, \ |
17 | .irq = soc ## _INT_NFC \ | 18 | .irq = soc ## _INT_NFC \ |
18 | } | 19 | } |
19 | 20 | ||
20 | #define imx_mxc_nandv3_data_entry_single(soc, _size) \ | 21 | #define imx_mxc_nandv3_data_entry_single(soc, _devid, _size) \ |
21 | { \ | 22 | { \ |
23 | .devid = _devid, \ | ||
22 | .id = -1, \ | 24 | .id = -1, \ |
23 | .iobase = soc ## _NFC_BASE_ADDR, \ | 25 | .iobase = soc ## _NFC_BASE_ADDR, \ |
24 | .iosize = _size, \ | 26 | .iosize = _size, \ |
@@ -28,32 +30,32 @@ | |||
28 | 30 | ||
29 | #ifdef CONFIG_SOC_IMX21 | 31 | #ifdef CONFIG_SOC_IMX21 |
30 | const struct imx_mxc_nand_data imx21_mxc_nand_data __initconst = | 32 | const struct imx_mxc_nand_data imx21_mxc_nand_data __initconst = |
31 | imx_mxc_nand_data_entry_single(MX21, SZ_4K); | 33 | imx_mxc_nand_data_entry_single(MX21, "imx21-nand", SZ_4K); |
32 | #endif /* ifdef CONFIG_SOC_IMX21 */ | 34 | #endif /* ifdef CONFIG_SOC_IMX21 */ |
33 | 35 | ||
34 | #ifdef CONFIG_SOC_IMX25 | 36 | #ifdef CONFIG_SOC_IMX25 |
35 | const struct imx_mxc_nand_data imx25_mxc_nand_data __initconst = | 37 | const struct imx_mxc_nand_data imx25_mxc_nand_data __initconst = |
36 | imx_mxc_nand_data_entry_single(MX25, SZ_8K); | 38 | imx_mxc_nand_data_entry_single(MX25, "imx25-nand", SZ_8K); |
37 | #endif /* ifdef CONFIG_SOC_IMX25 */ | 39 | #endif /* ifdef CONFIG_SOC_IMX25 */ |
38 | 40 | ||
39 | #ifdef CONFIG_SOC_IMX27 | 41 | #ifdef CONFIG_SOC_IMX27 |
40 | const struct imx_mxc_nand_data imx27_mxc_nand_data __initconst = | 42 | const struct imx_mxc_nand_data imx27_mxc_nand_data __initconst = |
41 | imx_mxc_nand_data_entry_single(MX27, SZ_4K); | 43 | imx_mxc_nand_data_entry_single(MX27, "imx27-nand", SZ_4K); |
42 | #endif /* ifdef CONFIG_SOC_IMX27 */ | 44 | #endif /* ifdef CONFIG_SOC_IMX27 */ |
43 | 45 | ||
44 | #ifdef CONFIG_SOC_IMX31 | 46 | #ifdef CONFIG_SOC_IMX31 |
45 | const struct imx_mxc_nand_data imx31_mxc_nand_data __initconst = | 47 | const struct imx_mxc_nand_data imx31_mxc_nand_data __initconst = |
46 | imx_mxc_nand_data_entry_single(MX31, SZ_4K); | 48 | imx_mxc_nand_data_entry_single(MX31, "imx27-nand", SZ_4K); |
47 | #endif | 49 | #endif |
48 | 50 | ||
49 | #ifdef CONFIG_SOC_IMX35 | 51 | #ifdef CONFIG_SOC_IMX35 |
50 | const struct imx_mxc_nand_data imx35_mxc_nand_data __initconst = | 52 | const struct imx_mxc_nand_data imx35_mxc_nand_data __initconst = |
51 | imx_mxc_nand_data_entry_single(MX35, SZ_8K); | 53 | imx_mxc_nand_data_entry_single(MX35, "imx25-nand", SZ_8K); |
52 | #endif | 54 | #endif |
53 | 55 | ||
54 | #ifdef CONFIG_SOC_IMX51 | 56 | #ifdef CONFIG_SOC_IMX51 |
55 | const struct imx_mxc_nand_data imx51_mxc_nand_data __initconst = | 57 | const struct imx_mxc_nand_data imx51_mxc_nand_data __initconst = |
56 | imx_mxc_nandv3_data_entry_single(MX51, SZ_16K); | 58 | imx_mxc_nandv3_data_entry_single(MX51, "imx51-nand", SZ_16K); |
57 | #endif | 59 | #endif |
58 | 60 | ||
59 | struct platform_device *__init imx_add_mxc_nand( | 61 | struct platform_device *__init imx_add_mxc_nand( |
@@ -76,7 +78,7 @@ struct platform_device *__init imx_add_mxc_nand( | |||
76 | .flags = IORESOURCE_MEM, | 78 | .flags = IORESOURCE_MEM, |
77 | }, | 79 | }, |
78 | }; | 80 | }; |
79 | return imx_add_platform_device("mxc_nand", data->id, | 81 | return imx_add_platform_device(data->devid, data->id, |
80 | res, ARRAY_SIZE(res) - !data->axibase, | 82 | res, ARRAY_SIZE(res) - !data->axibase, |
81 | pdata, sizeof(*pdata)); | 83 | pdata, sizeof(*pdata)); |
82 | } | 84 | } |
diff --git a/arch/arm/mach-imx/imx27-dt.c b/arch/arm/mach-imx/imx27-dt.c index 43fbf8640109..a6c288e180ce 100644 --- a/arch/arm/mach-imx/imx27-dt.c +++ b/arch/arm/mach-imx/imx27-dt.c | |||
@@ -29,7 +29,7 @@ static const struct of_dev_auxdata imx27_auxdata_lookup[] __initconst = { | |||
29 | OF_DEV_AUXDATA("fsl,imx27-cspi", MX27_CSPI2_BASE_ADDR, "imx27-cspi.1", NULL), | 29 | OF_DEV_AUXDATA("fsl,imx27-cspi", MX27_CSPI2_BASE_ADDR, "imx27-cspi.1", NULL), |
30 | OF_DEV_AUXDATA("fsl,imx27-cspi", MX27_CSPI3_BASE_ADDR, "imx27-cspi.2", NULL), | 30 | OF_DEV_AUXDATA("fsl,imx27-cspi", MX27_CSPI3_BASE_ADDR, "imx27-cspi.2", NULL), |
31 | OF_DEV_AUXDATA("fsl,imx27-wdt", MX27_WDOG_BASE_ADDR, "imx2-wdt.0", NULL), | 31 | OF_DEV_AUXDATA("fsl,imx27-wdt", MX27_WDOG_BASE_ADDR, "imx2-wdt.0", NULL), |
32 | OF_DEV_AUXDATA("fsl,imx27-nand", MX27_NFC_BASE_ADDR, "mxc_nand.0", NULL), | 32 | OF_DEV_AUXDATA("fsl,imx27-nand", MX27_NFC_BASE_ADDR, "imx27-nand.0", NULL), |
33 | { /* sentinel */ } | 33 | { /* sentinel */ } |
34 | }; | 34 | }; |
35 | 35 | ||