cmd: mtdparts: support runtime generated mtdparts
Some CPUs contains boot ROM code capable reading first few blocks (where SPL resides) of NAND flash and executing it. It is wise to create separate partition here for SPL. As block size depends on NAND chip used, we could either use worst case (biggest) partition size or base its size on actual block size. This patch adds support for the latter option. Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
This commit is contained in:
parent
f8f744a3e8
commit
af32443656
@ -109,17 +109,17 @@ DECLARE_GLOBAL_DATA_PTR;
|
||||
#define MTD_WRITEABLE_CMD 1
|
||||
|
||||
/* default values for mtdids and mtdparts variables */
|
||||
#if defined(MTDIDS_DEFAULT)
|
||||
static const char *const mtdids_default = MTDIDS_DEFAULT;
|
||||
#else
|
||||
static const char *const mtdids_default = NULL;
|
||||
#if !defined(MTDIDS_DEFAULT)
|
||||
#define MTDIDS_DEFAULT NULL
|
||||
#endif
|
||||
|
||||
#if defined(MTDPARTS_DEFAULT)
|
||||
static const char *const mtdparts_default = MTDPARTS_DEFAULT;
|
||||
#else
|
||||
static const char *const mtdparts_default = NULL;
|
||||
#if !defined(MTDPARTS_DEFAULT)
|
||||
#define MTDPARTS_DEFAULT NULL
|
||||
#endif
|
||||
#if defined(CONFIG_SYS_MTDPARTS_RUNTIME)
|
||||
extern void board_mtdparts_default(const char **mtdids, const char **mtdparts);
|
||||
#endif
|
||||
static const char *mtdids_default = MTDIDS_DEFAULT;
|
||||
static const char *mtdparts_default = MTDPARTS_DEFAULT;
|
||||
|
||||
/* copies of last seen 'mtdids', 'mtdparts' and 'partition' env variables */
|
||||
#define MTDIDS_MAXLEN 128
|
||||
@ -1725,6 +1725,9 @@ int mtdparts_init(void)
|
||||
memset(last_ids, 0, MTDIDS_MAXLEN);
|
||||
memset(last_parts, 0, MTDPARTS_MAXLEN);
|
||||
memset(last_partition, 0, PARTITION_MAXLEN);
|
||||
#if defined(CONFIG_SYS_MTDPARTS_RUNTIME)
|
||||
board_mtdparts_default(&mtdids_default, &mtdparts_default);
|
||||
#endif
|
||||
use_defaults = 1;
|
||||
initialized = 1;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user