From: Sergey Temerkhanov Date: Wed, 14 Oct 2015 16:55:52 +0000 (-0700) Subject: armv8: cavium: Get DRAM size from ATF X-Git-Tag: v2016.03-rc1~278 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=3ed2ece5e162b104cd3ea3788cae841ecd24408f;p=u-boot armv8: cavium: Get DRAM size from ATF Change the dram_init() function on ThunderX to query ATF services for the real installed DRAM size Signed-off-by: Sergey Temerkhanov Signed-off-by: Radha Mohan Chintakuntla --- diff --git a/board/cavium/thunderx/thunderx.c b/board/cavium/thunderx/thunderx.c index 486374e982..b9267676dc 100644 --- a/board/cavium/thunderx/thunderx.c +++ b/board/cavium/thunderx/thunderx.c @@ -9,6 +9,8 @@ #include #include +#include + #if !CONFIG_IS_ENABLED(OF_CONTROL) #include #include @@ -50,6 +52,31 @@ int timer_init(void) return 0; } +int dram_init(void) +{ + ssize_t node_count = atf_node_count(); + ssize_t dram_size; + int node; + + printf("Initializing\nNodes in system: %zd\n", node_count); + + gd->ram_size = 0; + + for (node = 0; node < node_count; node++) { + dram_size = atf_dram_size(node); + printf("Node %d: %zd MBytes of DRAM\n", node, dram_size >> 20); + gd->ram_size += dram_size; + } + + gd->ram_size -= MEM_BASE; + + *(unsigned long *)CPU_RELEASE_ADDR = 0; + + puts("DRAM size:"); + + return 0; +} + /* * Board specific reset that is system reset. */