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