From 5e924a13e729c83351f76609d058c1db30746c9b Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Fri, 31 Mar 2017 08:40:33 -0600 Subject: [PATCH] Move dram_init_banksize() to a common header This is an weak function present on all archs so we should have it in the common header file. Remove it from arch-specific headers and add a function comment. Signed-off-by: Simon Glass --- arch/arm/include/asm/u-boot-arm.h | 1 - arch/x86/include/asm/u-boot-x86.h | 1 - include/common.h | 17 +++++++++++++++++ 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/arch/arm/include/asm/u-boot-arm.h b/arch/arm/include/asm/u-boot-arm.h index 2129f37c8f..b931c22060 100644 --- a/arch/arm/include/asm/u-boot-arm.h +++ b/arch/arm/include/asm/u-boot-arm.h @@ -36,7 +36,6 @@ int arch_early_init_r(void); /* board/.../... */ int board_init(void); -int dram_init_banksize(void); void board_quiesce_devices(void); /* cpu/.../interrupt.c */ diff --git a/arch/x86/include/asm/u-boot-x86.h b/arch/x86/include/asm/u-boot-x86.h index 33c6e2bb68..d2d603967e 100644 --- a/arch/x86/include/asm/u-boot-x86.h +++ b/arch/x86/include/asm/u-boot-x86.h @@ -41,7 +41,6 @@ void x86_disable_caches(void); int x86_init_cache(void); void reset_cpu(ulong addr); ulong board_get_usable_ram_top(ulong total_size); -int dram_init_banksize(void); int default_print_cpuinfo(void); /* Set up a UART which can be used with printch(), printhex8(), etc. */ diff --git a/include/common.h b/include/common.h index dd8b25f421..c1f1712d5a 100644 --- a/include/common.h +++ b/include/common.h @@ -203,6 +203,23 @@ typedef void (interrupt_handler_t)(void *); */ int dram_init(void); +/** + * dram_init_banksize() - Set up DRAM bank sizes + * + * This can be implemented by boards to set up the DRAM bank information in + * gd->bd->bi_dram(). It is called just before relocation, after dram_init() + * is called. + * + * If this is not provided, a default implementation will try to set up a + * single bank. It will do this if CONFIG_NR_DRAM_BANKS and + * CONFIG_SYS_SDRAM_BASE are set. The bank will have a start address of + * CONFIG_SYS_SDRAM_BASE and the size will be determined by a call to + * get_effective_memsize(). + * + * @return 0 if OK, -ve on error + */ +int dram_init_banksize(void); + void hang (void) __attribute__ ((noreturn)); int timer_init(void);