diff options
Diffstat (limited to 'arch/sh/boot/compressed/head_32.S')
-rw-r--r-- | arch/sh/boot/compressed/head_32.S | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/arch/sh/boot/compressed/head_32.S b/arch/sh/boot/compressed/head_32.S index 06ac31f3be88..3e150326f1fd 100644 --- a/arch/sh/boot/compressed/head_32.S +++ b/arch/sh/boot/compressed/head_32.S | |||
@@ -22,7 +22,7 @@ startup: | |||
22 | bt clear_bss | 22 | bt clear_bss |
23 | sub r0, r2 | 23 | sub r0, r2 |
24 | mov.l bss_start_addr, r0 | 24 | mov.l bss_start_addr, r0 |
25 | mov #0xe0, r1 | 25 | mov #0xffffffe0, r1 |
26 | and r1, r0 ! align cache line | 26 | and r1, r0 ! align cache line |
27 | mov.l text_start_addr, r3 | 27 | mov.l text_start_addr, r3 |
28 | mov r0, r1 | 28 | mov r0, r1 |
@@ -91,13 +91,19 @@ bss_start_addr: | |||
91 | end_addr: | 91 | end_addr: |
92 | .long _end | 92 | .long _end |
93 | init_sr: | 93 | init_sr: |
94 | .long 0x400000F0 /* Privileged mode, Bank=0, Block=0, IMASK=0xF */ | 94 | .long 0x500000F0 /* Privileged mode, Bank=0, Block=1, IMASK=0xF */ |
95 | kexec_magic: | ||
96 | .long 0x400000F0 /* magic used by kexec to parse zImage format */ | ||
95 | init_stack_addr: | 97 | init_stack_addr: |
96 | .long stack_start | 98 | .long stack_start |
97 | decompress_kernel_addr: | 99 | decompress_kernel_addr: |
98 | .long decompress_kernel | 100 | .long decompress_kernel |
99 | kernel_start_addr: | 101 | kernel_start_addr: |
102 | #ifdef CONFIG_32BIT | ||
103 | .long ___pa(_text+PAGE_SIZE) | ||
104 | #else | ||
100 | .long _text+PAGE_SIZE | 105 | .long _text+PAGE_SIZE |
106 | #endif | ||
101 | 107 | ||
102 | .align 9 | 108 | .align 9 |
103 | fake_headers_as_bzImage: | 109 | fake_headers_as_bzImage: |