diff options
author | Fabio Estevam <fabio.estevam@freescale.com> | 2011-08-23 16:18:06 -0400 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2011-08-24 04:11:40 -0400 |
commit | 236c4e8be436380b5354fe0d7facf94688e024ec (patch) | |
tree | 532de8e79a67c35633a40d2cadc7d06df3e6e081 /arch/arm/plat-mxc/devices | |
parent | d8f4059bf96d9bc1b8d2003602404f3d011ac9f2 (diff) |
ARM: imx: Add PATA resources for other i.MX processors
MX27/31/35/53 also have PATA block.
Add PATA resources for them.
Signed-off-by: Fabio Estevam <fabio.estevam@freescale.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/plat-mxc/devices')
-rw-r--r-- | arch/arm/plat-mxc/devices/platform-pata_imx.c | 29 |
1 files changed, 25 insertions, 4 deletions
diff --git a/arch/arm/plat-mxc/devices/platform-pata_imx.c b/arch/arm/plat-mxc/devices/platform-pata_imx.c index c1cbaf92e359..de33048aad6a 100644 --- a/arch/arm/plat-mxc/devices/platform-pata_imx.c +++ b/arch/arm/plat-mxc/devices/platform-pata_imx.c | |||
@@ -6,24 +6,45 @@ | |||
6 | #include <mach/hardware.h> | 6 | #include <mach/hardware.h> |
7 | #include <mach/devices-common.h> | 7 | #include <mach/devices-common.h> |
8 | 8 | ||
9 | #define imx_pata_imx_data_entry_single(soc) \ | 9 | #define imx_pata_imx_data_entry_single(soc, _size) \ |
10 | { \ | 10 | { \ |
11 | .iobase = soc ## _ATA_BASE_ADDR, \ | 11 | .iobase = soc ## _ATA_BASE_ADDR, \ |
12 | .irq = soc ## _MXC_INT_ATA, \ | 12 | .iosize = _size, \ |
13 | .irq = soc ## _INT_ATA, \ | ||
13 | } | 14 | } |
14 | 15 | ||
16 | #ifdef CONFIG_SOC_IMX27 | ||
17 | const struct imx_pata_imx_data imx27_pata_imx_data __initconst = | ||
18 | imx_pata_imx_data_entry_single(MX27, SZ_4K); | ||
19 | #endif /* ifdef CONFIG_SOC_IMX27 */ | ||
20 | |||
21 | #ifdef CONFIG_SOC_IMX31 | ||
22 | const struct imx_pata_imx_data imx31_pata_imx_data __initconst = | ||
23 | imx_pata_imx_data_entry_single(MX31, SZ_16K); | ||
24 | #endif /* ifdef CONFIG_SOC_IMX31 */ | ||
25 | |||
26 | #ifdef CONFIG_SOC_IMX35 | ||
27 | const struct imx_pata_imx_data imx35_pata_imx_data __initconst = | ||
28 | imx_pata_imx_data_entry_single(MX35, SZ_16K); | ||
29 | #endif /* ifdef CONFIG_SOC_IMX35 */ | ||
30 | |||
15 | #ifdef CONFIG_SOC_IMX51 | 31 | #ifdef CONFIG_SOC_IMX51 |
16 | const struct imx_pata_imx_data imx51_pata_imx_data __initconst = | 32 | const struct imx_pata_imx_data imx51_pata_imx_data __initconst = |
17 | imx_pata_imx_data_entry_single(MX51); | 33 | imx_pata_imx_data_entry_single(MX51, SZ_16K); |
18 | #endif /* ifdef CONFIG_SOC_IMX51 */ | 34 | #endif /* ifdef CONFIG_SOC_IMX51 */ |
19 | 35 | ||
36 | #ifdef CONFIG_SOC_IMX53 | ||
37 | const struct imx_pata_imx_data imx53_pata_imx_data __initconst = | ||
38 | imx_pata_imx_data_entry_single(MX53, SZ_16K); | ||
39 | #endif /* ifdef CONFIG_SOC_IMX53 */ | ||
40 | |||
20 | struct platform_device *__init imx_add_pata_imx( | 41 | struct platform_device *__init imx_add_pata_imx( |
21 | const struct imx_pata_imx_data *data) | 42 | const struct imx_pata_imx_data *data) |
22 | { | 43 | { |
23 | struct resource res[] = { | 44 | struct resource res[] = { |
24 | { | 45 | { |
25 | .start = data->iobase, | 46 | .start = data->iobase, |
26 | .end = data->iobase + SZ_16K - 1, | 47 | .end = data->iobase + data->iobase - 1, |
27 | .flags = IORESOURCE_MEM, | 48 | .flags = IORESOURCE_MEM, |
28 | }, | 49 | }, |
29 | { | 50 | { |