]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/sh/kernel/relocate_kernel.S
sh: simplify kexec vbr code
[linux-2.6-omap-h63xx.git] / arch / sh / kernel / relocate_kernel.S
index b0695cffec6ebf96d98c9f77d5d22bb8f49a1938..8b50b2c873a4e38a1269564025c5ae523ed281cb 100644 (file)
@@ -7,22 +7,18 @@
  * This source code is licensed under the GNU General Public License,
  * Version 2.  See the file COPYING for more details.
  */
-
-#include <linux/config.h>
 #include <linux/linkage.h>
-
-#define PAGE_SIZE      4096 /* must be same value as in <asm/page.h> */
-
+#include <asm/addrspace.h>
+#include <asm/page.h>
 
                .globl relocate_new_kernel
 relocate_new_kernel:
        /* r4 = indirection_page   */
        /* r5 = reboot_code_buffer */
        /* r6 = start_address      */
-       /* r7 = vbr_reg            */
 
-       mov.l   10f,r8    /* 4096 */
-       mov.l   11f,r9    /* 0xa0000000 */
+       mov.l   10f,r8    /* PAGE_SIZE */
+       mov.l   11f,r9    /* P2SEG */
 
        /*  stack setting */
        add     r8,r5
@@ -33,7 +29,7 @@ relocate_new_kernel:
 0:
        mov.l   @r4+,r0   /* cmd = *ind++ */
 
-1:     /* addr = (cmd | 0xa0000000) & 0xfffffff0 */
+1:     /* addr = (cmd | P2SEG) & 0xfffffff0 */
        mov     r0,r2
        or      r9,r2
        mov     #-16,r1
@@ -83,9 +79,6 @@ relocate_new_kernel:
        bra     0b
        nop
 6:
-#ifdef CONFIG_SH_STANDARD_BIOS
-       ldc   r7, vbr
-#endif
        jmp @r6
        nop
 
@@ -93,7 +86,7 @@ relocate_new_kernel:
 10:
        .long   PAGE_SIZE
 11:
-       .long   0xa0000000
+       .long   P2SEG
 
 relocate_new_kernel_end: