On 2/16/2024 5:05 PM, Stephen Boyd wrote: > Call this function unconditionally so that we can populate an empty DTB > on platforms that don't boot with a firmware provided or builtin DTB. > When ACPI is in use, unflatten_device_tree() ignores the > 'initial_boot_params' pointer so the live DT on those systems won't be > whatever that's pointing to. Similarly, when kexec copies the DT data > the previous kernel to the new one on ACPI systems, > of_kexec_alloc_and_setup_fdt() will ignore the live DT (the empty root > one) and copy the 'initial_boot_params' data. > > Cc: Rob Herring <robh+dt@xxxxxxxxxx> > Cc: Frank Rowand <frowand.list@xxxxxxxxx> > Cc: Catalin Marinas <catalin.marinas@xxxxxxx> > Cc: Will Deacon <will@xxxxxxxxxx> > Cc: Mark Rutland <mark.rutland@xxxxxxx> > Cc: <linux-arm-kernel@xxxxxxxxxxxxxxxxxxx> > Signed-off-by: Stephen Boyd <sboyd@xxxxxxxxxx> This change looks good to me. I am working on a patch set that will benefit from this. Reviewed-by: Oreoluwa Babatunde <quic_obabatun@xxxxxxxxxxx> Regards, Oreoluwa > --- > arch/arm64/kernel/setup.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c > index 42c690bb2d60..0d210720d47d 100644 > --- a/arch/arm64/kernel/setup.c > +++ b/arch/arm64/kernel/setup.c > @@ -351,8 +351,7 @@ void __init __no_sanitize_address setup_arch(char **cmdline_p) > /* Parse the ACPI tables for possible boot-time configuration */ > acpi_boot_table_init(); > > - if (acpi_disabled) > - unflatten_device_tree(); > + unflatten_device_tree(); > > bootmem_init();