Re: [PATCH 5/9] fdtdec: Support reserved-memory flags

2021-09-29 Thread Simon Glass
On Fri, 3 Sept 2021 at 07:16, Thierry Reding  wrote:
>
> From: Thierry Reding 
>
> Reserved memory nodes can have additional flags. Support reading and
> writing these flags to ensure that reserved memory nodes can be properly
> parsed and emitted.
>
> This converts support for the existing "no-map" flag to avoid extending
> the argument list for fdtdec_add_reserved_memory() to excessive length.
>
> Signed-off-by: Thierry Reding 
> ---
>  arch/arm/cpu/armv8/fsl-layerscape/soc.c |  2 +-
>  arch/riscv/lib/fdt_fixup.c  |  2 +-
>  board/nvidia/p2371-2180/p2371-2180.c|  4 ++--
>  board/nvidia/p2771-/p2771-.c|  4 ++--
>  board/nvidia/p3450-/p3450-.c|  4 ++--
>  include/fdtdec.h| 20 +++---
>  lib/fdtdec.c| 28 -
>  lib/fdtdec_test.c   |  4 ++--
>  lib/optee/optee.c   |  3 ++-
>  test/dm/fdtdec.c| 13 ++--
>  10 files changed, 50 insertions(+), 34 deletions(-)

Reviewed-by: Simon Glass 


[PATCH 5/9] fdtdec: Support reserved-memory flags

2021-09-03 Thread Thierry Reding
From: Thierry Reding 

Reserved memory nodes can have additional flags. Support reading and
writing these flags to ensure that reserved memory nodes can be properly
parsed and emitted.

This converts support for the existing "no-map" flag to avoid extending
the argument list for fdtdec_add_reserved_memory() to excessive length.

Signed-off-by: Thierry Reding 
---
 arch/arm/cpu/armv8/fsl-layerscape/soc.c |  2 +-
 arch/riscv/lib/fdt_fixup.c  |  2 +-
 board/nvidia/p2371-2180/p2371-2180.c|  4 ++--
 board/nvidia/p2771-/p2771-.c|  4 ++--
 board/nvidia/p3450-/p3450-.c|  4 ++--
 include/fdtdec.h| 20 +++---
 lib/fdtdec.c| 28 -
 lib/fdtdec_test.c   |  4 ++--
 lib/optee/optee.c   |  3 ++-
 test/dm/fdtdec.c| 13 ++--
 10 files changed, 50 insertions(+), 34 deletions(-)

diff --git a/arch/arm/cpu/armv8/fsl-layerscape/soc.c 
b/arch/arm/cpu/armv8/fsl-layerscape/soc.c
index faac618dc48a..6cebd8259a58 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/soc.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/soc.c
@@ -55,7 +55,7 @@ int ls_gic_rd_tables_init(void *blob)
lpi_base.start = addr;
lpi_base.end = addr + size - 1;
ret = fdtdec_add_reserved_memory(blob, "lpi_rd_table", &lpi_base, NULL,
-NULL, 0, false);
+NULL, 0, 0);
if (ret) {
debug("%s: failed to add reserved memory\n", __func__);
return ret;
diff --git a/arch/riscv/lib/fdt_fixup.c b/arch/riscv/lib/fdt_fixup.c
index 96c78baeb47d..8858b1bac870 100644
--- a/arch/riscv/lib/fdt_fixup.c
+++ b/arch/riscv/lib/fdt_fixup.c
@@ -76,7 +76,7 @@ int riscv_fdt_copy_resv_mem_node(const void *src, void *dst)
pmp_mem.start = addr;
pmp_mem.end = addr + size - 1;
err = fdtdec_add_reserved_memory(dst, basename, &pmp_mem,
-NULL, 0, &phandle, false);
+NULL, 0, &phandle, 0);
if (err < 0 && err != -FDT_ERR_EXISTS) {
log_err("failed to add reserved memory: %d\n", err);
return err;
diff --git a/board/nvidia/p2371-2180/p2371-2180.c 
b/board/nvidia/p2371-2180/p2371-2180.c
index bc0a133725ed..137c7d3b12c3 100644
--- a/board/nvidia/p2371-2180/p2371-2180.c
+++ b/board/nvidia/p2371-2180/p2371-2180.c
@@ -129,7 +129,7 @@ static int ft_copy_carveout(void *dst, const void *src, 
const char *node)
int err;
 
err = fdtdec_get_carveout(src, node, "memory-region", 0, &fb, NULL,
- NULL, NULL);
+ NULL, NULL, NULL);
if (err < 0) {
if (err != -FDT_ERR_NOTFOUND)
printf("failed to get carveout for %s: %d\n", node,
@@ -139,7 +139,7 @@ static int ft_copy_carveout(void *dst, const void *src, 
const char *node)
}
 
err = fdtdec_set_carveout(dst, node, "memory-region", 0, &fb,
- "framebuffer", NULL, 0);
+ "framebuffer", NULL, 0, 0);
if (err < 0) {
printf("failed to set carveout for %s: %d\n", node, err);
return err;
diff --git a/board/nvidia/p2771-/p2771-.c 
b/board/nvidia/p2771-/p2771-.c
index cde5eff02f2a..3d2653d1f075 100644
--- a/board/nvidia/p2771-/p2771-.c
+++ b/board/nvidia/p2771-/p2771-.c
@@ -105,7 +105,7 @@ static int ft_copy_carveout(void *dst, const void *src, 
const char *node)
int err;
 
err = fdtdec_get_carveout(src, node, "memory-region", 0, &fb, NULL,
- NULL, NULL);
+ NULL, NULL, NULL);
if (err < 0) {
if (err != -FDT_ERR_NOTFOUND)
printf("failed to get carveout for %s: %d\n", node,
@@ -115,7 +115,7 @@ static int ft_copy_carveout(void *dst, const void *src, 
const char *node)
}
 
err = fdtdec_set_carveout(dst, node, "memory-region", 0, &fb,
- "framebuffer", NULL, 0);
+ "framebuffer", NULL, 0, 0);
if (err < 0) {
printf("failed to set carveout for %s: %d\n", node, err);
return err;
diff --git a/board/nvidia/p3450-/p3450-.c 
b/board/nvidia/p3450-/p3450-.c
index 541863cef361..cdedea18a176 100644
--- a/board/nvidia/p3450-/p3450-.c
+++ b/board/nvidia/p3450-/p3450-.c
@@ -129,7 +129,7 @@ static int ft_copy_carveout(void *dst, const void *src, 
const char *node)
int err;
 
err = fdtdec_get_carveout(src, node, "memory-region", 0, &fb, NULL,
- NULL, NULL);
+