
Signed-off-by: Angelo Dureghello angelo@sysam.it --- board/sysam/stmark2/stmark2.c | 15 +++++++++++++++ configs/stmark2_defconfig | 9 +++++++++ include/configs/stmark2.h | 27 +++++++++++++++------------ 3 files changed, 39 insertions(+), 12 deletions(-)
diff --git a/board/sysam/stmark2/stmark2.c b/board/sysam/stmark2/stmark2.c index 790199a640..f5f62e09a9 100644 --- a/board/sysam/stmark2/stmark2.c +++ b/board/sysam/stmark2/stmark2.c @@ -9,8 +9,10 @@ #include <spi.h> #include <asm/io.h> #include <asm/immap.h> +#ifdef CONFIG_FSL_ESDHC #include <mmc.h> #include <fsl_esdhc.h> +#endif
DECLARE_GLOBAL_DATA_PTR;
@@ -44,3 +46,16 @@ int testdram(void) { return 0; } + +#ifdef CONFIG_FSL_ESDHC +struct fsl_esdhc_cfg esdhc_cfg = { + .esdhc_base = CONFIG_SYS_FSL_ESDHC_ADDR, +}; + +int board_mmc_init(bd_t *bd) +{ + esdhc_cfg.sdhc_clk = gd->arch.sdhc_clk; + + return fsl_esdhc_initialize(bd, &esdhc_cfg); +} +#endif diff --git a/configs/stmark2_defconfig b/configs/stmark2_defconfig index b039ebb9ea..e36b597b01 100644 --- a/configs/stmark2_defconfig +++ b/configs/stmark2_defconfig @@ -12,11 +12,16 @@ CONFIG_SYS_PROMPT="stmark2 $ " # CONFIG_CMD_IMPORTENV is not set # CONFIG_CMD_FLASH is not set # CONFIG_CMD_LOADS is not set +CONFIG_CMD_MMC=y CONFIG_CMD_SF=y CONFIG_CMD_SPI=y # CONFIG_CMD_SETEXPR is not set CONFIG_CMD_CACHE=y +CONFIG_CMD_EXT2=y +CONFIG_CMD_EXT4=y +CONFIG_CMD_FS_GENERIC=y CONFIG_CMD_MTDPARTS=y +CONFIG_DOS_PARTITION=y CONFIG_MTDIDS_DEFAULT="nor0=spi-flash.0" CONFIG_MTDPARTS_DEFAULT="mtdparts=spi-flash.0:1m(u-boot),7m(kernel),-(rootfs)" CONFIG_DEFAULT_DEVICE_TREE="stmark2" @@ -25,6 +30,8 @@ CONFIG_USE_ENV_SPI_CS=y CONFIG_ENV_SPI_CS=1 # CONFIG_NET is not set CONFIG_MTD_DEVICE=y +CONFIG_MMC=y +CONFIG_FSL_ESDHC=y CONFIG_DM_SPI_FLASH=y CONFIG_SPI_FLASH=y CONFIG_SF_DEFAULT_SPEED=50000000 @@ -34,3 +41,5 @@ CONFIG_SPI=y CONFIG_DM_SPI=y CONFIG_CF_SPI=y CONFIG_REGEX=y +CONFIG_USE_BOOTARGS=y +CONFIG_BOOTARGS="console=ttyS0,115200 root=/dev/ram0 rw rootfstype=ramfs rdinit=/sbin/init devtmpfs.mount=1" diff --git a/include/configs/stmark2.h b/include/configs/stmark2.h index 35966580a9..f02c10c59c 100644 --- a/include/configs/stmark2.h +++ b/include/configs/stmark2.h @@ -19,31 +19,26 @@
#define CONFIG_TIMESTAMP
-#define CONFIG_BOOTARGS \ - "console=ttyS0,115200 root=/dev/ram0 rw " \ - "rootfstype=ramfs " \ - "rdinit=/bin/init " \ - "devtmpfs.mount=1" - #define CONFIG_BOOTCOMMAND \ - "sf probe 0:1 50000000; " \ - "sf read ${loadaddr} 0x100000 ${kern_size}; " \ - "bootm ${loadaddr}" + "run boot_sd; bootm ${loadaddr} ${loadaddr_ramfs}"
#define CONFIG_EXTRA_ENV_SETTINGS \ + "boot_sd=load mmc 0:1 ${loadaddr} uImage; " \ + "load mmc 0:1 ${loadaddr_ramfs} uRamfs\0" \ "kern_size=0x700000\0" \ "loadaddr=0x40001000\0" \ + "loadaddr_ramfs=0x41001000\0" \ "-(rootfs)\0" \ - "update_uboot=loady ${loadaddr}; " \ + "update_sf_uboot=loady ${loadaddr}; " \ "sf probe 0:1 50000000; " \ "sf erase 0 0x80000; " \ "sf write ${loadaddr} 0 ${filesize}\0" \ - "update_kernel=loady ${loadaddr}; " \ + "update_sf_kernel=loady ${loadaddr}; " \ "setenv kern_size ${filesize}; saveenv; " \ "sf probe 0:1 50000000; " \ "sf erase 0x100000 0x700000; " \ "sf write ${loadaddr} 0x100000 ${filesize}\0" \ - "update_rootfs=loady ${loadaddr}; " \ + "update_sf_rootfs=loady ${loadaddr}; " \ "sf probe 0:1 50000000; " \ "sf erase 0x00800000 0x100000; " \ "sf write ${loadaddr} 0x00800000 ${filesize}\0" \ @@ -62,6 +57,13 @@ #define CONFIG_MCFTMR #undef CONFIG_MCFPIT
+/* MMC Config*/ +#ifdef CONFIG_FSL_ESDHC +#define CONFIG_SYS_FSL_ESDHC_ADDR 0xfc0cc000 +#define CONFIG_SYS_FSL_ESDHC_BE +#define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33 +#endif + /* DSPI and Serial Flash */ #define CONFIG_CF_DSPI #define CONFIG_SERIAL_FLASH @@ -72,6 +74,7 @@ #define CONFIG_EXTRA_CLOCK
#define CONFIG_PRAM 2048 /* 2048 KB */ +#define CONFIG_CMDLINE_EDITING #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */
/* Print Buffer Size */