summaryrefslogtreecommitdiff
path: root/arch/arm/mach-mx3/mach-mx31_3ds.c
diff options
context:
space:
mode:
authorAlberto Panizzo <maramaopercheseimorto@gmail.com>2010-03-23 21:49:35 +0300
committerSascha Hauer <s.hauer@pengutronix.de>2010-03-25 10:43:03 +0300
commita1b67b957ea3b9138ed8239796cb48d8b1bf66b0 (patch)
tree8c72347ea0f570bd6486adf745c6f2075cd16331 /arch/arm/mach-mx3/mach-mx31_3ds.c
parent11a332adfeacee2634f73ad21b55aad5cc7fd54a (diff)
downloadlinux-a1b67b957ea3b9138ed8239796cb48d8b1bf66b0.tar.xz
MXC: mach-mx31_3ds: Add support for on board NAND Flash.
Since the using of Bad Block Table is not constantly a good behave I had made it configurable. Signed-off-by: Alberto Panizzo <maramaopercheseimorto@gmail.com> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-mx3/mach-mx31_3ds.c')
-rw-r--r--arch/arm/mach-mx3/mach-mx31_3ds.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/arm/mach-mx3/mach-mx31_3ds.c b/arch/arm/mach-mx3/mach-mx31_3ds.c
index 4a94c3c49480..bf1f54a31c4f 100644
--- a/arch/arm/mach-mx3/mach-mx31_3ds.c
+++ b/arch/arm/mach-mx3/mach-mx31_3ds.c
@@ -34,6 +34,7 @@
#include <mach/board-mx31_3ds.h>
#include <mach/imx-uart.h>
#include <mach/iomux-mx3.h>
+#include <mach/mxc_nand.h>
#include "devices.h"
/*!
@@ -53,6 +54,17 @@ static int mx31_3ds_pins[] = {
IOMUX_MODE(MX31_PIN_GPIO1_1, IOMUX_CONFIG_GPIO),
};
+/*
+ * NAND Flash
+ */
+static struct mxc_nand_platform_data imx31_3ds_nand_flash_pdata = {
+ .width = 1,
+ .hw_ecc = 1,
+#ifdef MACH_MX31_3DS_MXC_NAND_USE_BBT
+ .flash_bbt = 1,
+#endif
+};
+
static struct imxuart_platform_data uart_pdata = {
.flags = IMXUART_HAVE_RTSCTS,
};
@@ -236,6 +248,7 @@ static void __init mxc_board_init(void)
"mx31_3ds");
mxc_register_device(&mxc_uart_device0, &uart_pdata);
+ mxc_register_device(&mxc_nand_device, &imx31_3ds_nand_flash_pdata);
if (!mx31_3ds_init_expio())
platform_device_register(&smsc911x_device);