2
* ioctl interface for /dev/chsc
4
* Copyright 2008 IBM Corp.
5
* Author(s): Cornelia Huck <cornelia.huck@de.ibm.com>
11
#include <linux/types.h>
12
#include <asm/chpid.h>
13
#include <asm/schid.h>
15
struct chsc_async_header {
21
struct subchannel_id sid;
22
} __attribute__ ((packed));
24
struct chsc_async_area {
25
struct chsc_async_header header;
26
__u8 data[PAGE_SIZE - 16 /* size of chsc_async_header */];
27
} __attribute__ ((packed));
30
struct chsc_response_struct {
34
__u8 data[PAGE_SIZE - 8];
35
} __attribute__ ((packed));
41
struct chsc_response_struct cpcb;
49
struct chsc_response_struct cucb;
53
struct subchannel_id schid;
55
struct chsc_response_struct scub;
64
struct chsc_conf_info {
67
struct chsc_response_struct scid;
70
struct ccl_parm_chpid {
75
struct ccl_parm_cssids {
80
struct chsc_comp_list {
86
CCL_CSS_IMG_CONF_CHAR = 5,
90
struct ccl_parm_chpid chpid;
91
struct ccl_parm_cssids cssids;
93
struct chsc_response_struct sccl;
104
struct chsc_response_struct sdcal;
107
struct chsc_cpd_info {
113
struct chsc_response_struct chpdb;
116
#define CHSC_IOCTL_MAGIC 'c'
118
#define CHSC_START _IOWR(CHSC_IOCTL_MAGIC, 0x81, struct chsc_async_area)
119
#define CHSC_INFO_CHANNEL_PATH _IOWR(CHSC_IOCTL_MAGIC, 0x82, \
121
#define CHSC_INFO_CU _IOWR(CHSC_IOCTL_MAGIC, 0x83, struct chsc_cu_cd)
122
#define CHSC_INFO_SCH_CU _IOWR(CHSC_IOCTL_MAGIC, 0x84, struct chsc_sch_cud)
123
#define CHSC_INFO_CI _IOWR(CHSC_IOCTL_MAGIC, 0x85, struct chsc_conf_info)
124
#define CHSC_INFO_CCL _IOWR(CHSC_IOCTL_MAGIC, 0x86, struct chsc_comp_list)
125
#define CHSC_INFO_CPD _IOWR(CHSC_IOCTL_MAGIC, 0x87, struct chsc_cpd_info)
126
#define CHSC_INFO_DCAL _IOWR(CHSC_IOCTL_MAGIC, 0x88, struct chsc_dcal)
130
struct css_general_char {
132
u32 dynio : 1; /* bit 12 */
134
u32 aif : 1; /* bit 41 */
136
u32 mcss : 1; /* bit 45 */
137
u32 fcs : 1; /* bit 46 */
139
u32 ext_mb : 1; /* bit 48 */
141
u32 aif_tdd : 1; /* bit 56 */
143
u32 qebsm : 1; /* bit 58 */
145
u32 aif_osa : 1; /* bit 67 */
147
u32 cib : 1; /* bit 82 */
149
u32 fcx : 1; /* bit 88 */
151
}__attribute__((packed));
153
extern struct css_general_char css_general_characteristics;
155
#endif /* __KERNEL__ */