arm: spl: For Falcon Mode, set a default machid of ~0
authorTom Rini <trini@ti.com>
Fri, 9 Aug 2013 15:22:15 +0000 (11:22 -0400)
committerTom Rini <trini@ti.com>
Thu, 15 Aug 2013 22:38:35 +0000 (18:38 -0400)
With device trees, boards do not always set CONFIG_MACH_TYPE now, so we
must not rely on this define being set.  The kernel uses ~0 to see if we
have a valid machine number or not, so set that as the default, invalid
machine, id and only fix if CONFIG_MACH_TYPE is set.

Acked-by: Dan Murphy <dmurphy@ti.com>
Tested-by: Heiko Schocher <hs@denx.de>
Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
Signed-off-by: Tom Rini <trini@ti.com>
arch/arm/lib/spl.c

index 583bdb3ac26a6bcc88b2de2f37ffccf9467a50f3..26d0be47e59766a0dd8f55d65addabb1ce64d012 100644 (file)
@@ -45,12 +45,17 @@ void __weak board_init_f(ulong dummy)
 #ifdef CONFIG_SPL_OS_BOOT
 void __noreturn jump_to_image_linux(void *arg)
 {
+       unsigned long machid = 0xffffffff;
+#ifdef CONFIG_MACH_TYPE
+       machid = CONFIG_MACH_TYPE;
+#endif
+
        debug("Entering kernel arg pointer: 0x%p\n", arg);
        typedef void (*image_entry_arg_t)(int, int, void *)
                __attribute__ ((noreturn));
        image_entry_arg_t image_entry =
                (image_entry_arg_t) spl_image.entry_point;
        cleanup_before_linux();
-       image_entry(0, CONFIG_MACH_TYPE, arg);
+       image_entry(0, machid, arg);
 }
 #endif