Don't switch back to 24 bit addressing mode when waiting for an external
interrupt and set the correct bit in wait PSW (external mask instead of I/O
mask).
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
 .Lcr:
        .long 0x00                      # place holder for cr0
 .Lwaitsclp:
-       .long 0x020A0000
-       .long .Lsclph
+       .long 0x010a0000,0x80000000 + .Lsclph
 .Lrcp:
        .int 0x00120001                 # Read SCP forced code
 .Lrcp2:
 
        be    .Lfchunk-.LPG1(%r13)      # leave
        chi   %r1,2
        be    .Lservicecall-.LPG1(%r13)
-       lpsw  .Lwaitsclp-.LPG1(%r13)
+       lpswe .Lwaitsclp-.LPG1(%r13)
 .Lsclph:
        lh    %r1,.Lsccbr-PARMAREA(%r4)
        chi   %r1,0x10                  # 0x0010 is the sucess code
 .Lcr:
        .quad 0x00  # place holder for cr0
 .Lwaitsclp:
-       .long 0x020A0000
-       .quad .Lsclph
+       .quad  0x0102000180000000,.Lsclph
 .Lrcp:
        .int 0x00120001 # Read SCP forced code
 .Lrcp2: