diff mbox series

[v2,07/13] MIPS: generic: Support booting with built-in or appended DTB

Message ID 20200812001510.460382-8-paul@crapouillou.net (mailing list archive)
State Superseded
Headers show
Series Convert Ingenic to a generic board v2 | expand

Commit Message

Paul Cercueil Aug. 12, 2020, 12:15 a.m. UTC
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 <paul@crapouillou.net>
---

Notes:
    v2: No change

 arch/mips/generic/init.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

Comments

Sergei Shtylyov Aug. 12, 2020, 9:15 a.m. UTC | #1
Hello!

On 12.08.2020 3:15, Paul Cercueil wrote:

> 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

    s/kernel/DT/?

> kernel.
> 
> Support these usecases by removing the UHI check.
> 
> Signed-off-by: Paul Cercueil <paul@crapouillou.net>
[...]

MBR, Sergei
Paul Cercueil Aug. 12, 2020, 9:21 a.m. UTC | #2
Le mer. 12 août 2020 à 12:15, Sergei Shtylyov 
<sergei.shtylyov@gmail.com> a écrit :
> Hello!
> 
> On 12.08.2020 3:15, Paul Cercueil wrote:
> 
>> 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
> 
>    s/kernel/DT/?

Ooops :)

> 
>> kernel.
>> 
>> Support these usecases by removing the UHI check.
>> 
>> Signed-off-by: Paul Cercueil <paul@crapouillou.net>
> [...]
> 
> MBR, Sergei
diff mbox series

Patch

diff --git a/arch/mips/generic/init.c b/arch/mips/generic/init.c
index 029f47ea390c..66a19337d2ab 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;