
Signed-off-by: Andy Fleming afleming@freescale.com --- board/freescale/mpc8536ds/mpc8536ds.c | 12 ++++++++++++ cpu/mpc85xx/cpu.c | 15 +++++++++++++++ include/configs/MPC8536DS.h | 14 ++++++++++++++ 3 files changed, 41 insertions(+), 0 deletions(-)
diff --git a/board/freescale/mpc8536ds/mpc8536ds.c b/board/freescale/mpc8536ds/mpc8536ds.c index eb80500..0522f2f 100644 --- a/board/freescale/mpc8536ds/mpc8536ds.c +++ b/board/freescale/mpc8536ds/mpc8536ds.c @@ -44,6 +44,18 @@
phys_size_t fixed_sdram(void);
+int board_early_init_f (void) +{ + volatile u32 *pmuxcr = (u32 *)(CONFIG_SYS_IMMR + 0xe0060); + u32 val; + + val = *pmuxcr; + val |= 0x60000000; + *pmuxcr = val; + + return 0; +} + int checkboard (void) { printf ("Board: MPC8536DS, System ID: 0x%02x, " diff --git a/cpu/mpc85xx/cpu.c b/cpu/mpc85xx/cpu.c index bbea50f..fa1c0e1 100644 --- a/cpu/mpc85xx/cpu.c +++ b/cpu/mpc85xx/cpu.c @@ -31,6 +31,7 @@ #include <command.h> #include <tsec.h> #include <netdev.h> +#include <fsl_esdhc.h> #include <asm/cache.h> #include <asm/io.h>
@@ -392,5 +393,19 @@ int cpu_eth_init(bd_t *bis) #if defined(CONFIG_TSEC_ENET) || defined(CONFIG_MPC85XX_FEC) tsec_standard_init(bis); #endif + return 0; } + +/* + * Initializes on-chip MMC controllers. + * to override, implement board_mmc_init() + */ +int cpu_mmc_init(bd_t *bis) +{ +#ifdef CONFIG_FSL_ESDHC + return fsl_esdhc_mmc_init(bis); +#else + return 0; +#endif +} diff --git a/include/configs/MPC8536DS.h b/include/configs/MPC8536DS.h index e379d53..43c1528 100644 --- a/include/configs/MPC8536DS.h +++ b/include/configs/MPC8536DS.h @@ -72,6 +72,8 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy); #define CONFIG_L2_CACHE /* toggle L2 cache */ #define CONFIG_BTB /* toggle branch predition */
+#define CONFIG_BOARD_EARLY_INIT_F 1 /* Call board_pre_init */ + #define CONFIG_ENABLE_36BIT_PHYS 1
#define CONFIG_SYS_MEMTEST_START 0x00000000 /* memtest works on */ @@ -528,6 +530,18 @@ extern unsigned long get_board_ddr_clk(unsigned long dummy);
#undef CONFIG_WATCHDOG /* watchdog disabled */
+#define CONFIG_MMC 1 + +#ifdef CONFIG_MMC +#define CONFIG_FSL_ESDHC +#define CFG_FSL_ESDHC_ADDR CONFIG_SYS_MPC85xx_ESDHC_ADDR +#define CONFIG_CMD_MMC +#define CONFIG_GENERIC_MMC +#define CONFIG_CMD_EXT2 +#define CONFIG_CMD_FAT +#define CONFIG_DOS_PARTITION +#endif + /* * Miscellaneous configurable options */