devkit8000/spl: init GPMC for dm9000 in SPL

Linux crashes if the GPMC isn't configured for the dm9000.

Signed-off-by: Simon Schwarz <simonschwarzcor@gmail.com>
CC: Tom Rini <tom.rini@gmail.com>
CC: Stefano Babic <sbabic@denx.de>
CC: Wolfgang Denk <wd@denx.de>
This commit is contained in:
Simon Schwarz 2012-03-15 04:01:37 +00:00 committed by Albert ARIBAUD
parent df163a5980
commit 9e70c08b6f
2 changed files with 20 additions and 0 deletions

View File

@ -92,6 +92,7 @@ u32 omap_boot_mode(void);
/* SPL common function s*/
void spl_parse_image_header(const struct image_header *header);
void omap_rev_string(void);
void spl_board_prepare_for_linux(void);
/* NAND SPL functions */
void spl_nand_load_image(void);

View File

@ -73,6 +73,13 @@ int board_init(void)
return 0;
}
/* Configure GPMC registers for DM9000 */
static void gpmc_dm9000_config(void)
{
enable_gpmc_cs_config(gpmc_net_config, &gpmc_cfg->cs[6],
CONFIG_DM9000_BASE, GPMC_SIZE_16M);
}
/*
* Routine: misc_init_r
* Description: Configure board specific parts
@ -144,6 +151,18 @@ int board_eth_init(bd_t *bis)
}
#endif
#ifdef CONFIG_SPL_OS_BOOT
/*
* Do board specific preperation before SPL
* Linux boot
*/
void spl_board_prepare_for_linux(void)
{
gpmc_dm9000_config();
}
#endif
/*
* Routine: get_board_mem_timings
* Description: If we use SPL then there is no x-loader nor config header