arch/s390/include/uapi/asm/chsc.h

Source file repositories/reference/linux-study-clean/arch/s390/include/uapi/asm/chsc.h

File Facts

System
Linux kernel
Corpus path
arch/s390/include/uapi/asm/chsc.h
Extension
.h
Size
2903 bytes
Lines
145
Domain
Architecture Layer
Bucket
arch/s390
Inferred role
Architecture Layer: implementation source
Status
source implementation candidate

Why This File Exists

CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.

Dependency Surface

Detected Declarations

Annotated Snippet

struct chsc_async_header {
	__u16 length;
	__u16 code;
	__u32 cmd_dependend;
	__u32 key : 4;
	__u32 : 28;
	struct subchannel_id sid;
};

struct chsc_async_area {
	struct chsc_async_header header;
	__u8 data[CHSC_SIZE - sizeof(struct chsc_async_header)];
};

struct chsc_header {
	__u16 length;
	__u16 code;
};

struct chsc_sync_area {
	struct chsc_header header;
	__u8 data[CHSC_SIZE - sizeof(struct chsc_header)];
};

struct chsc_response_struct {
	__u16 length;
	__u16 code;
	__u32 parms;
	__u8 data[CHSC_SIZE - 2 * sizeof(__u16) - sizeof(__u32)];
};

struct chsc_chp_cd {
	struct chp_id chpid;
	int m;
	int fmt;
	struct chsc_response_struct cpcb;
};

struct chsc_cu_cd {
	__u16 cun;
	__u8 cssid;
	int m;
	int fmt;
	struct chsc_response_struct cucb;
};

struct chsc_sch_cud {
	struct subchannel_id schid;
	int fmt;
	struct chsc_response_struct scub;
};

struct conf_id {
	int m;
	__u8 cssid;
	__u8 ssid;
};

struct chsc_conf_info {
	struct conf_id id;
	int fmt;
	struct chsc_response_struct scid;
};

struct ccl_parm_chpid {
	int m;
	struct chp_id chp;
};

struct ccl_parm_cssids {
	__u8 f_cssid;
	__u8 l_cssid;
};

struct chsc_comp_list {
	struct {
		enum {
			CCL_CU_ON_CHP = 1,
			CCL_CHP_TYPE_CAP = 2,
			CCL_CSS_IMG = 4,
			CCL_CSS_IMG_CONF_CHAR = 5,
			CCL_IOP_CHP = 6,
		} ctype;
		int fmt;
		struct ccl_parm_chpid chpid;
		struct ccl_parm_cssids cssids;
	} req;
	struct chsc_response_struct sccl;
};

Annotation

Implementation Notes