diff options
| author | Simon Glass <sjg@chromium.org> | 2013-04-15 11:22:49 +0000 | 
|---|---|---|
| committer | Simon Glass <sjg@chromium.org> | 2013-04-15 16:26:09 -0700 | 
| commit | 8b42dfc3b6a2c9204be2fb1079d235daa1b733fc (patch) | |
| tree | a9b8da4b5b03016a958ad5e5ce9a0c23522b46b6 | |
| parent | cba6494f24d711ba63afb22b1ee691a41fee121c (diff) | |
| download | olio-uboot-2014.01-8b42dfc3b6a2c9204be2fb1079d235daa1b733fc.tar.xz olio-uboot-2014.01-8b42dfc3b6a2c9204be2fb1079d235daa1b733fc.zip | |
x86: Fix DRAM bank size init with generic board
The intention of the memory init code is that it should work the same with
CONFIG_SYS_GENERIC_BOARD and without. This is tricky because dram_init()
is called prior to relocation with generic board (matching other archs)
and after relocation without generic board.
Adjust the init sequence so that dram_init() is not called in the generic
board case, which seems like the easiest fix for now. Also ensure that
relocation addresses are still calculated.
Signed-off-by: Simon Glass <sjg@chromium.org>
| -rw-r--r-- | arch/x86/cpu/coreboot/sdram.c | 7 | ||||
| -rw-r--r-- | common/board_f.c | 3 | 
2 files changed, 7 insertions, 3 deletions
| diff --git a/arch/x86/cpu/coreboot/sdram.c b/arch/x86/cpu/coreboot/sdram.c index 786009c74..b4fe6c91c 100644 --- a/arch/x86/cpu/coreboot/sdram.c +++ b/arch/x86/cpu/coreboot/sdram.c @@ -113,7 +113,7 @@ int dram_init_f(void)  	return 0;  } -int dram_init(void) +int dram_init_banksize(void)  {  	int i, j; @@ -132,3 +132,8 @@ int dram_init(void)  	}  	return 0;  } + +int dram_init(void) +{ +	return dram_init_banksize(); +} diff --git a/common/board_f.c b/common/board_f.c index 769889123..32d521509 100644 --- a/common/board_f.c +++ b/common/board_f.c @@ -856,8 +856,7 @@ static init_fnc_t init_sequence_f[] = {  #endif  #ifdef CONFIG_X86  	dram_init_f,		/* configure available RAM banks */ -	/* x86 would prefer that this happens after relocation */ -	dram_init, +	calculate_relocation_address,  #endif  	announce_dram_init,  	/* TODO: unify all these dram functions? */ |