summaryrefslogtreecommitdiff
path: root/arch/arm/mach-rockchip/rk3288-board-spl.c
diff options
context:
space:
mode:
authorJagan Teki <jagan@amarulasolutions.com>2017-09-27 23:03:14 +0530
committerPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>2017-10-01 00:33:35 +0200
commit2ee3021ae1808828c74b7eb6ae68d8d511bc4c30 (patch)
treed45c0d607093a1ba5696cf795b1aa73e117a95ee /arch/arm/mach-rockchip/rk3288-board-spl.c
parent7c158634cade29f6d1f898997c82b100d303527c (diff)
rk3288: spl: Add dram_init_banksize
Falcon mode, is updating DDR dt node configuration through spl_fixup_fdt() so add appropriate DDR base and size through dram_init_banksize. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Diffstat (limited to 'arch/arm/mach-rockchip/rk3288-board-spl.c')
-rw-r--r--arch/arm/mach-rockchip/rk3288-board-spl.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/arch/arm/mach-rockchip/rk3288-board-spl.c b/arch/arm/mach-rockchip/rk3288-board-spl.c
index 5239cbc37c..7b7fd5a6f1 100644
--- a/arch/arm/mach-rockchip/rk3288-board-spl.c
+++ b/arch/arm/mach-rockchip/rk3288-board-spl.c
@@ -19,7 +19,9 @@
#include <asm/arch/clock.h>
#include <asm/arch/hardware.h>
#include <asm/arch/periph.h>
+#include <asm/arch/pmu_rk3288.h>
#include <asm/arch/sdram.h>
+#include <asm/arch/sdram_common.h>
#include <asm/arch/sys_proto.h>
#include <asm/arch/timer.h>
#include <dm/pinctrl.h>
@@ -290,3 +292,18 @@ err:
/* No way to report error here */
hang();
}
+
+#ifdef CONFIG_SPL_OS_BOOT
+
+#define PMU_BASE 0xff730000
+int dram_init_banksize(void)
+{
+ struct rk3288_pmu *const pmu = (void *)PMU_BASE;
+ size_t size = rockchip_sdram_size((phys_addr_t)&pmu->sys_reg[2]);
+
+ gd->bd->bi_dram[0].start = CONFIG_SYS_SDRAM_BASE;
+ gd->bd->bi_dram[0].size = size;
+
+ return 0;
+}
+#endif