When we're using CONFIG_ARM_DEVTREE, we need to postpone machine detection
until later in setup_arch. Because ARM_DEVTREE depends on !DEBUG_LL,
we don't need the mdesc this early anyway.

We'll add support for ARM_DEVTREE && DEBUG_LL later.

Signed-off-by: Jeremy Kerr <[email protected]>

---
 arch/arm/kernel/head.S |    9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/arch/arm/kernel/head.S b/arch/arm/kernel/head.S
index 38ccbe1..66bb56f 100644
--- a/arch/arm/kernel/head.S
+++ b/arch/arm/kernel/head.S
@@ -82,9 +82,18 @@ ENTRY(stext)
        bl      __lookup_processor_type         @ r5=procinfo r9=cpuid
        movs    r10, r5                         @ invalid processor (r5=0)?
        beq     __error_p                       @ yes, error 'p'
+
+       /* If we're using the device tree for machine detection, we don't
+        * look for a machinfo here, as we'll dynamically create one in
+        * setup_arch(). ARM_DEVTREE depends on !DEBUG_LL, so we won't need
+        * any machinfo fields 'til later.
+        */
+#ifndef CONFIG_ARM_DEVTREE
        bl      __lookup_machine_type           @ r5=machinfo
        movs    r8, r5                          @ invalid machine (r5=0)?
        beq     __error_a                       @ yes, error 'a'
+#endif
+
        bl      __vet_atags
        bl      __create_page_tables
 
_______________________________________________
devicetree-discuss mailing list
[email protected]
https://lists.ozlabs.org/listinfo/devicetree-discuss

Reply via email to