All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] MIPS: OCTEON: Fix the boot broken when using built-in DTB
@ 2021-01-09 11:49 Kevin Hao
  2021-01-18 18:24 ` Thomas Bogendoerfer
  0 siblings, 1 reply; 4+ messages in thread
From: Kevin Hao @ 2021-01-09 11:49 UTC (permalink / raw)
  To: Thomas Bogendoerfer; +Cc: linux-mips

For the OCTEON boards, it need to patch the built-in DTB before using
it. Previously it judges if it is a built-in DTB by checking
fw_passed_dtb. But after commit 37e5c69ffd41 ("MIPS: head.S: Init
fw_passed_dtb to builtin DTB", the fw_passed_dtb is initialized even
when using built-in DTB. This causes the OCTEON boards boot broken due
to an unpatched built-in DTB is used. Add more checks to judge if we
really use built-in DTB or not.

Fixed: 37e5c69ffd41 ("MIPS: head.S: Init fw_passed_dtb to builtin DTB")
Cc: stable@vger.kernel.org
Signed-off-by: Kevin Hao <haokexin@gmail.com>
---
 arch/mips/cavium-octeon/setup.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/mips/cavium-octeon/setup.c b/arch/mips/cavium-octeon/setup.c
index 982826ba0ef7..41d9c80e9666 100644
--- a/arch/mips/cavium-octeon/setup.c
+++ b/arch/mips/cavium-octeon/setup.c
@@ -1149,7 +1149,8 @@ void __init device_tree_init(void)
 	bool do_prune;
 	bool fill_mac;
 
-	if (fw_passed_dtb) {
+	if (fw_passed_dtb && (fw_passed_dtb != (ulong)&__dtb_octeon_68xx_begin) &&
+	    (fw_passed_dtb != (ulong)&__dtb_octeon_3xxx_begin)) {
 		fdt = (void *)fw_passed_dtb;
 		do_prune = false;
 		fill_mac = true;
-- 
2.29.2


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

end of thread, other threads:[~2021-01-20 22:16 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-09 11:49 [PATCH] MIPS: OCTEON: Fix the boot broken when using built-in DTB Kevin Hao
2021-01-18 18:24 ` Thomas Bogendoerfer
2021-01-19 10:56   ` Kevin Hao
2021-01-20 17:39     ` Thomas Bogendoerfer

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.