aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHelge Deller <deller@gmx.de>2017-06-08 16:11:00 -0400
committerHelge Deller <deller@gmx.de>2017-06-09 05:34:56 -0400
commitf02e6c61bc1f5004ae37a539a1436af12eda6172 (patch)
tree4dd0d0259613f27c2bfcc049b5cf380e4834a648
parent3f4fb1084d9453c0b0fa2a7f51fe7e7d99b6722f (diff)
parisc: Don't hardcode PSW values in hpmc code
Signed-off-by: Helge Deller <deller@gmx.de>
-rw-r--r--arch/parisc/kernel/hpmc.S5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/parisc/kernel/hpmc.S b/arch/parisc/kernel/hpmc.S
index 0fbd0a0e1cda..e3a8e5e4d5de 100644
--- a/arch/parisc/kernel/hpmc.S
+++ b/arch/parisc/kernel/hpmc.S
@@ -44,6 +44,7 @@
44 44
45#include <asm/assembly.h> 45#include <asm/assembly.h>
46#include <asm/pdc.h> 46#include <asm/pdc.h>
47#include <asm/psw.h>
47 48
48#include <linux/linkage.h> 49#include <linux/linkage.h>
49#include <linux/init.h> 50#include <linux/init.h>
@@ -135,7 +136,7 @@ ENTRY_CFI(os_hpmc)
135 * So turn on the Q bit and turn off the M bit. 136 * So turn on the Q bit and turn off the M bit.
136 */ 137 */
137 138
138 ldo 8(%r0),%r4 /* PSW Q on, PSW M off */ 139 ldi PSW_SM_Q,%r4 /* PSW Q on, PSW M off */
139 mtctl %r4,ipsw 140 mtctl %r4,ipsw
140 mtctl %r0,pcsq 141 mtctl %r0,pcsq
141 mtctl %r0,pcsq 142 mtctl %r0,pcsq
@@ -257,7 +258,7 @@ os_hpmc_5:
257 258
258 tovirt_r1 %r30 /* make sp virtual */ 259 tovirt_r1 %r30 /* make sp virtual */
259 260
260 rsm 8,%r0 /* Clear Q bit */ 261 rsm PSW_SM_Q,%r0 /* Clear Q bit */
261 ldi 1,%r8 /* Set trap code to "1" for HPMC */ 262 ldi 1,%r8 /* Set trap code to "1" for HPMC */
262 load32 PA(intr_save),%r1 263 load32 PA(intr_save),%r1
263 be 0(%sr7,%r1) 264 be 0(%sr7,%r1)