summaryrefslogtreecommitdiff
path: root/board/keymile/km83xx/km83xx.c
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2017-03-31 08:40:25 -0600
committerTom Rini <trini@konsulko.com>2017-04-05 13:59:20 -0400
commit088454cde245b4d431ce0181be8b3cbceea059d6 (patch)
treeec86ebe66961c9b06ab4b39ec83fd81d4a86e9be /board/keymile/km83xx/km83xx.c
parent52c411805c090999f015df8bdf8016fb684746d0 (diff)
board_f: Drop return value from initdram()
At present we cannot use this function as an init sequence call without a wrapper, since it returns the RAM size. Adjust it to set the RAM size in global_data instead, and return 0 on success. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Stefan Roese <sr@denx.de>
Diffstat (limited to 'board/keymile/km83xx/km83xx.c')
-rw-r--r--board/keymile/km83xx/km83xx.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/board/keymile/km83xx/km83xx.c b/board/keymile/km83xx/km83xx.c
index 111a8a7995..f83fa06e93 100644
--- a/board/keymile/km83xx/km83xx.c
+++ b/board/keymile/km83xx/km83xx.c
@@ -28,6 +28,8 @@
#include "../common/common.h"
+DECLARE_GLOBAL_DATA_PTR;
+
static uchar ivm_content[CONFIG_SYS_IVM_EEPROM_MAX_LEN];
const qe_iop_conf_t qe_iop_conf_tab[] = {
@@ -328,13 +330,13 @@ static int fixed_sdram(void)
return msize;
}
-phys_size_t initdram(void)
+int initdram(void)
{
immap_t *im = (immap_t *)CONFIG_SYS_IMMR;
u32 msize = 0;
if ((in_be32(&im->sysconf.immrbar) & IMMRBAR_BASE_ADDR) != (u32)im)
- return -1;
+ return -ENXIO;
out_be32(&im->sysconf.ddrlaw[0].bar,
CONFIG_SYS_DDR_BASE & LAWBAR_BAR);
@@ -348,7 +350,9 @@ phys_size_t initdram(void)
#endif
/* return total bus SDRAM size(bytes) -- DDR */
- return msize * 1024 * 1024;
+ gd->ram_size = msize * 1024 * 1024;
+
+ return 0;
}
int checkboard(void)