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

📄 base_comm.h

📁 linux intel 网卡驱动,利用他可以让inel的pro 100 网卡进行网络配置和实用
💻 H
📖 第 1 页 / 共 2 页
字号:
	UINT32 LinkStatus;			// Cast from IANS_BD_LINK_STATUS	UINT32 LinkSpeed;			// Cast from IANS_BD_LINK_SPEED	UINT32 Duplex;				// Cast from IANS_BD_DUPLEX_STATUS	UINT32 HardwareFailure;		// Cast from IANS_BD_HW_FAILURE	UINT32 DuringResetProcess;	// Cast from IANS_BD_RESET_STAGE	UINT32 Suspended;			// Cast from IANS_BD_SUSPENDED_STAGE	UINT32 HotPlug;				// Cast from IANS_BD_HOT_PLUG_STATUS} IANS_BD_PARAM_STATUS, *PIANS_BD_PARAM_STATUS;/*--------------------------------------------------------------------* | Status ioctl result | =================== | This structure is the struct sent as a response to the GET_STATUS | request ioctl. It contains the ioctl header, and the status struct. *--------------------------------------------------------------------*/typedef struct _IANS_BD_IOC_PARAM_STATUS {	IANS_BD_PARAM_HEADER Header;		 // Common to all commands	IANS_BD_PARAM_STATUS Status;} IANS_BD_IOC_PARAM_STATUS, *PIANS_BD_IOC_PARAM_STATUS;/*--------------------------------------------------------------------* | Indication | ========== | This enum value is sent by the notify call back function | called by the base driver for indication purposes. *--------------------------------------------------------------------*/typedef enum _IANS_INDICATION {	// ---------- Basic Extention Indications ---------- //	IANS_IND_EXT_HWMODIFY,	IANS_IND_EXT_STATUS_CHANGE,	//Report a new status	IANS_IND_XMIT_QUEUE_FULL,	// start transmit through this member	IANS_IND_XMIT_QUEUE_READY,	// stop transmit through this member	IANS_IND_COMMA				// Dummy to satisfy last ifdef'ed commma} IANS_INDICATION, *PIANS_INDICATION;typedef struct _IANS_BD_ANS_SET_CB {	IANS_BD_PARAM_HEADER Header;	void *notify;} IANS_BD_ANS_SET_CB, *PIANS_BD_ANS_SET_CB;/*--------------------------------------------------------------------* | Identify yourself struct | ======================== | This struct is sent with the IANS_BD_IDENTIFY request. | iANS fills its signature string and version number, and sends it to | the base driver. The base driver fills its own signature string and | version and returns it. *--------------------------------------------------------------------*/typedef struct _IANS_BD_PARAM_IDENTIFY {	IANS_BD_PARAM_HEADER Header;				// Common to all commands	UCHAR iANSSignature[IANS_SIGNATURE_LENGTH];	// iANS fills copyright string	UCHAR BDSignature[IANS_SIGNATURE_LENGTH];	// BD fills copyright string	UINT32 iANSCommVersion;						// iANS supported comm. version												// Upper word = major version number												// lower word = minor version number	UINT32 BDCommVersion;						// Base driver supported comm. version} IANS_BD_PARAM_IDENTIFY, *PIANS_BD_PARAM_IDENTIFY;/*--------------------------------------------------------------------* | Get Extended capabilities parameters struct | =========================================== | This struct is sent with IANS_OP_EXT_GET_CAPABILITY - to be filled | by the base driver and sent to iANS *--------------------------------------------------------------------*/#define IANS_BD_FLAG1	0x0001#define IANS_BD_FLAG2	0x0002#define IANS_BD_FLAG3	0x0004#define IANS_BD_FLAG4	0x0008#define IANS_BD_FLAG5	0x0010#define IANS_BD_FLAG6	0x0020#define IANS_BD_FLAG7	0x0040#define IANS_BD_FLAG8	0x0080typedef struct _IANS_BD_PARAM_EXT_CAP {	IANS_BD_PARAM_HEADER Header;	// Common to all commands	UINT32 BDCanSetMacAddress;		// MAC Address setting - cast from IANS_BD_SUPPORT	UINT32 BDIansStatusVersion;		// Status indication with iANS struct - which version is supported	UINT32 BDAllAvailableRouting;	// Bitmask of all available Rx/Event * routings. IANS_BD_ROUTING	UINT32 BDFlags;					// The adapter's flags	UINT32 BDAllAvailableSpeeds;	// A bit mask of all available speeds} IANS_BD_PARAM_EXT_CAP, *PIANS_BD_PARAM_EXT_CAP;/*--------------------------------------------------------------------* | Set Extended mode parameters struct | =================================== | This struct is sent with IANS_OP_EXT_SET_MODE - to be filled | by iANS and sent to the base driver | | iANS tells the base driver whether to report its status through | the extended struct or not. *--------------------------------------------------------------------*/typedef struct _IANS_BD_PARAM_EXT_SET_MODE {	IANS_BD_PARAM_HEADER Header;	// Common to all commands	UINT32 BDIansStatusReport;		// Ask the base driver to report status through									// status struct.									// Cast from IANS_BD_REQUEST.	UINT32 BDIansAttributedMode;	// Ask the base driver to send and receive									// packets accompanied by a per-frame data structure									// Cast from IANS_BD_REQUEST.	UINT32 BDIansRoutingMode;		// Bitmask of one Rx and one IANS_BD_ROUTING} IANS_BD_PARAM_EXT_SET_MODE, *PIANS_BD_PARAM_EXT_SET_MODE;/*--------------------------------------------------------------------* | Get Vlan tagging capabilities | ============================= | This struct is sent with the IANS_OP_ITAG_GET_CAPABILITY ioctl, to be filled | by the base driver. *--------------------------------------------------------------------*/typedef struct _IANS_BD_PARAM_ITAG_CAP {	IANS_BD_PARAM_HEADER Header;	// Common to all commands	UINT32 ISLTagMode;				// cast from IANS_BD_SUPPORT	UINT32 IEEE802_3acTagMode;		// cast from IANS_BD_SUPPORT} IANS_BD_PARAM_ITAG_CAP, *PIANS_BD_PARAM_ITAG_CAP;/*--------------------------------------------------------------------*| Set Vlan tagging mode| =====================| This struct is sent with the IANS_OP_ITAG_SET_MODE ioctl, to be filled| by iANS.*--------------------------------------------------------------------*/typedef enum _IANS_BD_TAGGING_MODE {	IANS_BD_TAGGING_NONE =0,	IANS_BD_TAGGING_802_3AC,	IANS_BD_TAGGING_ISL,	IANS_BD_TAGGING_UNDEFINED}IANS_BD_TAGGING_MODE, *PIANS_BD_TAGGING_MODE ;typedef struct _IANS_BD_PARAM_ITAG_SET_MODE {	IANS_BD_PARAM_HEADER Header;	// Common to all commands	UINT32 SetTagMode;				// cast from IANS_BD_TAGGING_MODE} IANS_BD_PARAM_ITAG_SET_MODE, *PIANS_BD_PARAM_ITAG_SET_MODE;/*--------------------------------------------------------------------* | Get Vlan ID capabilities | ======================== | This struct is sent with the IANS_OP_IVLAN_ID_GET_CAPABILITY ioctl, | to be filled by the base driver *--------------------------------------------------------------------*/typedef struct _IANS_BD_PARAM_IVLAN_CAP {	IANS_BD_PARAM_HEADER Header;	// Common to all commands	UINT32 VlanIDCapable;			// Cast from IANS_BD_SUPPORT	UINT32 VlanIDFilteringAble;		// Cast from IANS_BD_SUPPORT	UINT16 MaxVlanIDSupported;		// Max. VLan ID supported by BD	UINT32 MaxVlanTableSize;		// Max. number of VLan IDs in a table} IANS_BD_PARAM_IVLAN_CAP, *PIANS_BD_PARAM_IVLAN_CAP;/*--------------------------------------------------------------------* | Set Vlan ID mode | ================ | This struct is sent with the IANS_OP_IVLAN_ID_SET_MODE ioctl, filled | by the iANS *--------------------------------------------------------------------*/typedef struct _IANS_BD_PARAM_IVLAN_SET_MODE {	IANS_BD_PARAM_HEADER Header;	// Common to all commands	UINT32 VlanIDRequest;			// Cast from IANS_BD_REQUEST	UINT32 VlanIDFilteringRequest;	// Cast from IANS_BD_REQUEST} IANS_BD_PARAM_IVLAN_SET_MODE, *PIANS_BD_PARAM_IVLAN_SET_MODE;/*--------------------------------------------------------------------* | Set Vlan ID filtering table | =========================== | This struct is sent with the IANS_OP_IVLAN_ID_SET_TABLE request *--------------------------------------------------------------------*/typedef struct _IANS_BD_PARAM_IVLAN_TABLE {	IANS_BD_PARAM_HEADER Header;	// Common to all commands	UINT32 VLanIDNum;				// Number of VLan IDs defined in this table	UINT16 *VLanIDTable;			// Pointer to VLan ID table.									// iANS will dynamically allocate									// this table - we don't want to									// force this struct to be									// as big as the maximum number of									// VLan IDs.} IANS_BD_PARAM_IVLAN_TABLE, *PIANS_BD_PARAM_IVLAN_TABLE;/*--------------------------------------------------------------------* | PER_FRAME_ATTRIBUE_HEADER | ========================= | This header will be included in every TLV *--------------------------------------------------------------------*/typedef struct _Per_Frame_Attribute_Header {	UINT32 AttributeID;		// Indicates which kind of data is contained in this field	UINT32 AttributeLength;	// Length of this attribute} Per_Frame_Attribute_Header, *pPer_Frame_Attribute_Header;/*==========================================================================**																			** Per-Message Attributes													**																			**==========================================================================*/typedef struct _IANS_ATTR_HEADER {	pPer_Frame_Attribute_Header pFirstTLV;	// NULL if not attributed	UINT32 OriginalProtocol;} IANS_ATTR_HEADER, *PIANS_ATTR_HEADER;/*--------------------------------------------------------------------* | Attribute IDs | ============= | These values indicate which type of attribute is contained in a | certain TLV. *--------------------------------------------------------------------*/typedef enum _iANS_Attribute_ID {	IANS_ATTR_LAST_ATTR=0,				// Marks the last attribute in a list	IANS_ATTR_DUMMY,					// Non-initiating side should ignore this attribute	IANS_ATTR_VLAN_FIRST = 0x100,		// skip over reserved area	IANS_ATTR_VLAN_ID,					// This attribute contains the VLan ID	IANS_ATTR_TAGGING_FIRST = 0x200,	// skip over reserved area	IANS_ATTR_TAGGING_UNTAGGED,			// This determines that frame is untagged	IANS_ATTR_COMMA} iANS_Attribute_ID, *piANS_Attribute_ID;/*-------------------------------------------------------------------| VLAN_ID_PER_FRAME_INFO| ======================| This structure contains only the VLanID per-frame information. -------------------------------------------------------------------*/typedef struct _VLAN_ID_Per_Frame_Info {	Per_Frame_Attribute_Header AttrHeader;	UINT16 VLanID;	UCHAR Padding[2];} VLAN_ID_Per_Frame_Info, *pVLAN_ID_Per_Frame_Info ;/*-------------------------------------------------------------------| Untagged_Attribute| ==================| This structure is for the "untagged" attribute(used to indicate| that frame is untagged). -------------------------------------------------------------------*/typedef struct _Untagged_Attribute {	Per_Frame_Attribute_Header AttrHeader;} Untagged_Attribute, *pUntagged_Attribute ;/*-------------------------------------------------------------------| LAST_ATTRIBUTE| ==============| This structure is for the last attribute in the TLV list. -------------------------------------------------------------------*/typedef struct _Last_Attribute {	Per_Frame_Attribute_Header LastHeader;} Last_Attribute, *pLast_Attribute ;/*==========================================================================**																			** Rx Routing																**																			**==========================================================================*/#define IANS_FRAME_TYPE		0x6D88	// Network order is 0x886D// Restore packing mode.#pragma pack()#endif //_BASE_COMM_H

⌨️ 快捷键说明

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