All of lore.kernel.org
 help / color / mirror / Atom feed
* question: malta doesn't use a1 for fdt from bootloader
@ 2023-12-22 17:51 dan
  2023-12-25 13:33 ` Jiaxun Yang
  0 siblings, 1 reply; 3+ messages in thread
From: dan @ 2023-12-22 17:51 UTC (permalink / raw)
  To: linux-mips


Newbie question:

I noticed while writing some test automation with QEMU and U-Boot that
the Malta kernel appears to ignore any DTB provided by the bootloader, in
favour of using the one embedded into the kernel image. Is there a
reason behind this, or is it just not a thing that's been changed since
the board was converted to use device tree?

I patched my own kernel to check $a1 as the "mips generic" kernel does,
and it seems to work, but maybe I'm missing something? I did have to
rebuild U-Boot with different CONFIG options to make use of it (I don't
khow what real hardware Malta uses for a bootloader) so perhaps it has
limited use.

If the change is acceptable in principle I'll tidy it up and submit
a patch with all the proper procedure.

Opinions welcome

-dan


diff --git a/arch/mips/mti-malta/malta-setup.c b/arch/mips/mti-malta/malta-setup.c
index 21cb3ac1237b..52e731f9b4e2 100644
--- a/arch/mips/mti-malta/malta-setup.c
+++ b/arch/mips/mti-malta/malta-setup.c
@@ -192,7 +192,9 @@ static void __init bonito_quirks_setup(void)
 
 void __init *plat_get_fdt(void)
 {
-       return (void *)__dtb_start;
+       return (fw_arg0 == -2) ?
+               (void *) (KSEG1ADDR(fw_arg1)) :
+               (void *) __dtb_start;
 }
 
 void __init plat_mem_setup(void)

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-01-03 13:51 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-22 17:51 question: malta doesn't use a1 for fdt from bootloader dan
2023-12-25 13:33 ` Jiaxun Yang
2024-01-03 13:50   ` Jiaxun Yang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.