[PATCH 0/3] lib: fdt: Remove two functions from fdtdec.c

Hi,
Simon has asked in thread https://lists.denx.de/pipermail/u-boot/2020-July/419489.html to move to ofnode functions. And by looking at it I found that fdtdec_setup_memory/banksize_fdt() can be removed to simplify conversion to ofnode. Renesas low level code is simply to convert to previous functions that's why there is no reason to keep wrappers around.
Thanks, Michal
Michal Simek (3): ARM: rmobile: Switch back to fdtdec_setup_memory/banksize_fdt() Revert "lib: fdt: Split fdtdec_setup_memory_banksize()" Revert "lib: fdt: Split fdtdec_setup_mem_size_base()"
board/renesas/rcar-common/common.c | 4 +-- include/fdtdec.h | 39 ------------------------------ lib/fdtdec.c | 29 +++++++--------------- 3 files changed, 11 insertions(+), 61 deletions(-)

The commit 361377dbdbc9 ("ARM: rmobile: Merge prior-stage firmware DT fragment into U-Boot DT on Gen3") reverted changes introduced by commit 175f5027345c ("ARM: renesas: Configure DRAM size from ATF DT fragment") that's why there is no reason to use functions with _fdt() suffix because parameter is gd->fdt_blob as is already for functions without _fdt() suffix.
Signed-off-by: Michal Simek michal.simek@xilinx.com ---
board/renesas/rcar-common/common.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/board/renesas/rcar-common/common.c b/board/renesas/rcar-common/common.c index 46dcea1f901c..5201f77e53ce 100644 --- a/board/renesas/rcar-common/common.c +++ b/board/renesas/rcar-common/common.c @@ -33,12 +33,12 @@ int fdtdec_board_setup(const void *fdt_blob)
int dram_init(void) { - return fdtdec_setup_mem_size_base_fdt(gd->fdt_blob); + return fdtdec_setup_mem_size_base(); }
int dram_init_banksize(void) { - fdtdec_setup_memory_banksize_fdt(gd->fdt_blob); + fdtdec_setup_memory_banksize();
return 0; }

On Fri, 10 Jul 2020 at 05:16, Michal Simek michal.simek@xilinx.com wrote:
The commit 361377dbdbc9 ("ARM: rmobile: Merge prior-stage firmware DT fragment into U-Boot DT on Gen3") reverted changes introduced by commit 175f5027345c ("ARM: renesas: Configure DRAM size from ATF DT fragment") that's why there is no reason to use functions with _fdt() suffix because parameter is gd->fdt_blob as is already for functions without _fdt() suffix.
Signed-off-by: Michal Simek michal.simek@xilinx.com
board/renesas/rcar-common/common.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
Reviewed-by: Simon Glass sjg@chromium.org

This reverts commit 118f4d4559a4386fa87a1e2509e84a1986b24a34.
There is no user of this split function that's why remove it.
Signed-off-by: Michal Simek michal.simek@xilinx.com ---
include/fdtdec.h | 19 ------------------- lib/fdtdec.c | 18 ++++++------------ 2 files changed, 6 insertions(+), 31 deletions(-)
diff --git a/include/fdtdec.h b/include/fdtdec.h index abd6d4267194..c9ab822c4428 100644 --- a/include/fdtdec.h +++ b/include/fdtdec.h @@ -946,25 +946,6 @@ int fdtdec_setup_mem_size_base_fdt(const void *blob); */ int fdtdec_setup_mem_size_base(void);
-/** - * fdtdec_setup_memory_banksize_fdt() - decode and populate gd->bd->bi_dram - * - * Decode the /memory 'reg' property to determine the address and size of the - * memory banks. Use this data to populate the global data board info with the - * phys address and size of memory banks. - * - * This function should be called from a boards dram_init_banksize(). This - * helper function allows for boards to query the device tree for memory bank - * information instead of hard coding the information in cases where it cannot - * be detected automatically. - * - * @param blob FDT blob - * - * @return 0 if OK, -EINVAL if the /memory node or reg property is missing or - * invalid - */ -int fdtdec_setup_memory_banksize_fdt(const void *blob); - /** * fdtdec_setup_memory_banksize() - decode and populate gd->bd->bi_dram * diff --git a/lib/fdtdec.c b/lib/fdtdec.c index 0dd7ff1ac3f7..0be41ab72774 100644 --- a/lib/fdtdec.c +++ b/lib/fdtdec.c @@ -1065,33 +1065,33 @@ int fdtdec_setup_mem_size_base(void) static int get_next_memory_node(const void *blob, int mem) { do { - mem = fdt_node_offset_by_prop_value(blob, mem, + mem = fdt_node_offset_by_prop_value(gd->fdt_blob, mem, "device_type", "memory", 7); } while (!fdtdec_get_is_enabled(blob, mem));
return mem; }
-int fdtdec_setup_memory_banksize_fdt(const void *blob) +int fdtdec_setup_memory_banksize(void) { int bank, ret, mem, reg = 0; struct fdt_resource res;
- mem = get_next_memory_node(blob, -1); + mem = get_next_memory_node(gd->fdt_blob, -1); if (mem < 0) { debug("%s: Missing /memory node\n", __func__); return -EINVAL; }
for (bank = 0; bank < CONFIG_NR_DRAM_BANKS; bank++) { - ret = fdt_get_resource(blob, mem, "reg", reg++, &res); + ret = fdt_get_resource(gd->fdt_blob, mem, "reg", reg++, &res); if (ret == -FDT_ERR_NOTFOUND) { reg = 0; - mem = get_next_memory_node(blob, mem); + mem = get_next_memory_node(gd->fdt_blob, mem); if (mem == -FDT_ERR_NOTFOUND) break;
- ret = fdt_get_resource(blob, mem, "reg", reg++, &res); + ret = fdt_get_resource(gd->fdt_blob, mem, "reg", reg++, &res); if (ret == -FDT_ERR_NOTFOUND) break; } @@ -1111,12 +1111,6 @@ int fdtdec_setup_memory_banksize_fdt(const void *blob)
return 0; } - -int fdtdec_setup_memory_banksize(void) -{ - return fdtdec_setup_memory_banksize_fdt(gd->fdt_blob); - -} #endif
#if CONFIG_IS_ENABLED(MULTI_DTB_FIT)

On Fri, 10 Jul 2020 at 05:16, Michal Simek michal.simek@xilinx.com wrote:
This reverts commit 118f4d4559a4386fa87a1e2509e84a1986b24a34.
There is no user of this split function that's why remove it.
Signed-off-by: Michal Simek michal.simek@xilinx.com
include/fdtdec.h | 19 ------------------- lib/fdtdec.c | 18 ++++++------------ 2 files changed, 6 insertions(+), 31 deletions(-)
Reviewed-by: Simon Glass sjg@chromium.org

This reverts commit 3ebe09d09a407f93022d945a205c5318239eb3f6.
There is no user of this split function that's why remove it.
Signed-off-by: Michal Simek michal.simek@xilinx.com ---
include/fdtdec.h | 20 -------------------- lib/fdtdec.c | 11 +++-------- 2 files changed, 3 insertions(+), 28 deletions(-)
diff --git a/include/fdtdec.h b/include/fdtdec.h index c9ab822c4428..760b392bdfbc 100644 --- a/include/fdtdec.h +++ b/include/fdtdec.h @@ -908,26 +908,6 @@ struct display_timing { int fdtdec_decode_display_timing(const void *blob, int node, int index, struct display_timing *config);
-/** - * fdtdec_setup_mem_size_base_fdt() - decode and setup gd->ram_size and - * gd->ram_start - * - * Decode the /memory 'reg' property to determine the size and start of the - * first memory bank, populate the global data with the size and start of the - * first bank of memory. - * - * This function should be called from a boards dram_init(). This helper - * function allows for boards to query the device tree for DRAM size and start - * address instead of hard coding the value in the case where the memory size - * and start address cannot be detected automatically. - * - * @param blob FDT blob - * - * @return 0 if OK, -EINVAL if the /memory node or reg property is missing or - * invalid - */ -int fdtdec_setup_mem_size_base_fdt(const void *blob); - /** * fdtdec_setup_mem_size_base() - decode and setup gd->ram_size and * gd->ram_start diff --git a/lib/fdtdec.c b/lib/fdtdec.c index 0be41ab72774..fa523ce2e908 100644 --- a/lib/fdtdec.c +++ b/lib/fdtdec.c @@ -1030,18 +1030,18 @@ int fdtdec_decode_display_timing(const void *blob, int parent, int index, return ret; }
-int fdtdec_setup_mem_size_base_fdt(const void *blob) +int fdtdec_setup_mem_size_base(void) { int ret, mem; struct fdt_resource res;
- mem = fdt_path_offset(blob, "/memory"); + mem = fdt_path_offset(gd->fdt_blob, "/memory"); if (mem < 0) { debug("%s: Missing /memory node\n", __func__); return -EINVAL; }
- ret = fdt_get_resource(blob, mem, "reg", 0, &res); + ret = fdt_get_resource(gd->fdt_blob, mem, "reg", 0, &res); if (ret != 0) { debug("%s: Unable to decode first memory bank\n", __func__); return -EINVAL; @@ -1055,11 +1055,6 @@ int fdtdec_setup_mem_size_base_fdt(const void *blob) return 0; }
-int fdtdec_setup_mem_size_base(void) -{ - return fdtdec_setup_mem_size_base_fdt(gd->fdt_blob); -} - #if defined(CONFIG_NR_DRAM_BANKS)
static int get_next_memory_node(const void *blob, int mem)

On Fri, 10 Jul 2020 at 05:17, Michal Simek michal.simek@xilinx.com wrote:
This reverts commit 3ebe09d09a407f93022d945a205c5318239eb3f6.
There is no user of this split function that's why remove it.
Signed-off-by: Michal Simek michal.simek@xilinx.com
include/fdtdec.h | 20 -------------------- lib/fdtdec.c | 11 +++-------- 2 files changed, 3 insertions(+), 28 deletions(-)
Reviewed-by: Simon Glass sjg@chromium.org
participants (2)
-
Michal Simek
-
Simon Glass