On Tue, Dec 19, 2023 at 01:11:12PM -0800, Raymond Mao wrote: > Get devicetree from a bloblist if it exists. > If not, fallback to get FDT from the specified memory address. > > Signed-off-by: Raymond Mao <raymond....@linaro.org> > --- > board/emulation/qemu-arm/qemu-arm.c | 15 +++++++++++++-- > 1 file changed, 13 insertions(+), 2 deletions(-) > > diff --git a/board/emulation/qemu-arm/qemu-arm.c > b/board/emulation/qemu-arm/qemu-arm.c > index 72e0a97567..455c042a9a 100644 > --- a/board/emulation/qemu-arm/qemu-arm.c > +++ b/board/emulation/qemu-arm/qemu-arm.c > @@ -148,9 +148,20 @@ int dram_init_banksize(void) > > void *board_fdt_blob_setup(int *err) > { > + void *fdt = NULL; > *err = 0; > - /* QEMU loads a generated DTB for us at the start of RAM. */ > - return (void *)CFG_SYS_SDRAM_BASE; > + > + /* Check if a DTB exists in bloblist */ > + if (IS_ENABLED(CONFIG_BLOBLIST)) { > + if (bloblist_maybe_init()) > + return (void *)CFG_SYS_SDRAM_BASE; > + fdt = bloblist_find(BLOBLISTT_CONTROL_FDT, 0);
if (!bloblist_maybe_init()) fdt = bloblist_find(BLOBLISTT_CONTROL_FDT, 0); and you wont need the explicit return, since the code below will catch it > + } > + if (!fdt) > + /* QEMU loads a generated DTB for us at the start of RAM. */ > + return (void *)CFG_SYS_SDRAM_BASE; > + else and you dont need the else here either Thanks /Ilias > + return fdt; > } > > int board_bloblist_from_boot_arg(unsigned long addr, unsigned long size) > -- > 2.25.1 >