]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - arch/s390/include/asm/stp.h
Merge branch 'for-4.8/core' of git://git.kernel.dk/linux-block
[karo-tx-linux.git] / arch / s390 / include / asm / stp.h
1 /*
2  *  Copyright IBM Corp. 2006
3  *  Author(s): Martin Schwidefsky (schwidefsky@de.ibm.com)
4  */
5 #ifndef __S390_STP_H
6 #define __S390_STP_H
7
8 /* notifier for syncs */
9 extern struct atomic_notifier_head s390_epoch_delta_notifier;
10
11 /* STP interruption parameter */
12 struct stp_irq_parm {
13         unsigned int _pad0      : 14;
14         unsigned int tsc        : 1;    /* Timing status change */
15         unsigned int lac        : 1;    /* Link availability change */
16         unsigned int tcpc       : 1;    /* Time control parameter change */
17         unsigned int _pad2      : 15;
18 } __attribute__ ((packed));
19
20 #define STP_OP_SYNC     1
21 #define STP_OP_CTRL     3
22
23 struct stp_sstpi {
24         unsigned int rsvd0;
25         unsigned int rsvd1 : 8;
26         unsigned int stratum : 8;
27         unsigned int vbits : 16;
28         unsigned int leaps : 16;
29         unsigned int tmd : 4;
30         unsigned int ctn : 4;
31         unsigned int rsvd2 : 3;
32         unsigned int c : 1;
33         unsigned int tst : 4;
34         unsigned int tzo : 16;
35         unsigned int dsto : 16;
36         unsigned int ctrl : 16;
37         unsigned int rsvd3 : 16;
38         unsigned int tto;
39         unsigned int rsvd4;
40         unsigned int ctnid[3];
41         unsigned int rsvd5;
42         unsigned int todoff[4];
43         unsigned int rsvd6[48];
44 } __attribute__ ((packed));
45
46 /* Functions needed by the machine check handler */
47 int stp_sync_check(void);
48 int stp_island_check(void);
49 void stp_queue_work(void);
50
51 #endif /* __S390_STP_H */