summaryrefslogtreecommitdiff
path: root/board/emulation
diff options
context:
space:
mode:
authorSimon Glass <[email protected]>2024-11-02 11:49:42 -0600
committerTom Rini <[email protected]>2024-12-18 15:18:59 -0600
commitfc37a73e667916e15e01e0f9d189da792df2b351 (patch)
treedfbf6aa2fd3a9af4d7900f929d06ea753b009670 /board/emulation
parent447f18d00de80384df334acdbe5972762d3d1e1e (diff)
fdt: Swap the signature for board_fdt_blob_setup()
This returns a devicetree and updates a parameter with an error code. Swap it, since this fits better with the way U-Boot normally works. It also (more easily) allows leaving the existing pointer unchanged. No yaks were harmed in this change, but there is a very small code-size reduction. For sifive, the OF_BOARD option must be set for the function to be called, so there is no point in checking it again. Also OF_SEPARATE is defined always. Signed-off-by: Simon Glass <[email protected]> Reviewed-by: Matthias Brugger <[email protected]> Reviewed-by: Patrice Chotard <[email protected]> [trini: Update total_compute] Signed-off-by: Tom Rini <[email protected]>
Diffstat (limited to 'board/emulation')
-rw-r--r--board/emulation/qemu-arm/qemu-arm.c7
-rw-r--r--board/emulation/qemu-ppce500/qemu-ppce500.c12
-rw-r--r--board/emulation/qemu-riscv/qemu-riscv.c7
3 files changed, 12 insertions, 14 deletions
diff --git a/board/emulation/qemu-arm/qemu-arm.c b/board/emulation/qemu-arm/qemu-arm.c
index e0e18b4dfea..31f5a775137 100644
--- a/board/emulation/qemu-arm/qemu-arm.c
+++ b/board/emulation/qemu-arm/qemu-arm.c
@@ -149,11 +149,12 @@ int dram_init_banksize(void)
return 0;
}
-void *board_fdt_blob_setup(int *err)
+int board_fdt_blob_setup(void **fdtp)
{
- *err = 0;
/* QEMU loads a generated DTB for us at the start of RAM. */
- return (void *)CFG_SYS_SDRAM_BASE;
+ *fdtp = (void *)CFG_SYS_SDRAM_BASE;
+
+ return 0;
}
void enable_caches(void)
diff --git a/board/emulation/qemu-ppce500/qemu-ppce500.c b/board/emulation/qemu-ppce500/qemu-ppce500.c
index 58e5d5eb942..40d295dbf06 100644
--- a/board/emulation/qemu-ppce500/qemu-ppce500.c
+++ b/board/emulation/qemu-ppce500/qemu-ppce500.c
@@ -334,15 +334,11 @@ u32 cpu_mask(void)
return (1 << cpu_numcores()) - 1;
}
-/**
- * Return the virtual address of FDT that was passed by QEMU
- *
- * Return: virtual address of FDT received from QEMU in r3 register
- */
-void *board_fdt_blob_setup(int *err)
+int board_fdt_blob_setup(void **fdtp)
{
- *err = 0;
- return get_fdt_virt();
+ *fdtp = get_fdt_virt();
+
+ return 0;
}
/* See CFG_SYS_NS16550_CLK in arch/powerpc/include/asm/config.h */
diff --git a/board/emulation/qemu-riscv/qemu-riscv.c b/board/emulation/qemu-riscv/qemu-riscv.c
index e5193e31e37..a90222ea6a4 100644
--- a/board/emulation/qemu-riscv/qemu-riscv.c
+++ b/board/emulation/qemu-riscv/qemu-riscv.c
@@ -64,9 +64,10 @@ int board_fit_config_name_match(const char *name)
}
#endif
-void *board_fdt_blob_setup(int *err)
+int board_fdt_blob_setup(void **fdtp)
{
- *err = 0;
/* Stored the DTB address there during our init */
- return (void *)(ulong)gd->arch.firmware_fdt_addr;
+ *fdtp = (void *)(ulong)gd->arch.firmware_fdt_addr;
+
+ return 0;
}