diff options
| -rw-r--r-- | arch/arm/mach-mx3/Kconfig | 9 | ||||
| -rw-r--r-- | arch/arm/mach-mx3/mach-mx31_3ds.c | 13 |
2 files changed, 22 insertions, 0 deletions
diff --git a/arch/arm/mach-mx3/Kconfig b/arch/arm/mach-mx3/Kconfig index 3872af1cf2c3..9a2911e004a3 100644 --- a/arch/arm/mach-mx3/Kconfig +++ b/arch/arm/mach-mx3/Kconfig | |||
| @@ -62,6 +62,15 @@ config MACH_MX31_3DS | |||
| 62 | Include support for MX31PDK (3DS) platform. This includes specific | 62 | Include support for MX31PDK (3DS) platform. This includes specific |
| 63 | configurations for the board and its peripherals. | 63 | configurations for the board and its peripherals. |
| 64 | 64 | ||
| 65 | config MACH_MX31_3DS_MXC_NAND_USE_BBT | ||
| 66 | bool "Make the MXC NAND driver use the in flash Bad Block Table" | ||
| 67 | depends on MACH_MX31_3DS | ||
| 68 | depends on MTD_NAND_MXC | ||
| 69 | help | ||
| 70 | Enable this if you want that the MXC NAND driver uses the in flash | ||
| 71 | Bad Block Table to know what blocks are bad instead of scanning the | ||
| 72 | entire flash looking for bad block markers. | ||
| 73 | |||
| 65 | config MACH_MX31MOBOARD | 74 | config MACH_MX31MOBOARD |
| 66 | bool "Support mx31moboard platforms (EPFL Mobots group)" | 75 | bool "Support mx31moboard platforms (EPFL Mobots group)" |
| 67 | select ARCH_MX31 | 76 | select ARCH_MX31 |
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 @@ | |||
| 34 | #include <mach/board-mx31_3ds.h> | 34 | #include <mach/board-mx31_3ds.h> |
| 35 | #include <mach/imx-uart.h> | 35 | #include <mach/imx-uart.h> |
| 36 | #include <mach/iomux-mx3.h> | 36 | #include <mach/iomux-mx3.h> |
| 37 | #include <mach/mxc_nand.h> | ||
| 37 | #include "devices.h" | 38 | #include "devices.h" |
| 38 | 39 | ||
| 39 | /*! | 40 | /*! |
| @@ -53,6 +54,17 @@ static int mx31_3ds_pins[] = { | |||
| 53 | IOMUX_MODE(MX31_PIN_GPIO1_1, IOMUX_CONFIG_GPIO), | 54 | IOMUX_MODE(MX31_PIN_GPIO1_1, IOMUX_CONFIG_GPIO), |
| 54 | }; | 55 | }; |
| 55 | 56 | ||
| 57 | /* | ||
| 58 | * NAND Flash | ||
| 59 | */ | ||
| 60 | static struct mxc_nand_platform_data imx31_3ds_nand_flash_pdata = { | ||
| 61 | .width = 1, | ||
| 62 | .hw_ecc = 1, | ||
| 63 | #ifdef MACH_MX31_3DS_MXC_NAND_USE_BBT | ||
| 64 | .flash_bbt = 1, | ||
| 65 | #endif | ||
| 66 | }; | ||
| 67 | |||
| 56 | static struct imxuart_platform_data uart_pdata = { | 68 | static struct imxuart_platform_data uart_pdata = { |
| 57 | .flags = IMXUART_HAVE_RTSCTS, | 69 | .flags = IMXUART_HAVE_RTSCTS, |
| 58 | }; | 70 | }; |
| @@ -236,6 +248,7 @@ static void __init mxc_board_init(void) | |||
| 236 | "mx31_3ds"); | 248 | "mx31_3ds"); |
| 237 | 249 | ||
| 238 | mxc_register_device(&mxc_uart_device0, &uart_pdata); | 250 | mxc_register_device(&mxc_uart_device0, &uart_pdata); |
| 251 | mxc_register_device(&mxc_nand_device, &imx31_3ds_nand_flash_pdata); | ||
| 239 | 252 | ||
| 240 | if (!mx31_3ds_init_expio()) | 253 | if (!mx31_3ds_init_expio()) |
| 241 | platform_device_register(&smsc911x_device); | 254 | platform_device_register(&smsc911x_device); |
