at91: remove MTD_NAND_ATMEL_BUSWIDTH_16 option

no board configure it as 'n' and it's an issue to merge all defconfigs
in one

On AT91SAM926x boards both types of NAND flash can be present
(8 and 16 bit data bus width).

so will pass it via system_rev
Signed-off-by: default avatarJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Acked-by: default avatarNicolas Ferre <nicolas.ferre@atmel.com>
Cc: Patrice Vilchez <patrice.vilchez@atmel.com>
parent 4a7df24d
...@@ -3,9 +3,6 @@ if ARCH_AT91 ...@@ -3,9 +3,6 @@ if ARCH_AT91
config HAVE_AT91_DATAFLASH_CARD config HAVE_AT91_DATAFLASH_CARD
bool bool
config HAVE_NAND_ATMEL_BUSWIDTH_16
bool
config HAVE_AT91_USART3 config HAVE_AT91_USART3
bool bool
...@@ -209,7 +206,6 @@ comment "AT91SAM9260 / AT91SAM9XE Board Type" ...@@ -209,7 +206,6 @@ comment "AT91SAM9260 / AT91SAM9XE Board Type"
config MACH_AT91SAM9260EK config MACH_AT91SAM9260EK
bool "Atmel AT91SAM9260-EK / AT91SAM9XE Evaluation Kit" bool "Atmel AT91SAM9260-EK / AT91SAM9XE Evaluation Kit"
select HAVE_AT91_DATAFLASH_CARD select HAVE_AT91_DATAFLASH_CARD
select HAVE_NAND_ATMEL_BUSWIDTH_16
help help
Select this if you are using Atmel's AT91SAM9260-EK or AT91SAM9XE Evaluation Kit Select this if you are using Atmel's AT91SAM9260-EK or AT91SAM9XE Evaluation Kit
<http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3933> <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3933>
...@@ -270,7 +266,6 @@ comment "AT91SAM9261 Board Type" ...@@ -270,7 +266,6 @@ comment "AT91SAM9261 Board Type"
config MACH_AT91SAM9261EK config MACH_AT91SAM9261EK
bool "Atmel AT91SAM9261-EK Evaluation Kit" bool "Atmel AT91SAM9261-EK Evaluation Kit"
select HAVE_AT91_DATAFLASH_CARD select HAVE_AT91_DATAFLASH_CARD
select HAVE_NAND_ATMEL_BUSWIDTH_16
help help
Select this if you are using Atmel's AT91SAM9261-EK Evaluation Kit. Select this if you are using Atmel's AT91SAM9261-EK Evaluation Kit.
<http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3820> <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3820>
...@@ -286,7 +281,6 @@ comment "AT91SAM9G10 Board Type" ...@@ -286,7 +281,6 @@ comment "AT91SAM9G10 Board Type"
config MACH_AT91SAM9G10EK config MACH_AT91SAM9G10EK
bool "Atmel AT91SAM9G10-EK Evaluation Kit" bool "Atmel AT91SAM9G10-EK Evaluation Kit"
select HAVE_AT91_DATAFLASH_CARD select HAVE_AT91_DATAFLASH_CARD
select HAVE_NAND_ATMEL_BUSWIDTH_16
help help
Select this if you are using Atmel's AT91SAM9G10-EK Evaluation Kit. Select this if you are using Atmel's AT91SAM9G10-EK Evaluation Kit.
<http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4588> <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4588>
...@@ -302,7 +296,6 @@ comment "AT91SAM9263 Board Type" ...@@ -302,7 +296,6 @@ comment "AT91SAM9263 Board Type"
config MACH_AT91SAM9263EK config MACH_AT91SAM9263EK
bool "Atmel AT91SAM9263-EK Evaluation Kit" bool "Atmel AT91SAM9263-EK Evaluation Kit"
select HAVE_AT91_DATAFLASH_CARD select HAVE_AT91_DATAFLASH_CARD
select HAVE_NAND_ATMEL_BUSWIDTH_16
help help
Select this if you are using Atmel's AT91SAM9263-EK Evaluation Kit. Select this if you are using Atmel's AT91SAM9263-EK Evaluation Kit.
<http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4057> <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4057>
...@@ -343,7 +336,6 @@ comment "AT91SAM9G20 Board Type" ...@@ -343,7 +336,6 @@ comment "AT91SAM9G20 Board Type"
config MACH_AT91SAM9G20EK config MACH_AT91SAM9G20EK
bool "Atmel AT91SAM9G20-EK Evaluation Kit" bool "Atmel AT91SAM9G20-EK Evaluation Kit"
select HAVE_AT91_DATAFLASH_CARD select HAVE_AT91_DATAFLASH_CARD
select HAVE_NAND_ATMEL_BUSWIDTH_16
help help
Select this if you are using Atmel's AT91SAM9G20-EK Evaluation Kit Select this if you are using Atmel's AT91SAM9G20-EK Evaluation Kit
that embeds only one SD/MMC slot. that embeds only one SD/MMC slot.
...@@ -351,7 +343,6 @@ config MACH_AT91SAM9G20EK ...@@ -351,7 +343,6 @@ config MACH_AT91SAM9G20EK
config MACH_AT91SAM9G20EK_2MMC config MACH_AT91SAM9G20EK_2MMC
depends on MACH_AT91SAM9G20EK depends on MACH_AT91SAM9G20EK
bool "Atmel AT91SAM9G20-EK Evaluation Kit with 2 SD/MMC Slots" bool "Atmel AT91SAM9G20-EK Evaluation Kit with 2 SD/MMC Slots"
select HAVE_NAND_ATMEL_BUSWIDTH_16
help help
Select this if you are using an Atmel AT91SAM9G20-EK Evaluation Kit Select this if you are using an Atmel AT91SAM9G20-EK Evaluation Kit
with 2 SD/MMC Slots. This is the case for AT91SAM9G20-EK rev. C and with 2 SD/MMC Slots. This is the case for AT91SAM9G20-EK rev. C and
...@@ -416,7 +407,6 @@ comment "AT91SAM9G45 Board Type" ...@@ -416,7 +407,6 @@ comment "AT91SAM9G45 Board Type"
config MACH_AT91SAM9M10G45EK config MACH_AT91SAM9M10G45EK
bool "Atmel AT91SAM9M10G45-EK Evaluation Kits" bool "Atmel AT91SAM9M10G45-EK Evaluation Kits"
select HAVE_NAND_ATMEL_BUSWIDTH_16
help help
Select this if you are using Atmel's AT91SAM9G45-EKES Evaluation Kit. Select this if you are using Atmel's AT91SAM9G45-EKES Evaluation Kit.
"ES" at the end of the name means that this board is an "ES" at the end of the name means that this board is an
...@@ -433,7 +423,6 @@ comment "AT91CAP9 Board Type" ...@@ -433,7 +423,6 @@ comment "AT91CAP9 Board Type"
config MACH_AT91CAP9ADK config MACH_AT91CAP9ADK
bool "Atmel AT91CAP9A-DK Evaluation Kit" bool "Atmel AT91CAP9A-DK Evaluation Kit"
select HAVE_AT91_DATAFLASH_CARD select HAVE_AT91_DATAFLASH_CARD
select HAVE_NAND_ATMEL_BUSWIDTH_16
help help
Select this if you are using Atmel's AT91CAP9A-DK Evaluation Kit. Select this if you are using Atmel's AT91CAP9A-DK Evaluation Kit.
<http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4138> <http://www.atmel.com/dyn/products/tools_card.asp?tool_id=4138>
...@@ -450,7 +439,6 @@ config MACH_AT572D940HFEB ...@@ -450,7 +439,6 @@ config MACH_AT572D940HFEB
bool "AT572D940HF-EK" bool "AT572D940HF-EK"
depends on ARCH_AT572D940HF depends on ARCH_AT572D940HF
select HAVE_AT91_DATAFLASH_CARD select HAVE_AT91_DATAFLASH_CARD
select HAVE_NAND_ATMEL_BUSWIDTH_16
help help
Select this if you are using Atmel's AT572D940HF-EK evaluation kit. Select this if you are using Atmel's AT572D940HF-EK evaluation kit.
<http://www.atmel.com/products/diopsis/default.asp> <http://www.atmel.com/products/diopsis/default.asp>
...@@ -483,13 +471,6 @@ config MTD_AT91_DATAFLASH_CARD ...@@ -483,13 +471,6 @@ config MTD_AT91_DATAFLASH_CARD
help help
Enable support for the DataFlash card. Enable support for the DataFlash card.
config MTD_NAND_ATMEL_BUSWIDTH_16
bool "Enable 16-bit data bus interface to NAND flash"
depends on HAVE_NAND_ATMEL_BUSWIDTH_16
help
On AT91SAM926x boards both types of NAND flash can be present
(8 and 16 bit data bus width).
# ---------------------------------------------------------- # ----------------------------------------------------------
comment "AT91 Feature Selections" comment "AT91 Feature Selections"
......
...@@ -41,6 +41,7 @@ ...@@ -41,6 +41,7 @@
#include <mach/board.h> #include <mach/board.h>
#include <mach/gpio.h> #include <mach/gpio.h>
#include <mach/at91sam9_smc.h> #include <mach/at91sam9_smc.h>
#include <mach/system_rev.h>
#include "sam9_smc.h" #include "sam9_smc.h"
#include "generic.h" #include "generic.h"
...@@ -216,11 +217,6 @@ static struct atmel_nand_data __initdata eb_nand_data = { ...@@ -216,11 +217,6 @@ static struct atmel_nand_data __initdata eb_nand_data = {
/* .rdy_pin = AT91_PIN_PC16, */ /* .rdy_pin = AT91_PIN_PC16, */
.enable_pin = AT91_PIN_PA15, .enable_pin = AT91_PIN_PA15,
.partition_info = nand_partitions, .partition_info = nand_partitions,
#if defined(CONFIG_MTD_NAND_ATMEL_BUSWIDTH_16)
.bus_width_16 = 1,
#else
.bus_width_16 = 0,
#endif
}; };
static struct sam9_smc_config __initdata eb_nand_smc_config = { static struct sam9_smc_config __initdata eb_nand_smc_config = {
...@@ -243,6 +239,7 @@ static struct sam9_smc_config __initdata eb_nand_smc_config = { ...@@ -243,6 +239,7 @@ static struct sam9_smc_config __initdata eb_nand_smc_config = {
static void __init eb_add_device_nand(void) static void __init eb_add_device_nand(void)
{ {
ek_nand_data.bus_width_16 = !board_have_nand_8bit();
/* setup bus-width (8 or 16) */ /* setup bus-width (8 or 16) */
if (eb_nand_data.bus_width_16) if (eb_nand_data.bus_width_16)
eb_nand_smc_config.mode |= AT91_SMC_DBW_16; eb_nand_smc_config.mode |= AT91_SMC_DBW_16;
......
...@@ -44,6 +44,7 @@ ...@@ -44,6 +44,7 @@
#include <mach/gpio.h> #include <mach/gpio.h>
#include <mach/at91cap9_matrix.h> #include <mach/at91cap9_matrix.h>
#include <mach/at91sam9_smc.h> #include <mach/at91sam9_smc.h>
#include <mach/system_rev.h>
#include "sam9_smc.h" #include "sam9_smc.h"
#include "generic.h" #include "generic.h"
...@@ -187,11 +188,6 @@ static struct atmel_nand_data __initdata cap9adk_nand_data = { ...@@ -187,11 +188,6 @@ static struct atmel_nand_data __initdata cap9adk_nand_data = {
// .rdy_pin = ... not connected // .rdy_pin = ... not connected
.enable_pin = AT91_PIN_PD15, .enable_pin = AT91_PIN_PD15,
.partition_info = nand_partitions, .partition_info = nand_partitions,
#if defined(CONFIG_MTD_NAND_ATMEL_BUSWIDTH_16)
.bus_width_16 = 1,
#else
.bus_width_16 = 0,
#endif
}; };
static struct sam9_smc_config __initdata cap9adk_nand_smc_config = { static struct sam9_smc_config __initdata cap9adk_nand_smc_config = {
...@@ -219,6 +215,7 @@ static void __init cap9adk_add_device_nand(void) ...@@ -219,6 +215,7 @@ static void __init cap9adk_add_device_nand(void)
csa = at91_sys_read(AT91_MATRIX_EBICSA); csa = at91_sys_read(AT91_MATRIX_EBICSA);
at91_sys_write(AT91_MATRIX_EBICSA, csa | AT91_MATRIX_EBI_VDDIOMSEL_3_3V); at91_sys_write(AT91_MATRIX_EBICSA, csa | AT91_MATRIX_EBI_VDDIOMSEL_3_3V);
cap9adk_nand_data.bus_width_16 = !board_have_nand_8bit();
/* setup bus-width (8 or 16) */ /* setup bus-width (8 or 16) */
if (cap9adk_nand_data.bus_width_16) if (cap9adk_nand_data.bus_width_16)
cap9adk_nand_smc_config.mode |= AT91_SMC_DBW_16; cap9adk_nand_smc_config.mode |= AT91_SMC_DBW_16;
......
...@@ -44,6 +44,7 @@ ...@@ -44,6 +44,7 @@
#include <mach/gpio.h> #include <mach/gpio.h>
#include <mach/at91sam9_smc.h> #include <mach/at91sam9_smc.h>
#include <mach/at91_shdwc.h> #include <mach/at91_shdwc.h>
#include <mach/system_rev.h>
#include "sam9_smc.h" #include "sam9_smc.h"
#include "generic.h" #include "generic.h"
...@@ -191,11 +192,6 @@ static struct atmel_nand_data __initdata ek_nand_data = { ...@@ -191,11 +192,6 @@ static struct atmel_nand_data __initdata ek_nand_data = {
.rdy_pin = AT91_PIN_PC13, .rdy_pin = AT91_PIN_PC13,
.enable_pin = AT91_PIN_PC14, .enable_pin = AT91_PIN_PC14,
.partition_info = nand_partitions, .partition_info = nand_partitions,
#if defined(CONFIG_MTD_NAND_ATMEL_BUSWIDTH_16)
.bus_width_16 = 1,
#else
.bus_width_16 = 0,
#endif
}; };
static struct sam9_smc_config __initdata ek_nand_smc_config = { static struct sam9_smc_config __initdata ek_nand_smc_config = {
...@@ -218,6 +214,7 @@ static struct sam9_smc_config __initdata ek_nand_smc_config = { ...@@ -218,6 +214,7 @@ static struct sam9_smc_config __initdata ek_nand_smc_config = {
static void __init ek_add_device_nand(void) static void __init ek_add_device_nand(void)
{ {
ek_nand_data.bus_width_16 = !board_have_nand_8bit();
/* setup bus-width (8 or 16) */ /* setup bus-width (8 or 16) */
if (ek_nand_data.bus_width_16) if (ek_nand_data.bus_width_16)
ek_nand_smc_config.mode |= AT91_SMC_DBW_16; ek_nand_smc_config.mode |= AT91_SMC_DBW_16;
......
...@@ -48,6 +48,7 @@ ...@@ -48,6 +48,7 @@
#include <mach/gpio.h> #include <mach/gpio.h>
#include <mach/at91sam9_smc.h> #include <mach/at91sam9_smc.h>
#include <mach/at91_shdwc.h> #include <mach/at91_shdwc.h>
#include <mach/system_rev.h>
#include "sam9_smc.h" #include "sam9_smc.h"
#include "generic.h" #include "generic.h"
...@@ -197,11 +198,6 @@ static struct atmel_nand_data __initdata ek_nand_data = { ...@@ -197,11 +198,6 @@ static struct atmel_nand_data __initdata ek_nand_data = {
.rdy_pin = AT91_PIN_PC15, .rdy_pin = AT91_PIN_PC15,
.enable_pin = AT91_PIN_PC14, .enable_pin = AT91_PIN_PC14,
.partition_info = nand_partitions, .partition_info = nand_partitions,
#if defined(CONFIG_MTD_NAND_ATMEL_BUSWIDTH_16)
.bus_width_16 = 1,
#else
.bus_width_16 = 0,
#endif
}; };
static struct sam9_smc_config __initdata ek_nand_smc_config = { static struct sam9_smc_config __initdata ek_nand_smc_config = {
...@@ -224,6 +220,7 @@ static struct sam9_smc_config __initdata ek_nand_smc_config = { ...@@ -224,6 +220,7 @@ static struct sam9_smc_config __initdata ek_nand_smc_config = {
static void __init ek_add_device_nand(void) static void __init ek_add_device_nand(void)
{ {
ek_nand_data.bus_width_16 = !board_have_nand_8bit();
/* setup bus-width (8 or 16) */ /* setup bus-width (8 or 16) */
if (ek_nand_data.bus_width_16) if (ek_nand_data.bus_width_16)
ek_nand_smc_config.mode |= AT91_SMC_DBW_16; ek_nand_smc_config.mode |= AT91_SMC_DBW_16;
......
...@@ -47,6 +47,7 @@ ...@@ -47,6 +47,7 @@
#include <mach/gpio.h> #include <mach/gpio.h>
#include <mach/at91sam9_smc.h> #include <mach/at91sam9_smc.h>
#include <mach/at91_shdwc.h> #include <mach/at91_shdwc.h>
#include <mach/system_rev.h>
#include "sam9_smc.h" #include "sam9_smc.h"
#include "generic.h" #include "generic.h"
...@@ -198,11 +199,6 @@ static struct atmel_nand_data __initdata ek_nand_data = { ...@@ -198,11 +199,6 @@ static struct atmel_nand_data __initdata ek_nand_data = {
.rdy_pin = AT91_PIN_PA22, .rdy_pin = AT91_PIN_PA22,
.enable_pin = AT91_PIN_PD15, .enable_pin = AT91_PIN_PD15,
.partition_info = nand_partitions, .partition_info = nand_partitions,
#if defined(CONFIG_MTD_NAND_ATMEL_BUSWIDTH_16)
.bus_width_16 = 1,
#else
.bus_width_16 = 0,
#endif
}; };
static struct sam9_smc_config __initdata ek_nand_smc_config = { static struct sam9_smc_config __initdata ek_nand_smc_config = {
...@@ -225,6 +221,7 @@ static struct sam9_smc_config __initdata ek_nand_smc_config = { ...@@ -225,6 +221,7 @@ static struct sam9_smc_config __initdata ek_nand_smc_config = {
static void __init ek_add_device_nand(void) static void __init ek_add_device_nand(void)
{ {
ek_nand_data.bus_width_16 = !board_have_nand_8bit();
/* setup bus-width (8 or 16) */ /* setup bus-width (8 or 16) */
if (ek_nand_data.bus_width_16) if (ek_nand_data.bus_width_16)
ek_nand_smc_config.mode |= AT91_SMC_DBW_16; ek_nand_smc_config.mode |= AT91_SMC_DBW_16;
......
...@@ -43,6 +43,7 @@ ...@@ -43,6 +43,7 @@
#include <mach/board.h> #include <mach/board.h>
#include <mach/gpio.h> #include <mach/gpio.h>
#include <mach/at91sam9_smc.h> #include <mach/at91sam9_smc.h>
#include <mach/system_rev.h>
#include "sam9_smc.h" #include "sam9_smc.h"
#include "generic.h" #include "generic.h"
...@@ -175,11 +176,6 @@ static struct atmel_nand_data __initdata ek_nand_data = { ...@@ -175,11 +176,6 @@ static struct atmel_nand_data __initdata ek_nand_data = {
.rdy_pin = AT91_PIN_PC13, .rdy_pin = AT91_PIN_PC13,
.enable_pin = AT91_PIN_PC14, .enable_pin = AT91_PIN_PC14,
.partition_info = nand_partitions, .partition_info = nand_partitions,
#if defined(CONFIG_MTD_NAND_ATMEL_BUSWIDTH_16)
.bus_width_16 = 1,
#else
.bus_width_16 = 0,
#endif
}; };
static struct sam9_smc_config __initdata ek_nand_smc_config = { static struct sam9_smc_config __initdata ek_nand_smc_config = {
...@@ -202,6 +198,7 @@ static struct sam9_smc_config __initdata ek_nand_smc_config = { ...@@ -202,6 +198,7 @@ static struct sam9_smc_config __initdata ek_nand_smc_config = {
static void __init ek_add_device_nand(void) static void __init ek_add_device_nand(void)
{ {
ek_nand_data.bus_width_16 = !board_have_nand_8bit();
/* setup bus-width (8 or 16) */ /* setup bus-width (8 or 16) */
if (ek_nand_data.bus_width_16) if (ek_nand_data.bus_width_16)
ek_nand_smc_config.mode |= AT91_SMC_DBW_16; ek_nand_smc_config.mode |= AT91_SMC_DBW_16;
......
...@@ -41,6 +41,7 @@ ...@@ -41,6 +41,7 @@
#include <mach/gpio.h> #include <mach/gpio.h>
#include <mach/at91sam9_smc.h> #include <mach/at91sam9_smc.h>
#include <mach/at91_shdwc.h> #include <mach/at91_shdwc.h>
#include <mach/system_rev.h>
#include "sam9_smc.h" #include "sam9_smc.h"
#include "generic.h" #include "generic.h"
...@@ -155,11 +156,6 @@ static struct atmel_nand_data __initdata ek_nand_data = { ...@@ -155,11 +156,6 @@ static struct atmel_nand_data __initdata ek_nand_data = {
.rdy_pin = AT91_PIN_PC8, .rdy_pin = AT91_PIN_PC8,
.enable_pin = AT91_PIN_PC14, .enable_pin = AT91_PIN_PC14,
.partition_info = nand_partitions, .partition_info = nand_partitions,
#if defined(CONFIG_MTD_NAND_ATMEL_BUSWIDTH_16)
.bus_width_16 = 1,
#else
.bus_width_16 = 0,
#endif
}; };
static struct sam9_smc_config __initdata ek_nand_smc_config = { static struct sam9_smc_config __initdata ek_nand_smc_config = {
...@@ -182,6 +178,7 @@ static struct sam9_smc_config __initdata ek_nand_smc_config = { ...@@ -182,6 +178,7 @@ static struct sam9_smc_config __initdata ek_nand_smc_config = {
static void __init ek_add_device_nand(void) static void __init ek_add_device_nand(void)
{ {
ek_nand_data.bus_width_16 = !board_have_nand_8bit();
/* setup bus-width (8 or 16) */ /* setup bus-width (8 or 16) */
if (ek_nand_data.bus_width_16) if (ek_nand_data.bus_width_16)
ek_nand_smc_config.mode |= AT91_SMC_DBW_16; ek_nand_smc_config.mode |= AT91_SMC_DBW_16;
......
/*
* Copyright (C) 2011 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
*
* Under GPLv2 only
*/
#ifndef __ARCH_SYSTEM_REV_H__
#define __ARCH_SYSTEM_REV_H__
/*
* board revision encoding
* mach specific
* the 16-31 bit are reserved for at91 generic information
*
* bit 31:
* 0 => nand 16 bit
* 1 => nand 8 bit
*/
#define BOARD_HAVE_NAND_8BIT (1 << 31)
static int inline board_have_nand_8bit(void)
{
return system_rev & BOARD_HAVE_NAND_8BIT;
}
#endif /* __ARCH_SYSTEM_REV_H__ */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment