
On Mon, 26 Aug 2024 at 15:01, Sughosh Ganu sughosh.ganu@linaro.org wrote:
The memory map maintained by the LMB module is now persistent and global. This memory map is being maintained through the alloced list structure which can be extended at runtime -- there is one list for the available memory, and one for the used memory. Allocate and initialise these lists during the board init.
Signed-off-by: Sughosh Ganu sughosh.ganu@linaro.org Reviewed-by: Simon Glass sjg@chromium.org
Changes since V3: None
common/board_r.c | 10 ++++++++++ common/spl/spl.c | 3 +++ 2 files changed, 13 insertions(+)
diff --git a/common/board_r.c b/common/board_r.c index f445803d7a..a60da39a29 100644 --- a/common/board_r.c +++ b/common/board_r.c @@ -22,6 +22,7 @@ #include <hang.h> #include <image.h> #include <irq_func.h> +#include <lmb.h> #include <log.h> #include <net.h> #include <asm/cache.h> @@ -510,6 +511,14 @@ int initr_mem(void) } #endif
+static int initr_lmb(void) +{
if (CONFIG_IS_ENABLED(LMB))
return lmb_init();
else
return 0;
+}
static int dm_announce(void) { int device_count; @@ -612,6 +621,7 @@ static init_fnc_t init_sequence_r[] = { #ifdef CONFIG_CLOCKS set_cpu_clk_info, /* Setup clock information */ #endif
initr_lmb,
#ifdef CONFIG_EFI_LOADER efi_memory_init, #endif diff --git a/common/spl/spl.c b/common/spl/spl.c index 7c6e322ffd..ad2dc6a908 100644 --- a/common/spl/spl.c +++ b/common/spl/spl.c @@ -721,6 +721,9 @@ void board_init_r(gd_t *dummy1, ulong dummy2) IS_ENABLED(CONFIG_SPL_ATF)) dram_init_banksize();
if (IS_ENABLED(CONFIG_SPL_LMB))
lmb_init();
if (CONFIG_IS_ENABLED(PCI) && !(gd->flags & GD_FLG_DM_DEAD)) { ret = pci_init(); if (ret)
-- 2.34.1
Reviewed-by: Ilias Apalodimas ilias.apalodimas@linaro.org