aboutsummaryrefslogtreecommitdiffstats
path: root/arch/parisc/kernel/real2.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/parisc/kernel/real2.S')
-rw-r--r--arch/parisc/kernel/real2.S13
1 files changed, 6 insertions, 7 deletions
diff --git a/arch/parisc/kernel/real2.S b/arch/parisc/kernel/real2.S
index 47fbdae6efd5..7a92695d95a6 100644
--- a/arch/parisc/kernel/real2.S
+++ b/arch/parisc/kernel/real2.S
@@ -12,7 +12,6 @@
12#include <asm/assembly.h> 12#include <asm/assembly.h>
13 13
14#include <linux/linkage.h> 14#include <linux/linkage.h>
15#include <linux/init.h>
16 15
17 .section .bss 16 .section .bss
18 .export real_stack 17 .export real_stack
@@ -40,7 +39,7 @@ save_cr_end:
40/************************ 32-bit real-mode calls ***********************/ 39/************************ 32-bit real-mode calls ***********************/
41/* This can be called in both narrow and wide kernels */ 40/* This can be called in both narrow and wide kernels */
42 41
43 __HEAD 42 .text
44 43
45 /* unsigned long real32_call_asm(unsigned int *sp, 44 /* unsigned long real32_call_asm(unsigned int *sp,
46 * unsigned int *arg0p, 45 * unsigned int *arg0p,
@@ -114,7 +113,7 @@ ENDPROC(real32_call_asm)
114# define PUSH_CR(r, where) mfctl r, %r1 ! STREG,ma %r1, REG_SZ(where) 113# define PUSH_CR(r, where) mfctl r, %r1 ! STREG,ma %r1, REG_SZ(where)
115# define POP_CR(r, where) LDREG,mb -REG_SZ(where), %r1 ! mtctl %r1, r 114# define POP_CR(r, where) LDREG,mb -REG_SZ(where), %r1 ! mtctl %r1, r
116 115
117 __HEAD 116 .text
118save_control_regs: 117save_control_regs:
119 load32 PA(save_cr_space), %r28 118 load32 PA(save_cr_space), %r28
120 PUSH_CR(%cr24, %r28) 119 PUSH_CR(%cr24, %r28)
@@ -146,7 +145,7 @@ restore_control_regs:
146/* rfi_virt2real() and rfi_real2virt() could perhaps be adapted for 145/* rfi_virt2real() and rfi_real2virt() could perhaps be adapted for
147 * more general-purpose use by the several places which need RFIs 146 * more general-purpose use by the several places which need RFIs
148 */ 147 */
149 __HEAD 148 .text
150 .align 128 149 .align 128
151rfi_virt2real: 150rfi_virt2real:
152 /* switch to real mode... */ 151 /* switch to real mode... */
@@ -181,7 +180,7 @@ rfi_v2r_1:
181 bv 0(%r2) 180 bv 0(%r2)
182 nop 181 nop
183 182
184 __HEAD 183 .text
185 .align 128 184 .align 128
186rfi_real2virt: 185rfi_real2virt:
187 rsm PSW_SM_I,%r0 186 rsm PSW_SM_I,%r0
@@ -219,7 +218,7 @@ rfi_r2v_1:
219 218
220/************************ 64-bit real-mode calls ***********************/ 219/************************ 64-bit real-mode calls ***********************/
221/* This is only usable in wide kernels right now and will probably stay so */ 220/* This is only usable in wide kernels right now and will probably stay so */
222 __HEAD 221 .text
223 /* unsigned long real64_call_asm(unsigned long *sp, 222 /* unsigned long real64_call_asm(unsigned long *sp,
224 * unsigned long *arg0p, 223 * unsigned long *arg0p,
225 * unsigned long fn) 224 * unsigned long fn)
@@ -277,7 +276,7 @@ ENDPROC(real64_call_asm)
277 276
278#endif 277#endif
279 278
280 __HEAD 279 .text
281 /* http://lists.parisc-linux.org/hypermail/parisc-linux/10916.html 280 /* http://lists.parisc-linux.org/hypermail/parisc-linux/10916.html
282 ** GCC 3.3 and later has a new function in libgcc.a for 281 ** GCC 3.3 and later has a new function in libgcc.a for
283 ** comparing function pointers. 282 ** comparing function pointers.