From 1cc2a1f4b044df8f0d244f1940a5701d1100ddc5 Mon Sep 17 00:00:00 2001 From: Kimplul Date: Tue, 25 Jul 2023 20:36:14 +0300 Subject: simplify fdt reg reading --- common/pmem.c | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) (limited to 'common/pmem.c') diff --git a/common/pmem.c b/common/pmem.c index 83c6ca3..80599ef 100644 --- a/common/pmem.c +++ b/common/pmem.c @@ -534,17 +534,11 @@ static void __mark_reserved_mem(void *fdt) uint8_t *rmem_reg = (uint8_t *)fdt_getprop(fdt, node, "reg", NULL); - pm_t base = (pm_t)fdt_load_int_ptr(ci.addr_cells, rmem_reg); - - if (ci.addr_cells == 2) - rmem_reg += sizeof(fdt64_t); - else - rmem_reg += sizeof(fdt32_t); + pm_t base = (pm_t)fdt_load_reg_addr(ci, rmem_reg, 0); /** @todo make sure the top of a reserved memory area doesn't go * against our assumptions in FW_MAX_SIZE? */ - pm_t top = - (pm_t)fdt_load_int_ptr(ci.size_cells, rmem_reg) + base; + pm_t top = (pm_t)fdt_load_reg_size(ci, rmem_reg, 0) + base; __mark_area_used((pm_t)__va(base), (pm_t)__va(top)); info("marked [%lx - %lx] reserved\n", (pm_t)__va(base), (pm_t)__va(top)); @@ -563,14 +557,8 @@ static pm_t __get_ramtop(void *fdt) int mem_offset = fdt_path_offset(fdt, "/memory"); uint8_t *mem_reg = (uint8_t *)fdt_getprop(fdt, mem_offset, "reg", NULL); - pm_t base = (pm_t)fdt_load_int_ptr(ci.addr_cells, mem_reg); - - if (ci.addr_cells == 2) - mem_reg += sizeof(fdt64_t); - else - mem_reg += sizeof(fdt32_t); - - return (pm_t)fdt_load_int_ptr(ci.size_cells, mem_reg) + base; + pm_t base = (pm_t)fdt_load_reg_addr(ci, mem_reg, 0); + return (pm_t)fdt_load_reg_size(ci, mem_reg, 0) + base; } /** -- cgit v1.3