Finish conversion CONFIG_SYS_NAND_SELF_INIT to Kconfig

In order to finish this conversion we need to add a symbols for
SPL_SYS_NAND_SELF_INIT and TPL_SYS_NAND_SELF_INIT as there are cases
there where we need to, or need to not, use that framework as things
stand.

Signed-off-by: Tom Rini <trini@konsulko.com>
This commit is contained in:
Tom Rini 2021-12-12 22:12:36 -05:00
parent bfb5387fe9
commit 068c41f1cc
12 changed files with 31 additions and 32 deletions

View File

@ -9,6 +9,20 @@ config SYS_NAND_SELF_INIT
This option, if enabled, provides more flexible and linux-like
NAND initialization process.
config SPL_SYS_NAND_SELF_INIT
bool
depends on !SPL_NAND_SIMPLE
help
This option, if enabled, provides more flexible and linux-like
NAND initialization process, in SPL.
config TPL_SYS_NAND_SELF_INIT
bool
depends on TPL_NAND_SUPPORT
help
This option, if enabled, provides more flexible and linux-like
NAND initialization process, in SPL.
config SYS_NAND_DRIVER_ECC_LAYOUT
bool "Omit standard ECC layouts to save space"
help
@ -22,6 +36,7 @@ config SYS_NAND_USE_FLASH_BBT
config NAND_ATMEL
bool "Support Atmel NAND controller"
select SYS_NAND_SELF_INIT
imply SYS_NAND_USE_FLASH_BBT
help
Enable this driver for NAND flash platforms using an Atmel NAND
@ -65,6 +80,7 @@ endif
config NAND_BRCMNAND
bool "Support Broadcom NAND controller"
depends on OF_CONTROL && DM && DM_MTD
select SYS_NAND_SELF_INIT
help
Enable the driver for NAND flash on platforms using a Broadcom NAND
controller.
@ -101,6 +117,7 @@ config NAND_BRCMNAND_63158
config NAND_DAVINCI
bool "Support TI Davinci NAND controller"
select SYS_NAND_SELF_INIT if TARGET_DA850EVM
help
Enable this driver for NAND flash controllers available in TI Davinci
and Keystone2 platforms
@ -128,18 +145,25 @@ config NAND_DENALI_DT
config NAND_FSL_ELBC
bool "Support Freescale Enhanced Local Bus Controller FCM NAND driver"
select TPL_SYS_NAND_SELF_INIT if TPL_NAND_SUPPORT
select SPL_SYS_NAND_SELF_INIT
select SYS_NAND_SELF_INIT
depends on FSL_ELBC
help
Enable the Freescale Enhanced Local Bus Controller FCM NAND driver.
config NAND_FSL_IFC
bool "Support Freescale Integrated Flash Controller NAND driver"
select TPL_SYS_NAND_SELF_INIT if TPL_NAND_SUPPORT
select SPL_SYS_NAND_SELF_INIT
select SYS_NAND_SELF_INIT
select FSL_IFC
help
Enable the Freescale Integrated Flash Controller NAND driver.
config NAND_LPC32XX_MLC
bool "Support LPC32XX_MLC controller"
select SYS_NAND_SELF_INIT
help
Enable the LPC32XX MLC NAND controller.
@ -331,6 +355,7 @@ config NAND_SUNXI
select SYS_NAND_SELF_INIT
select SYS_NAND_U_BOOT_LOCATIONS
select SPL_NAND_SUPPORT
select SPL_SYS_NAND_SELF_INIT
imply CMD_NAND
---help---
Enable support for NAND. This option enables the standard and
@ -375,6 +400,7 @@ config NAND_MXC
config NAND_MXS
bool "MXS NAND support"
depends on MX23 || MX28 || MX6 || MX7 || IMX8 || IMX8M
select SPL_SYS_NAND_SELF_INIT
select SYS_NAND_SELF_INIT
imply CMD_NAND
select APBH_DMA
@ -407,6 +433,7 @@ config NAND_MXIC
config NAND_ZYNQ
bool "Support for Zynq Nand controller"
select SPL_SYS_NAND_SELF_INIT
select SYS_NAND_SELF_INIT
select DM_MTD
imply CMD_NAND

View File

@ -788,7 +788,7 @@ static void davinci_nand_init(struct nand_chip *nand)
nand->dev_ready = nand_davinci_dev_ready;
}
#ifdef CONFIG_SYS_NAND_SELF_INIT
#if CONFIG_IS_ENABLED(SYS_NAND_SELF_INIT)
static int davinci_nand_probe(struct udevice *dev)
{
struct nand_chip *nand = dev_get_priv(dev);

View File

@ -76,7 +76,7 @@ int nand_register(int devnum, struct mtd_info *mtd)
return 0;
}
#ifndef CONFIG_SYS_NAND_SELF_INIT
#if !CONFIG_IS_ENABLED(SYS_NAND_SELF_INIT)
static void nand_init_chip(int i)
{
struct nand_chip *nand = &nand_chip[i];
@ -155,7 +155,7 @@ void nand_init(void)
return;
initialized = 1;
#ifdef CONFIG_SYS_NAND_SELF_INIT
#if CONFIG_IS_ENABLED(SYS_NAND_SELF_INIT)
board_nand_init();
#else
int i;

View File

@ -28,7 +28,6 @@
#ifdef CONFIG_MTD_RAW_NAND
#define CONFIG_SYS_MAX_NAND_DEVICE 1
#define CONFIG_SYS_NAND_SELF_INIT
#endif /* CONFIG_MTD_RAW_NAND */
/*

View File

@ -27,7 +27,6 @@
#ifdef CONFIG_MTD_RAW_NAND
#define CONFIG_SYS_MAX_NAND_DEVICE 1
#define CONFIG_SYS_NAND_SELF_INIT
#endif /* CONFIG_MTD_RAW_NAND */
/*

View File

@ -8,5 +8,4 @@
#ifdef CONFIG_MTD_RAW_NAND
#define CONFIG_SYS_MAX_NAND_DEVICE 1
#define CONFIG_SYS_NAND_SELF_INIT
#endif /* CONFIG_MTD_RAW_NAND */

View File

@ -27,7 +27,6 @@
#ifdef CONFIG_MTD_RAW_NAND
#define CONFIG_SYS_MAX_NAND_DEVICE 1
#define CONFIG_SYS_NAND_SELF_INIT
#endif /* CONFIG_MTD_RAW_NAND */
/*

View File

@ -10,5 +10,4 @@
#ifdef CONFIG_MTD_RAW_NAND
#define CONFIG_SYS_MAX_NAND_DEVICE 1
#define CONFIG_SYS_NAND_SELF_INIT
#endif /* CONFIG_MTD_RAW_NAND */

View File

@ -136,10 +136,6 @@
59, 60, 61, 62, 63 }
#define CONFIG_SYS_NAND_ECCSIZE 512
#define CONFIG_SYS_NAND_ECCBYTES 10
#ifndef CONFIG_SPL_BUILD
#define CONFIG_SYS_NAND_SELF_INIT
#endif
#endif
/*

View File

@ -79,6 +79,4 @@
*/
#define CONFIG_USB_EHCI_TXFIFO_THRESH 0x10
#define CONFIG_SYS_NAND_SELF_INIT
#endif /* _TEGRA20_COMMON_H_ */

View File

@ -55,7 +55,6 @@
*/
/* driver configuration */
#define CONFIG_SYS_NAND_SELF_INIT
#define CONFIG_SYS_MAX_NAND_DEVICE 1
#define CONFIG_SYS_MAX_NAND_CHIPS 1
#define CONFIG_SYS_NAND_BASE MLC_NAND_BASE

View File

@ -10,22 +10,6 @@
#include <config.h>
/*
* All boards using a given driver must convert to self-init
* at the same time, so do it here. When all drivers are
* converted, this will go away.
*/
#ifdef CONFIG_SPL_BUILD
#if defined(CONFIG_NAND_FSL_ELBC) || defined(CONFIG_NAND_FSL_IFC)
#define CONFIG_SYS_NAND_SELF_INIT
#endif
#else
#if defined(CONFIG_NAND_FSL_ELBC) || defined(CONFIG_NAND_ATMEL)\
|| defined(CONFIG_NAND_FSL_IFC)
#define CONFIG_SYS_NAND_SELF_INIT
#endif
#endif
extern void nand_init(void);
unsigned long nand_size(void);
@ -34,7 +18,7 @@ unsigned long nand_size(void);
int nand_mtd_to_devnum(struct mtd_info *mtd);
#ifdef CONFIG_SYS_NAND_SELF_INIT
#if CONFIG_IS_ENABLED(SYS_NAND_SELF_INIT)
void board_nand_init(void);
int nand_register(int devnum, struct mtd_info *mtd);
#else