⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hwc.h

📁 这个linux源代码是很全面的~基本完整了~使用c编译的~由于时间问题我没有亲自测试~但就算用来做参考资料也是非常好的
💻 H
字号:
/* *  drivers/s390/char/hwc.h *  * *  S390 version *    Copyright (C) 1999 IBM Deutschland Entwicklung GmbH, IBM Corporation *    Author(s): Martin Peschke <mpeschke@de.ibm.com> * *  *  */#ifndef __HWC_H__#define __HWC_H__#define HWC_EXT_INT_PARAM_ADDR	0xFFFFFFF8#define HWC_EXT_INT_PARAM_PEND 0x00000001#define ET_OpCmd		0x01#define ET_Msg		0x02#define ET_StateChange	0x08#define ET_PMsgCmd		0x09#define ET_CntlProgOpCmd	0x20#define ET_CntlProgIdent	0x0B#define ET_SigQuiesce	0x1D#define ET_OpCmd_Mask	0x80000000#define ET_Msg_Mask		0x40000000#define ET_StateChange_Mask	0x01000000#define ET_PMsgCmd_Mask	0x00800000#define ET_CtlProgOpCmd_Mask	0x00000001#define ET_CtlProgIdent_Mask	0x00200000#define ET_SigQuiesce_Mask	0x00000008#define GMF_DOM		0x8000#define GMF_SndAlrm	0x4000#define GMF_HoldMsg	0x2000#define LTF_CntlText	0x8000#define LTF_LabelText	0x4000#define LTF_DataText	0x2000#define LTF_EndText	0x1000#define LTF_PromptText	0x0800#define HWC_COMMAND_INITIATED	0#define HWC_BUSY		2#define HWC_NOT_OPERATIONAL	3#define hwc_cmdw_t u32;#define HWC_CMDW_READDATA 0x00770005#define HWC_CMDW_WRITEDATA 0x00760005#define HWC_CMDW_WRITEMASK 0x00780005#define GDS_ID_MDSMU		0x1310#define GDS_ID_MDSRouteInfo	0x1311#define GDS_ID_AgUnWrkCorr	0x1549#define GDS_ID_SNACondReport	0x1532#define GDS_ID_CPMSU		0x1212#define GDS_ID_RoutTargInstr	0x154D#define GDS_ID_OpReq		0x8070#define GDS_ID_TextCmd		0x1320#define GDS_KEY_SelfDefTextMsg	0x31#define _HWCB_HEADER	u16	length; \			u8	function_code; \			u8	control_mask[3]; \			u16	response_code;#define _EBUF_HEADER 	u16	length; \			u8	type; \			u8	flags; \			u16	_reserved;typedef struct {	_EBUF_HEADER} __attribute__ ((packed)) evbuf_t;#define _MDB_HEADER	u16	length; \			u16	type; \			u32	tag; \			u32	revision_code;#define _GO_HEADER	u16	length; \			u16	type; \			u32	domid; \			u8	hhmmss_time[8]; \			u8	th_time[3]; \			u8	_reserved_0; \			u8	dddyyyy_date[7]; \			u8	_reserved_1; \			u16	general_msg_flags; \			u8	_reserved_2[10]; \			u8	originating_system_name[8]; \			u8	job_guest_name[8];#define _MTO_HEADER	u16	length; \			u16	type; \			u16	line_type_flags; \			u8	alarm_control; \			u8	_reserved[3];typedef struct {	_GO_HEADER} __attribute__ ((packed)) go_t;typedef struct {	go_t go;} __attribute__ ((packed)) mdb_body_t;typedef struct {	_MDB_HEADER	mdb_body_t mdb_body;} __attribute__ ((packed)) mdb_t;typedef struct {	_EBUF_HEADER	mdb_t mdb;} __attribute__ ((packed)) msgbuf_t;typedef struct {	_HWCB_HEADER	msgbuf_t msgbuf;} __attribute__ ((packed)) write_hwcb_t;typedef struct {	_MTO_HEADER} __attribute__ ((packed)) mto_t;static write_hwcb_t write_hwcb_template ={	sizeof (write_hwcb_t),	0x00,	{		0x00,		0x00,		0x00	},	0x0000,	{		sizeof (msgbuf_t),		ET_Msg,		0x00,		0x0000,		{			sizeof (mdb_t),			0x0001,			0xD4C4C240,			0x00000001,			{				{					sizeof (go_t),					0x0001				}			}		}	}};static mto_t mto_template ={	sizeof (mto_t),	0x0004,	LTF_EndText,	0x00};typedef u32 _hwcb_mask_t;typedef struct {	_HWCB_HEADER	u16 _reserved;	u16 mask_length;	_hwcb_mask_t cp_receive_mask;	_hwcb_mask_t cp_send_mask;	_hwcb_mask_t hwc_receive_mask;	_hwcb_mask_t hwc_send_mask;} __attribute__ ((packed)) init_hwcb_t;static init_hwcb_t init_hwcb_template ={	sizeof (init_hwcb_t),	0x00,	{		0x00,		0x00,		0x00	},	0x0000,	0x0000,	sizeof (_hwcb_mask_t),	ET_OpCmd_Mask | ET_PMsgCmd_Mask |	ET_StateChange_Mask | ET_SigQuiesce_Mask,	ET_Msg_Mask | ET_PMsgCmd_Mask | ET_CtlProgIdent_Mask};typedef struct {	_EBUF_HEADER	u8 validity_hwc_active_facility_mask:1;	u8 validity_hwc_receive_mask:1;	u8 validity_hwc_send_mask:1;	u8 validity_read_data_function_mask:1;	u16 _zeros:12;	u16 mask_length;	u64 hwc_active_facility_mask;	_hwcb_mask_t hwc_receive_mask;	_hwcb_mask_t hwc_send_mask;	u32 read_data_function_mask;} __attribute__ ((packed)) statechangebuf_t;#define _GDS_VECTOR_HEADER	u16	length; \				u16	gds_id;#define _GDS_SUBVECTOR_HEADER	u8	length; \				u8	key;typedef struct {	_GDS_VECTOR_HEADER} __attribute__ ((packed)) gds_vector_t;typedef struct {	_GDS_SUBVECTOR_HEADER} __attribute__ ((packed)) gds_subvector_t;typedef struct {	_HWCB_HEADER} __attribute__ ((packed)) read_hwcb_t;static read_hwcb_t read_hwcb_template ={	PAGE_SIZE,	0x00,	{		0x00,		0x00,		0x80	}};#endif				/* __HWC_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -