2 * Machine check handler definitions
4 * Copyright IBM Corp. 2000,2009
5 * Author(s): Ingo Adlung <adlung@de.ibm.com>,
6 * Martin Schwidefsky <schwidefsky@de.ibm.com>,
7 * Cornelia Huck <cornelia.huck@de.ibm.com>,
8 * Heiko Carstens <heiko.carstens@de.ibm.com>,
11 #ifndef _ASM_S390_NMI_H
12 #define _ASM_S390_NMI_H
14 #include <linux/types.h>
17 __u32 sd
: 1; /* 00 system damage */
18 __u32 pd
: 1; /* 01 instruction-processing damage */
19 __u32 sr
: 1; /* 02 system recovery */
21 __u32 cd
: 1; /* 04 timing-facility damage */
22 __u32 ed
: 1; /* 05 external damage */
24 __u32 dg
: 1; /* 07 degradation */
25 __u32 w
: 1; /* 08 warning pending */
26 __u32 cp
: 1; /* 09 channel-report pending */
27 __u32 sp
: 1; /* 10 service-processor damage */
28 __u32 ck
: 1; /* 11 channel-subsystem damage */
29 __u32
: 2; /* 12-13 */
30 __u32 b
: 1; /* 14 backed up */
32 __u32 se
: 1; /* 16 storage error uncorrected */
33 __u32 sc
: 1; /* 17 storage error corrected */
34 __u32 ke
: 1; /* 18 storage-key error uncorrected */
35 __u32 ds
: 1; /* 19 storage degradation */
36 __u32 wp
: 1; /* 20 psw mwp validity */
37 __u32 ms
: 1; /* 21 psw mask and key validity */
38 __u32 pm
: 1; /* 22 psw program mask and cc validity */
39 __u32 ia
: 1; /* 23 psw instruction address validity */
40 __u32 fa
: 1; /* 24 failing storage address validity */
42 __u32 ec
: 1; /* 26 external damage code validity */
43 __u32 fp
: 1; /* 27 floating point register validity */
44 __u32 gr
: 1; /* 28 general register validity */
45 __u32 cr
: 1; /* 29 control register validity */
47 __u32 st
: 1; /* 31 storage logical validity */
48 __u32 ie
: 1; /* 32 indirect storage error */
49 __u32 ar
: 1; /* 33 access register validity */
50 __u32 da
: 1; /* 34 delayed access exception */
51 __u32
: 7; /* 35-41 */
52 __u32 pr
: 1; /* 42 tod programmable register validity */
53 __u32 fc
: 1; /* 43 fp control register validity */
54 __u32 ap
: 1; /* 44 ancillary report */
56 __u32 ct
: 1; /* 46 cpu timer validity */
57 __u32 cc
: 1; /* 47 clock comparator validity */
58 __u32
: 16; /* 47-63 */
63 extern void s390_handle_mcck(void);
64 extern void s390_do_machine_check(struct pt_regs
*regs
);
66 #endif /* _ASM_S390_NMI_H */