@@ -18,6 +18,7 @@
#include <asm/arch/mux.h>
#include <asm/arch/sys_proto.h>
#include <asm/mach-types.h>
+#include <linux/mtd/mtd.h>
#include "igep00x0.h"
DECLARE_GLOBAL_DATA_PTR;
@@ -184,6 +185,21 @@ int misc_init_r(void)
return 0;
}
+void board_mtdparts_default(const char **mtdids, const char **mtdparts)
+{
+ struct mtd_info *mtd = get_mtd_device(NULL, 0);
+ if (mtd) {
+ static char ids[24];
+ static char parts[48];
+ const char *linux_name = "omap2-nand";
+ snprintf(ids, sizeof(ids), "%s=%s", mtd->name, linux_name);
+ snprintf(parts, sizeof(parts), "mtdparts=%s:%dk(SPL),-(UBI)",
+ linux_name, 4 * mtd->erasesize >> 10);
+ *mtdids = ids;
+ *mtdparts = parts;
+ }
+}
+
/*
* Routine: set_muxconf_regs
* Description: Setting up the configuration Mux registers specific to the
@@ -146,6 +146,7 @@
#define CONFIG_RBTREE
#define CONFIG_MTD_PARTITIONS
+#define CONFIG_SYS_MTDPARTS_DEFAULT_RUNTIME
/* OneNAND boot config */
#ifdef CONFIG_BOOT_ONENAND
Just a sample implementation. Eventually become part of of UBI SPL patch series. Signed-off-by: Ladislav Michl <ladis@linux-mips.org> --- board/isee/igep00x0/igep00x0.c | 16 ++++++++++++++++ include/configs/omap3_igep00x0.h | 1 + 2 files changed, 17 insertions(+)