Skip to content
Snippets Groups Projects
Commit 7ac1a24a authored by Ashish Kumar's avatar Ashish Kumar Committed by York Sun
Browse files

powerpc/BSC9131RDB: Enable creation of dynamic partitions for NAND


* fdt_fixup_mtdparts is called from ft_board_setup
 * Run "mtdparts default" to create NAND partition on uboot
 * Use mtdparts to create partitions dynamically rather
    than using static partitions in device tree

Signed-off-by: default avatarAshish Kumar <Ashish.Kumar@freescale.com>
Reviewed-by: default avatarYork Sun <yorksun@freescale.com>
parent 42a9e2fe
No related branches found
No related tags found
No related merge requests found
...@@ -15,6 +15,9 @@ ...@@ -15,6 +15,9 @@
#include <fdt_support.h> #include <fdt_support.h>
#include <fsl_mdio.h> #include <fsl_mdio.h>
#include <tsec.h> #include <tsec.h>
#include <jffs2/load_kernel.h>
#include <mtd_node.h>
#include <flash.h>
#include <netdev.h> #include <netdev.h>
...@@ -50,6 +53,11 @@ int checkboard(void) ...@@ -50,6 +53,11 @@ int checkboard(void)
} }
#if defined(CONFIG_OF_BOARD_SETUP) #if defined(CONFIG_OF_BOARD_SETUP)
#ifdef CONFIG_FDT_FIXUP_PARTITIONS
struct node_info nodes[] = {
{ "fsl,ifc-nand", MTD_DEV_TYPE_NAND, },
};
#endif
void ft_board_setup(void *blob, bd_t *bd) void ft_board_setup(void *blob, bd_t *bd)
{ {
phys_addr_t base; phys_addr_t base;
...@@ -61,6 +69,9 @@ void ft_board_setup(void *blob, bd_t *bd) ...@@ -61,6 +69,9 @@ void ft_board_setup(void *blob, bd_t *bd)
size = getenv_bootm_size(); size = getenv_bootm_size();
fdt_fixup_memory(blob, (u64)base, (u64)size); fdt_fixup_memory(blob, (u64)base, (u64)size);
#ifdef CONFIG_FDT_FIXUP_PARTITIONS
fdt_fixup_mtdparts(blob, nodes, ARRAY_SIZE(nodes));
#endif
fdt_fixup_dr_usb(blob, bd); fdt_fixup_dr_usb(blob, bd);
} }
......
...@@ -399,6 +399,23 @@ extern unsigned long get_sdram_size(void); ...@@ -399,6 +399,23 @@ extern unsigned long get_sdram_size(void);
#define CONFIG_HAS_FSL_DR_USB #define CONFIG_HAS_FSL_DR_USB
#endif #endif
/*
* Dynamic MTD Partition support with mtdparts
*/
#define CONFIG_MTD_DEVICE
#define CONFIG_MTD_PARTITIONS
#define CONFIG_CMD_MTDPARTS
#define MTDIDS_DEFAULT "nand0=ff800000.flash,"
#define MTDPARTS_DEFAULT "mtdparts=ff800000.flash:1m(uboot)," \
"8m(kernel),512k(dtb),-(fs)"
/*
* Override partitions in device tree using info
* in "mtdparts" environment variable
*/
#ifdef CONFIG_CMD_MTDPARTS
#define CONFIG_FDT_FIXUP_PARTITIONS
#endif
/* /*
* Environment Configuration * Environment Configuration
*/ */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment