Move dram_init_banksize() to a common header
authorSimon Glass <sjg@chromium.org>
Fri, 31 Mar 2017 14:40:33 +0000 (08:40 -0600)
committerTom Rini <trini@konsulko.com>
Wed, 5 Apr 2017 20:36:51 +0000 (16:36 -0400)
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 <sjg@chromium.org>
arch/arm/include/asm/u-boot-arm.h
arch/x86/include/asm/u-boot-x86.h
include/common.h

index 2129f37c8f68a6b03b7ccb56166c8a08b2737ecd..b931c22060ec823201ff5d230367de526f3271fa 100644 (file)
@@ -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 */
index 33c6e2bb687afdb83be73ad71d4976aa31494000..d2d603967ef24f7932e504d7ca96528855d972f0 100644 (file)
@@ -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. */
index dd8b25f421e8d410e19b636c99856f3e8923e29d..c1f1712d5a3a4e3bfb0e8f78490b03788ebb77ae 100644 (file)
@@ -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);