summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2014-11-06 13:20:05 -0700
committerSimon Glass <sjg@chromium.org>2014-11-21 07:24:09 +0100
commit07387d1769c7cc29ff2402117148477263c4c5ce (patch)
treed3e88335fbd000096018a6cff5ffdb75b1936363
parent76f90f3020433a2d06d9ebf897f65862d6248c8e (diff)
downloadu-boot-imx-07387d1769c7cc29ff2402117148477263c4c5ce.zip
u-boot-imx-07387d1769c7cc29ff2402117148477263c4c5ce.tar.gz
u-boot-imx-07387d1769c7cc29ff2402117148477263c4c5ce.tar.bz2
x86: Use the standard dram_init() function
Instead of having an x86-specific DRAM init function, adjust things so we can use the normal one. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
-rw-r--r--arch/x86/cpu/coreboot/sdram.c11
-rw-r--r--arch/x86/include/asm/u-boot-x86.h4
-rw-r--r--common/board_f.c6
3 files changed, 7 insertions, 14 deletions
diff --git a/arch/x86/cpu/coreboot/sdram.c b/arch/x86/cpu/coreboot/sdram.c
index 959feaa..ca651c7 100644
--- a/arch/x86/cpu/coreboot/sdram.c
+++ b/arch/x86/cpu/coreboot/sdram.c
@@ -11,6 +11,7 @@
#include <asm/e820.h>
#include <asm/u-boot-x86.h>
#include <asm/global_data.h>
+#include <asm/init_helpers.h>
#include <asm/processor.h>
#include <asm/sections.h>
#include <asm/arch/sysinfo.h>
@@ -79,7 +80,7 @@ ulong board_get_usable_ram_top(ulong total_size)
return (ulong)dest_addr;
}
-int dram_init_f(void)
+int dram_init(void)
{
int i;
phys_size_t ram_size = 0;
@@ -94,7 +95,8 @@ int dram_init_f(void)
gd->ram_size = ram_size;
if (ram_size == 0)
return -1;
- return 0;
+
+ return calculate_relocation_address();
}
int dram_init_banksize(void)
@@ -116,8 +118,3 @@ int dram_init_banksize(void)
}
return 0;
}
-
-int dram_init(void)
-{
- return dram_init_banksize();
-}
diff --git a/arch/x86/include/asm/u-boot-x86.h b/arch/x86/include/asm/u-boot-x86.h
index 9e525dd..89618c7 100644
--- a/arch/x86/include/asm/u-boot-x86.h
+++ b/arch/x86/include/asm/u-boot-x86.h
@@ -27,8 +27,8 @@ unsigned long get_tbclk_mhz(void);
void timer_set_base(uint64_t base);
int pcat_timer_init(void);
-/* Architecture specific - can be in arch/x86/cpu/, arch/x86/lib/, or $(BOARD)/ */
-int dram_init_f(void);
+/* Architecture specific DRAM init */
+int dram_init(void);
/* cpu/.../interrupts.c */
int cpu_init_interrupts(void);
diff --git a/common/board_f.c b/common/board_f.c
index b5bebc9..1d81ed7 100644
--- a/common/board_f.c
+++ b/common/board_f.c
@@ -903,13 +903,9 @@ static init_fnc_t init_sequence_f[] = {
#if defined(CONFIG_HARD_SPI)
init_func_spi,
#endif
-#ifdef CONFIG_X86
- dram_init_f, /* configure available RAM banks */
- calculate_relocation_address,
-#endif
announce_dram_init,
/* TODO: unify all these dram functions? */
-#ifdef CONFIG_ARM
+#if defined(CONFIG_ARM) || defined(CONFIG_X86)
dram_init, /* configure available RAM banks */
#endif
#if defined(CONFIG_MIPS) || defined(CONFIG_PPC)