Patchwork [1/3] imx51: add pata device

login
register
mail settings
Submitter Arnaud Patard (Rtp)
Date July 26, 2011, 2:54 p.m.
Message ID <20110726145515.490011169@rtp-net.org>
Download mbox | patch
Permalink /patch/106881/
State New
Headers show

Comments

Arnaud Patard (Rtp) - July 26, 2011, 2:54 p.m.
Declare the pata device found on mx51

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Uwe Kleine-K├Ânig - July 28, 2011, 2:42 p.m.
On Tue, Jul 26, 2011 at 04:54:25PM +0200, Arnaud Patard wrote:
> Declare the pata device found on mx51
> 
> Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
> 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-22 23:29:13.000000000 +0200
> +++ linux-2.6-submit/arch/arm/mach-mx5/devices-imx51.h	2011-07-24 20:35:30.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_pata_imx_data imx51_pata_imx_data;
> +#define imx51_add_pata_imx() \
> +	imx_add_pata_imx(&imx51_pata_imx_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-22 23:29:13.000000000 +0200
> +++ linux-2.6-submit/arch/arm/plat-mxc/devices/Kconfig	2011-07-24 20:35:30.000000000 +0200
> @@ -31,6 +31,9 @@ config IMX_HAVE_PLATFORM_IMX_I2C
>  config IMX_HAVE_PLATFORM_IMX_KEYPAD
>  	bool
>  
> +config IMX_HAVE_PLATFORM_PATA_IMX
> +	bool
> +
this breaks the alphabetic ordering in this file.
arch/arm/plat-mxc/devices/Makefile is affected, too.

Other than that I don't see any issues any more. Sascha, maybe you can
fix that up while committing (assuming nobody has more objections)?
Arnaud told me on irc that he is occupied and cannot follow up soon.

Best regards
Uwe

Patch

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-22 23:29:13.000000000 +0200
+++ linux-2.6-submit/arch/arm/mach-mx5/devices-imx51.h	2011-07-24 20:35:30.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_pata_imx_data imx51_pata_imx_data;
+#define imx51_add_pata_imx() \
+	imx_add_pata_imx(&imx51_pata_imx_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-22 23:29:13.000000000 +0200
+++ linux-2.6-submit/arch/arm/plat-mxc/devices/Kconfig	2011-07-24 20:35:30.000000000 +0200
@@ -31,6 +31,9 @@  config IMX_HAVE_PLATFORM_IMX_I2C
 config IMX_HAVE_PLATFORM_IMX_KEYPAD
 	bool
 
+config IMX_HAVE_PLATFORM_PATA_IMX
+	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-22 23:29:13.000000000 +0200
+++ linux-2.6-submit/arch/arm/plat-mxc/devices/Makefile	2011-07-24 20:35:30.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_PATA_IMX) += platform-pata_imx.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-pata_imx.c
===================================================================
--- /dev/null	1970-01-01 00:00:00.000000000 +0000
+++ linux-2.6-submit/arch/arm/plat-mxc/devices/platform-pata_imx.c	2011-07-22 23:30:58.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 <mach/hardware.h>
+#include <mach/devices-common.h>
+
+#define imx_pata_imx_data_entry_single(soc)				\
+	{								\
+		.iobase = soc ## _ATA_BASE_ADDR,			\
+		.irq = soc ## _MXC_INT_ATA,				\
+	}
+
+#ifdef CONFIG_SOC_IMX51
+const struct imx_pata_imx_data imx51_pata_imx_data __initconst =
+	imx_pata_imx_data_entry_single(MX51);
+#endif /* ifdef CONFIG_SOC_IMX51 */
+
+struct platform_device *__init imx_add_pata_imx(
+		const struct imx_pata_imx_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-22 23:29:13.000000000 +0200
+++ linux-2.6-submit/arch/arm/plat-mxc/include/mach/devices-common.h	2011-07-24 20:35:30.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_pata_imx_data {
+	resource_size_t iobase;
+	resource_size_t irq;
+};
+struct platform_device *__init imx_add_pata_imx(
+		const struct imx_pata_imx_data *data);
+
 struct imx_mxc_pwm_data {
 	int id;
 	resource_size_t iobase;