The plat_get_fdt() checked that the kernel was booted using UHI before
reading the 'fw_passed_dtb' variable. However, this variable is also set
when the kernel has been appended, or when it has been built into the
kernel.

Support these usecases by removing the UHI check.

Signed-off-by: Paul Cercueil <p...@crapouillou.net>
---
 arch/mips/generic/init.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/arch/mips/generic/init.c b/arch/mips/generic/init.c
index 7d82b436939e..2465537672fa 100644
--- a/arch/mips/generic/init.c
+++ b/arch/mips/generic/init.c
@@ -39,12 +39,11 @@ void __init *plat_get_fdt(void)
                /* Already set up */
                return (void *)fdt;
 
-       if ((fw_arg0 == -2) && !fdt_check_header((void *)fw_passed_dtb)) {
+       if (fw_passed_dtb && !fdt_check_header((void *)fw_passed_dtb)) {
                /*
-                * We booted using the UHI boot protocol, so we have been
-                * provided with the appropriate device tree for the board.
-                * Make use of it & search for any machine struct based upon
-                * the root compatible string.
+                * We have been provided with the appropriate device tree for
+                * the board. Make use of it & search for any machine struct
+                * based upon the root compatible string.
                 */
                fdt = (void *)fw_passed_dtb;
 
-- 
2.27.0

Reply via email to