Declare the pata device found on mx51 Signed-off-by: Arnaud Patard Index: linux-2.6-submit/arch/arm/mach-mx5/devices-imx51.h =================================================================== --- linux-2.6-submit.orig/arch/arm/mach-mx5/devices-imx51.h 2011-07-16 22:37:43.000000000 +0200 +++ linux-2.6-submit/arch/arm/mach-mx5/devices-imx51.h 2011-07-22 10:20:06.000000000 +0200 @@ -52,3 +52,7 @@ extern const struct imx_mxc_pwm_data imx extern const struct imx_imx_keypad_data imx51_imx_keypad_data; #define imx51_add_imx_keypad(pdata) \ imx_add_imx_keypad(&imx51_imx_keypad_data, pdata) + +extern const struct imx_mxc_pata_data im51_mxc_pata_data; +#define imx51_add_mxc_pata() \ + imx_add_mxc_pata(&im51_mxc_pata_data) Index: linux-2.6-submit/arch/arm/plat-mxc/devices/Kconfig =================================================================== --- linux-2.6-submit.orig/arch/arm/plat-mxc/devices/Kconfig 2011-07-16 22:37:42.000000000 +0200 +++ linux-2.6-submit/arch/arm/plat-mxc/devices/Kconfig 2011-07-22 10:20:05.000000000 +0200 @@ -31,6 +31,9 @@ config IMX_HAVE_PLATFORM_IMX_I2C config IMX_HAVE_PLATFORM_IMX_KEYPAD bool +config IMX_HAVE_PLATFORM_IMX_PATA + bool + config IMX_HAVE_PLATFORM_IMX_SSI bool Index: linux-2.6-submit/arch/arm/plat-mxc/devices/Makefile =================================================================== --- linux-2.6-submit.orig/arch/arm/plat-mxc/devices/Makefile 2011-07-16 22:37:42.000000000 +0200 +++ linux-2.6-submit/arch/arm/plat-mxc/devices/Makefile 2011-07-22 10:20:05.000000000 +0200 @@ -10,6 +10,7 @@ obj-y += platform-imx-dma.o obj-$(CONFIG_IMX_HAVE_PLATFORM_IMX_FB) += platform-imx-fb.o obj-$(CONFIG_IMX_HAVE_PLATFORM_IMX_I2C) += platform-imx-i2c.o obj-$(CONFIG_IMX_HAVE_PLATFORM_IMX_KEYPAD) += platform-imx-keypad.o +obj-$(CONFIG_IMX_HAVE_PLATFORM_IMX_PATA) += platform-imx-pata.o obj-$(CONFIG_IMX_HAVE_PLATFORM_IMX_SSI) += platform-imx-ssi.o obj-$(CONFIG_IMX_HAVE_PLATFORM_IMX_UART) += platform-imx-uart.o obj-$(CONFIG_IMX_HAVE_PLATFORM_IMX_UDC) += platform-imx_udc.o Index: linux-2.6-submit/arch/arm/plat-mxc/devices/platform-imx-pata.c =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ linux-2.6-submit/arch/arm/plat-mxc/devices/platform-imx-pata.c 2011-07-20 22:48:53.000000000 +0200 @@ -0,0 +1,38 @@ +/* + * This program is free software; you can redistribute it and/or modify it under + * the terms of the GNU General Public License version 2 as published by the + * Free Software Foundation. + */ +#include +#include + +#define imx_mxc_pata_data_entry_single(soc) \ + { \ + .iobase = soc ## _ATA_BASE_ADDR, \ + .irq = soc ## _MXC_INT_ATA, \ + } + +#ifdef CONFIG_SOC_IMX51 +const struct imx_mxc_pata_data im51_mxc_pata_data __initconst = + imx_mxc_pata_data_entry_single(MX51); +#endif /* ifdef CONFIG_SOC_IMX51 */ + +struct platform_device *__init imx_add_mxc_pata( + const struct imx_mxc_pata_data *data) +{ + struct resource res[] = { + { + .start = data->iobase, + .end = data->iobase + SZ_16K - 1, + .flags = IORESOURCE_MEM, + }, + { + .start = data->irq, + .end = data->irq, + .flags = IORESOURCE_IRQ, + }, + }; + return imx_add_platform_device("pata_imx", -1, + res, ARRAY_SIZE(res), NULL, 0); +} + Index: linux-2.6-submit/arch/arm/plat-mxc/include/mach/devices-common.h =================================================================== --- linux-2.6-submit.orig/arch/arm/plat-mxc/include/mach/devices-common.h 2011-07-16 22:37:43.000000000 +0200 +++ linux-2.6-submit/arch/arm/plat-mxc/include/mach/devices-common.h 2011-07-22 10:20:06.000000000 +0200 @@ -250,6 +250,13 @@ struct platform_device *__init imx_add_m const struct imx_mxc_nand_data *data, const struct mxc_nand_platform_data *pdata); +struct imx_mxc_pata_data { + resource_size_t iobase; + resource_size_t irq; +}; +struct platform_device *__init imx_add_mxc_pata( + const struct imx_mxc_pata_data *data); + struct imx_mxc_pwm_data { int id; resource_size_t iobase;