xref: /openbmc/linux/drivers/s390/cio/eadm_sch.h (revision 861e10be)
1 #ifndef EADM_SCH_H
2 #define EADM_SCH_H
3 
4 #include <linux/device.h>
5 #include <linux/timer.h>
6 #include <linux/list.h>
7 #include "orb.h"
8 
9 struct eadm_private {
10 	union orb orb;
11 	enum {EADM_IDLE, EADM_BUSY, EADM_NOT_OPER} state;
12 	struct timer_list timer;
13 	struct list_head head;
14 	struct subchannel *sch;
15 } __aligned(8);
16 
17 #define get_eadm_private(n) ((struct eadm_private *)dev_get_drvdata(&n->dev))
18 #define set_eadm_private(n, p) (dev_set_drvdata(&n->dev, p))
19 
20 #endif
21