Prechádzať zdrojové kódy

sh: Fix address to decompress at when CONFIG_32BIT=y

When running in 32BIT mode the P1SEG region doesn't necessarily provide
a window onto RAM (it depends how the bootloader setup the PMB). The
correct location to place the decompressed kernel is the physical
address of _text.

Signed-off-by: Matt Fleming <matt@console-pimps.org>
Matt Fleming 15 rokov pred
rodič
commit
b161313ae8
1 zmenil súbory, kde vykonal 4 pridanie a 0 odobranie
  1. 4 0
      arch/sh/boot/compressed/head_32.S

+ 4 - 0
arch/sh/boot/compressed/head_32.S

@@ -97,7 +97,11 @@ init_stack_addr:
 decompress_kernel_addr:
 	.long	decompress_kernel
 kernel_start_addr:
+#ifdef CONFIG_32BIT
+	.long	___pa(_text+PAGE_SIZE)
+#else
 	.long	_text+PAGE_SIZE
+#endif
 
 	.align	9
 fake_headers_as_bzImage: