diff options
Diffstat (limited to 'arch/s390/kernel/relocate_kernel64.S')
-rw-r--r-- | arch/s390/kernel/relocate_kernel64.S | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/s390/kernel/relocate_kernel64.S b/arch/s390/kernel/relocate_kernel64.S index 7c3ce589a7f0..35508f335688 100644 --- a/arch/s390/kernel/relocate_kernel64.S +++ b/arch/s390/kernel/relocate_kernel64.S | |||
@@ -9,6 +9,7 @@ | |||
9 | */ | 9 | */ |
10 | 10 | ||
11 | #include <linux/linkage.h> | 11 | #include <linux/linkage.h> |
12 | #include <asm/sigp.h> | ||
12 | 13 | ||
13 | /* | 14 | /* |
14 | * moves the new kernel to its destination... | 15 | * moves the new kernel to its destination... |
@@ -45,7 +46,7 @@ ENTRY(relocate_kernel) | |||
45 | diag %r0,%r0,0x308 | 46 | diag %r0,%r0,0x308 |
46 | .back: | 47 | .back: |
47 | lhi %r1,1 # mode 1 = esame | 48 | lhi %r1,1 # mode 1 = esame |
48 | sigp %r1,%r0,0x12 # switch to esame mode | 49 | sigp %r1,%r0,SIGP_SET_ARCHITECTURE # switch to esame mode |
49 | sam64 # switch to 64 bit addressing mode | 50 | sam64 # switch to 64 bit addressing mode |
50 | basr %r13,0 | 51 | basr %r13,0 |
51 | .back_base: | 52 | .back_base: |
@@ -96,7 +97,7 @@ ENTRY(relocate_kernel) | |||
96 | sam31 # 31 bit mode | 97 | sam31 # 31 bit mode |
97 | sr %r1,%r1 # erase register r1 | 98 | sr %r1,%r1 # erase register r1 |
98 | sr %r2,%r2 # erase register r2 | 99 | sr %r2,%r2 # erase register r2 |
99 | sigp %r1,%r2,0x12 # set cpuid to zero | 100 | sigp %r1,%r2,SIGP_SET_ARCHITECTURE # set cpuid to zero |
100 | lpsw 0 # hopefully start new kernel... | 101 | lpsw 0 # hopefully start new kernel... |
101 | 102 | ||
102 | .align 8 | 103 | .align 8 |