sh64: Don't use PHYSADDR() for output_addr calculation.
authorPaul Mundt <lethal@linux-sh.org>
Sat, 11 Jul 2009 17:36:25 +0000 (13:36 -0400)
committerPaul Mundt <lethal@linux-sh.org>
Sat, 11 Jul 2009 17:36:25 +0000 (13:36 -0400)
Opencode the MEMORY_START offset directly, sh64 uses a slightly different
calculation.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/boot/compressed/misc.c

index 4eb27e6..fd56a71 100644 (file)
@@ -128,10 +128,14 @@ void decompress_kernel(void)
 {
        unsigned long output_addr;
 
+#ifdef CONFIG_SUPERH64
+       output_addr = (CONFIG_MEMORY_START + 0x2000);
+#else
        output_addr = PHYSADDR((unsigned long)&_text+PAGE_SIZE);
 #ifdef CONFIG_29BIT
        output_addr |= P2SEG;
 #endif
+#endif
 
        output = (unsigned char *)output_addr;
        free_mem_ptr = (unsigned long)&_end;