aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/relocate_kernel64.S
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2006-09-28 10:56:37 -0400
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2006-09-28 10:56:37 -0400
commit25d83cbfaa44e1b9170c0941c3ef52ca39f54ccc (patch)
tree30d9bbc0a1051b837313edfafc40ffa6c5fbfedc /arch/s390/kernel/relocate_kernel64.S
parent52149ba6b0ddf3e9d965257cc0513193650b3ea8 (diff)
[S390] Whitespace cleanup.
Huge s390 assembly files whitespace cleanup. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/relocate_kernel64.S')
-rw-r--r--arch/s390/kernel/relocate_kernel64.S82
1 files changed, 41 insertions, 41 deletions
diff --git a/arch/s390/kernel/relocate_kernel64.S b/arch/s390/kernel/relocate_kernel64.S
index 8cdb86e8911f..4fb443042d9c 100644
--- a/arch/s390/kernel/relocate_kernel64.S
+++ b/arch/s390/kernel/relocate_kernel64.S
@@ -3,7 +3,7 @@
3 * 3 *
4 * (C) Copyright IBM Corp. 2005 4 * (C) Copyright IBM Corp. 2005
5 * 5 *
6 * Author(s): Rolf Adelsberger <adelsberger@de.ibm.com> 6 * Author(s): Rolf Adelsberger,
7 * Heiko Carstens <heiko.carstens@de.ibm.com> 7 * Heiko Carstens <heiko.carstens@de.ibm.com>
8 * 8 *
9 */ 9 */
@@ -25,10 +25,10 @@
25 .text 25 .text
26 .globl relocate_kernel 26 .globl relocate_kernel
27 relocate_kernel: 27 relocate_kernel:
28 basr %r13,0 #base address 28 basr %r13,0 # base address
29 .base: 29 .base:
30 stnsm sys_msk-.base(%r13),0xf8 #disable DAT and IRQs 30 stnsm sys_msk-.base(%r13),0xf8 # disable DAT and IRQs
31 spx zero64-.base(%r13) #absolute addressing mode 31 spx zero64-.base(%r13) # absolute addressing mode
32 stctg %c0,%c15,ctlregs-.base(%r13) 32 stctg %c0,%c15,ctlregs-.base(%r13)
33 stmg %r0,%r15,gprregs-.base(%r13) 33 stmg %r0,%r15,gprregs-.base(%r13)
34 lghi %r0,3 34 lghi %r0,3
@@ -37,16 +37,16 @@
37 la %r0,.back_pgm-.base(%r13) 37 la %r0,.back_pgm-.base(%r13)
38 stg %r0,0x1d8(%r0) 38 stg %r0,0x1d8(%r0)
39 la %r1,load_psw-.base(%r13) 39 la %r1,load_psw-.base(%r13)
40 mvc 0(8,%r0),0(%r1) 40 mvc 0(8,%r0),0(%r1)
41 la %r0,.back-.base(%r13) 41 la %r0,.back-.base(%r13)
42 st %r0,4(%r0) 42 st %r0,4(%r0)
43 oi 4(%r0),0x80 43 oi 4(%r0),0x80
44 lghi %r0,0 44 lghi %r0,0
45 diag %r0,%r0,0x308 45 diag %r0,%r0,0x308
46 .back: 46 .back:
47 lhi %r1,1 #mode 1 = esame 47 lhi %r1,1 # mode 1 = esame
48 sigp %r1,%r0,0x12 #switch to esame mode 48 sigp %r1,%r0,0x12 # switch to esame mode
49 sam64 #switch to 64 bit addressing mode 49 sam64 # switch to 64 bit addressing mode
50 basr %r13,0 50 basr %r13,0
51 .back_base: 51 .back_base:
52 oi have_diag308-.back_base(%r13),0x01 52 oi have_diag308-.back_base(%r13),0x01
@@ -56,50 +56,50 @@
56 .back_pgm: 56 .back_pgm:
57 lmg %r0,%r15,gprregs-.base(%r13) 57 lmg %r0,%r15,gprregs-.base(%r13)
58 .top: 58 .top:
59 lghi %r7,4096 #load PAGE_SIZE in r7 59 lghi %r7,4096 # load PAGE_SIZE in r7
60 lghi %r9,4096 #load PAGE_SIZE in r9 60 lghi %r9,4096 # load PAGE_SIZE in r9
61 lg %r5,0(%r2) #read another word for indirection page 61 lg %r5,0(%r2) # read another word for indirection page
62 aghi %r2,8 #increment pointer 62 aghi %r2,8 # increment pointer
63 tml %r5,0x1 #is it a destination page? 63 tml %r5,0x1 # is it a destination page?
64 je .indir_check #NO, goto "indir_check" 64 je .indir_check # NO, goto "indir_check"
65 lgr %r6,%r5 #r6 = r5 65 lgr %r6,%r5 # r6 = r5
66 nill %r6,0xf000 #mask it out and... 66 nill %r6,0xf000 # mask it out and...
67 j .top #...next iteration 67 j .top # ...next iteration
68 .indir_check: 68 .indir_check:
69 tml %r5,0x2 #is it a indirection page? 69 tml %r5,0x2 # is it a indirection page?
70 je .done_test #NO, goto "done_test" 70 je .done_test # NO, goto "done_test"
71 nill %r5,0xf000 #YES, mask out, 71 nill %r5,0xf000 # YES, mask out,
72 lgr %r2,%r5 #move it into the right register, 72 lgr %r2,%r5 # move it into the right register,
73 j .top #and read next... 73 j .top # and read next...
74 .done_test: 74 .done_test:
75 tml %r5,0x4 #is it the done indicator? 75 tml %r5,0x4 # is it the done indicator?
76 je .source_test #NO! Well, then it should be the source indicator... 76 je .source_test # NO! Well, then it should be the source indicator...
77 j .done #ok, lets finish it here... 77 j .done # ok, lets finish it here...
78 .source_test: 78 .source_test:
79 tml %r5,0x8 #it should be a source indicator... 79 tml %r5,0x8 # it should be a source indicator...
80 je .top #NO, ignore it... 80 je .top # NO, ignore it...
81 lgr %r8,%r5 #r8 = r5 81 lgr %r8,%r5 # r8 = r5
82 nill %r8,0xf000 #masking 82 nill %r8,0xf000 # masking
83 0: mvcle %r6,%r8,0x0 #copy PAGE_SIZE bytes from r8 to r6 - pad with 0 83 0: mvcle %r6,%r8,0x0 # copy PAGE_SIZE bytes from r8 to r6 - pad with 0
84 jo 0b 84 jo 0b
85 j .top 85 j .top
86 .done: 86 .done:
87 sgr %r0,%r0 #clear register r0 87 sgr %r0,%r0 # clear register r0
88 la %r4,load_psw-.base(%r13) #load psw-address into the register 88 la %r4,load_psw-.base(%r13) # load psw-address into the register
89 o %r3,4(%r4) #or load address into psw 89 o %r3,4(%r4) # or load address into psw
90 st %r3,4(%r4) 90 st %r3,4(%r4)
91 mvc 0(8,%r0),0(%r4) #copy psw to absolute address 0 91 mvc 0(8,%r0),0(%r4) # copy psw to absolute address 0
92 tm have_diag308-.base(%r13),0x01 92 tm have_diag308-.base(%r13),0x01
93 jno .no_diag308 93 jno .no_diag308
94 diag %r0,%r0,0x308 94 diag %r0,%r0,0x308
95 .no_diag308: 95 .no_diag308:
96 sam31 #31 bit mode 96 sam31 # 31 bit mode
97 sr %r1,%r1 #erase register r1 97 sr %r1,%r1 # erase register r1
98 sr %r2,%r2 #erase register r2 98 sr %r2,%r2 # erase register r2
99 sigp %r1,%r2,0x12 #set cpuid to zero 99 sigp %r1,%r2,0x12 # set cpuid to zero
100 lpsw 0 #hopefully start new kernel... 100 lpsw 0 # hopefully start new kernel...
101 101
102 .align 8 102 .align 8
103 zero64: 103 zero64:
104 .quad 0 104 .quad 0
105 load_psw: 105 load_psw: