2005-04-16 15:20:36 -07:00
/ *
* S3 9 0 v e r s i o n
2012-07-20 11:15:04 +02:00
* Copyright I B M C o r p . 2 0 0 0
2005-04-16 15:20:36 -07:00
* Author( s ) : H o l g e r S m o l i n s k i ( H o l g e r . S m o l i n s k i @de.ibm.com)
* /
2011-07-24 10:48:19 +02:00
# include < l i n u x / l i n k a g e . h >
2010-02-26 22:37:43 +01:00
# include < a s m / a s m - o f f s e t s . h >
2012-06-04 15:05:43 +02:00
# include < a s m / s i g p . h >
2005-04-16 15:20:36 -07:00
2011-10-30 15:16:40 +01:00
#
# store_status : Empty i m p l e m e n t a t i o n u n t i l k d u m p i s s u p p o r t e d o n 3 1 b i t
#
ENTRY( s t o r e _ s t a t u s )
br % r14
2007-03-05 23:35:43 +01:00
#
# do_ r e i p l _ a s m
# Parameter : r2 = s c h i d o f r e i p l d e v i c e
#
2011-07-24 10:48:19 +02:00
ENTRY( d o _ r e i p l _ a s m )
basr % r13 ,0
2005-04-16 15:20:36 -07:00
.Lpg0 : lpsw . L n e w p s w - . L p g 0 ( % r13 )
2006-12-04 15:40:26 +01:00
.Lpg1 : # do s t o r e s t a t u s o f a l l r e g i s t e r s
2006-09-20 15:58:49 +02:00
stm % r0 ,% r15 ,_ _ L C _ G P R E G S _ S A V E _ A R E A
stctl % c0 ,% c15 ,_ _ L C _ C R E G S _ S A V E _ A R E A
stam % a0 ,% a15 ,_ _ L C _ A R E G S _ S A V E _ A R E A
2007-03-05 23:35:43 +01:00
l % r10 ,. L d u m p _ p f x - . L p g 0 ( % r13 )
mvc _ _ L C _ P R E F I X _ S A V E _ A R E A ( 4 ) ,0 ( % r10 )
2006-09-20 15:58:49 +02:00
stckc . L c l k c m p - . L p g 0 ( % r13 )
mvc _ _ L C _ C L O C K _ C O M P _ S A V E _ A R E A ( 8 ) ,. L c l k c m p - . L p g 0 ( % r13 )
stpt _ _ L C _ C P U _ T I M E R _ S A V E _ A R E A
st % r13 , _ _ L C _ P S W _ S A V E _ A R E A + 4
lctl % c6 ,% c6 ,. L a l l - . L p g 0 ( % r13 )
2006-09-28 16:56:37 +02:00
lr % r1 ,% r2
mvc _ _ L C _ P G M _ N E W _ P S W ( 8 ) ,. L p c n e w - . L p g 0 ( % r13 )
stsch . L s c h i b - . L p g 0 ( % r13 )
oi . L s c h i b + 5 - . L p g 0 ( % r13 ) ,0 x84
.Lecs : xi . L s c h i b + 2 7 - . L p g 0 ( % r13 ) ,0 x01
msch . L s c h i b - . L p g 0 ( % r13 )
lhi % r0 ,5
.Lssch : ssch . L i p l o r b - . L p g 0 ( % r13 )
2005-04-16 15:20:36 -07:00
jz . L 0 0 1
2006-09-28 16:56:37 +02:00
brct % r0 ,. L s s c h
2005-04-16 15:20:36 -07:00
bas % r14 ,. L d i s a b - . L p g 0 ( % r13 )
2006-09-28 16:56:37 +02:00
.L001 : mvc _ _ L C _ I O _ N E W _ P S W ( 8 ) ,. L i o n e w - . L p g 0 ( % r13 )
.Ltpi : lpsw . L w a i t p s w - . L p g 0 ( % r13 )
2005-04-16 15:20:36 -07:00
.Lcont : c % r1 ,_ _ L C _ S U B C H A N N E L _ I D
jnz . L t p i
clc _ _ L C _ I O _ I N T _ P A R M ( 4 ) ,. L i p l o r b - . L p g 0 ( % r13 )
jnz . L t p i
2006-09-28 16:56:37 +02:00
tsch . L i p l i r b - . L p g 0 ( % r13 )
2005-04-16 15:20:36 -07:00
tm . L i p l i r b + 9 - . L p g 0 ( % r13 ) ,0 x b f
2006-09-28 16:56:37 +02:00
jz . L 0 0 2
bas % r14 ,. L d i s a b - . L p g 0 ( % r13 )
.L002 : tm . L i p l i r b + 8 - . L p g 0 ( % r13 ) ,0 x f3
jz . L 0 0 3
bas % r14 ,. L d i s a b - . L p g 0 ( % r13 )
2006-12-04 15:40:26 +01:00
.L003 : st % r1 ,_ _ L C _ S U B C H A N N E L _ I D
2006-09-28 16:56:37 +02:00
lpsw 0
2012-06-04 15:05:43 +02:00
sigp 0 ,0 ,S I G P _ R E S T A R T
2006-09-28 16:56:37 +02:00
.Ldisab : st % r14 ,. L d i s p s w + 4 - . L p g 0 ( % r13 )
2005-04-16 15:20:36 -07:00
lpsw . L d i s p s w - . L p g 0 ( % r13 )
2006-09-28 16:56:37 +02:00
.align 8
2006-09-20 15:58:49 +02:00
.Lclkcmp : .quad 0x0000000000000000
2005-04-16 15:20:36 -07:00
.Lall : .long 0xff000000
2007-03-05 23:35:43 +01:00
.Ldump_pfx : .long dump_prefix_page
2006-09-28 16:56:37 +02:00
.align 8
.Lnewpsw : .long 0 x0 0 0 8 0 0 0 0 ,0 x80 0 0 0 0 0 0 + . L p g 1
.Lpcnew : .long 0 x0 0 0 8 0 0 0 0 ,0 x80 0 0 0 0 0 0 + . L e c s
.Lionew : .long 0 x0 0 0 8 0 0 0 0 ,0 x80 0 0 0 0 0 0 + . L c o n t
2005-04-16 15:20:36 -07:00
.Lwaitpsw : .long 0 x0 2 0 a00 0 0 ,0 x00 0 0 0 0 0 0 + . L t p i
2006-09-28 16:56:37 +02:00
.Ldispsw : .long 0 x0 0 0 a00 0 0 ,0 x00 0 0 0 0 0 0
.Liplccws : .long 0 x0 2 0 0 0 0 0 0 ,0 x60 0 0 0 0 1 8
.long 0 x0 8 0 0 0 0 0 8 ,0 x20 0 0 0 0 0 1
2005-04-16 15:20:36 -07:00
.Liplorb : .long 0 x0 0 4 9 5 0 4 c ,0 x00 4 0 f f80
.long 0 x0 0 0 0 0 0 0 0 + . L i p l c c w s
2006-09-28 16:56:37 +02:00
.Lschib : .long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
2005-04-16 15:20:36 -07:00
.Liplirb : .long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0
.long 0 x0 0 0 0 0 0 0 0 ,0 x00 0 0 0 0 0 0