lib: utils: Add fdt_fixup_node() helper function
authorLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Fri, 2 Dec 2022 11:59:47 +0000 (11:59 +0000)
committerAnup Patel <anup@brainfault.org>
Mon, 5 Dec 2022 12:24:45 +0000 (17:54 +0530)
Add a helper function fdt_fixup_node() based on the compatible string.
This will avoid code duplication for every new node fixup being added.

Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: Bin Meng <bmeng@tinylab.org>
Reviewed-by: Xiang W <wxjstz@126.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
lib/utils/fdt/fdt_fixup.c

index d1050bb..41f6cbb 100644 (file)
@@ -74,22 +74,23 @@ static void fdt_domain_based_fixup_one(void *fdt, int nodeoff)
        }
 }
 
-void fdt_aplic_fixup(void *fdt)
+static void fdt_fixup_node(void *fdt, const char *compatible)
 {
        int noff = 0;
 
        while ((noff = fdt_node_offset_by_compatible(fdt, noff,
-                                                    "riscv,aplic")) >= 0)
+                                                    compatible)) >= 0)
                fdt_domain_based_fixup_one(fdt, noff);
 }
 
-void fdt_imsic_fixup(void *fdt)
+void fdt_aplic_fixup(void *fdt)
 {
-       int noff = 0;
+       fdt_fixup_node(fdt, "riscv,aplic");
+}
 
-       while ((noff = fdt_node_offset_by_compatible(fdt, noff,
-                                                    "riscv,imsics")) >= 0)
-               fdt_domain_based_fixup_one(fdt, noff);
+void fdt_imsic_fixup(void *fdt)
+{
+       fdt_fixup_node(fdt, "riscv,imsics");
 }
 
 void fdt_plic_fixup(void *fdt)