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

📄 hostcmd.h

📁 此压缩包为杰得开发得z228的BSP的源代码,可以实现很多功能,尤其是视频解码有很好的效果.
💻 H
📖 第 1 页 / 共 5 页
字号:
	USHORT  Command;
    USHORT  Size;
    USHORT  SeqNum;
    USHORT  Result;

	USHORT	Action;
	MrvlIEtypes_DomainParamSet_t Domain;

}  HostCmd_DS_802_11D_DOMAIN_INFO, *PHostCmd_DS_802_11D_DOMAIN_INFO;

// Define data structure for HostCmd_RET_802_11D_DOMAIN_INFO 
typedef struct _HostCmd_DS_802_11D_DOMAIN_INFO_RSP 
{
	USHORT  Command;
    USHORT  Size;
    USHORT  SeqNum;
    USHORT  Result;	

	USHORT	Action;
	MrvlIEtypes_DomainParamSet_t Domain;

}  HostCmd_DS_802_11D_DOMAIN_INFO_RSP, *PHostCmd_DS_802_11D_DOMIAN_INFO_RSP;

#endif  //ENABLE_802_11D

#ifdef WPA2

typedef union _KeyInfo_WEP_t 
{
	UCHAR	Reserved;		    // bits 5-15: Reserved 
	UCHAR	WepKeyIndex;		// bits 1-4: Specifies the index of key 
	UCHAR	isWepDefaultKey;	// bit 0: Specifies that this key is to be used as the default for TX data packets 
}  KeyInfo_WEP_t;

typedef union _KeyInfo_TKIP_t 
{
	UCHAR	Reserved;		    // bits 3-15: Reserved 
	UCHAR	isKeyEnabled;		// bit 2: Specifies that this key is enabled and valid to use 
	UCHAR	isUnicastKey;		// bit 1: Specifies that this key is to be used as the unicast key 
	UCHAR	isMulticastKey;		// bit 0: Specifies that this key is to be used as the multicast key 
}  KeyInfo_TKIP_t;

typedef union _KeyInfo_AES_t
{
	UCHAR	Reserved;		    // bits 3-15: Reserved */
	UCHAR	isKeyEnabled;		// bit 2: Specifies that this key is enabled and valid to use 
	UCHAR	isUnicastKey;		// bit 1: Specifies that this key is to be used as the unicast key 
	UCHAR	isMulticastKey;		// bit 0: Specifies that this key is to be used as the multicast key 
}  KeyInfo_AES_t;

typedef struct _KeyMaterial_TKIP_t 
{
	UCHAR	TkipKey[16];		// TKIP encryption/decryption key 
	UCHAR	TkipTxMicKey[8];	// TKIP TX MIC Key 
	UCHAR	TkipRxMicKey[8];	// TKIP RX MIC Key 
}  KeyMaterial_TKIP_t, *PKeyMaterial_TKIP_t;

typedef struct _KeyMaterial_AES_t 
{
	UCHAR	AesKey[16];			// AES encryption/decryption key 
}  KeyMaterial_AES_t, *PKeyMaterial_AES_t;

typedef struct _MrvlIEtype_KeyParamSet_t 
{
	USHORT	Type;		// Type ID 
	USHORT	Length;		// Length of Payload 
	USHORT	KeyTypeId;	// Type of Key: WEP=0, TKIP=1, AES=2 
	USHORT	KeyInfo;	// Key Control Info specific to a KeyTypeId 
	USHORT	KeyLen;		// Length of key 
	UCHAR	Key[32];	// Key material of size KeyLen 
}  MrvlIEtype_KeyParamSet_t, *PMrvlIEtype_KeyParamSet_t;

typedef struct _HostCmd_DS_802_11_KEY_MATERIAL 
{
	USHORT 	Command;
    USHORT 	Size;
    USHORT 	SeqNum;
    USHORT 	Result;
	USHORT 	Action;		

	MrvlIEtype_KeyParamSet_t	KeyParamSet;	
	
}  HostCmd_DS_802_11_KEY_MATERIAL, *PHostCmd_DS_802_11_KEY_MATERIAL;

#endif	/* WPA2 */

typedef struct IEEEtypes_CfParamSet_t
{
   UCHAR  ElementId;
   UCHAR  Len;
   UCHAR  CfpCnt;
   UCHAR  CfpPeriod;
   USHORT CfpMaxDuration;
   USHORT CfpDurationRemaining;
} IEEEtypes_CfParamSet_t;

typedef struct IEEEtypes_IbssParamSet_t
{
   UCHAR  ElementId;
   UCHAR  Len;
   USHORT AtimWindow;
} IEEEtypes_IbssParamSet_t;

typedef union IEEEtypes_SsParamSet_t
{
   IEEEtypes_CfParamSet_t    CfParamSet;
   IEEEtypes_IbssParamSet_t  IbssParamSet;
} IEEEtypes_SsParamSet_t;

typedef struct IEEEtypes_FhParamSet_t
{
   UCHAR  ElementId;
   UCHAR  Len;
   USHORT DwellTime;
   UCHAR  HopSet;
   UCHAR  HopPattern;
   UCHAR  HopIndex;
} IEEEtypes_FhParamSet_t;

typedef struct IEEEtypes_DsParamSet_t
{
   UCHAR ElementId;
   UCHAR Len;
   UCHAR CurrentChan;
} IEEEtypes_DsParamSet_t;

typedef union IEEEtypes_PhyParamSet_t
{
   IEEEtypes_FhParamSet_t  FhParamSet;
   IEEEtypes_DsParamSet_t  DsParamSet;
} IEEEtypes_PhyParamSet_t;

#ifndef CCX
typedef struct _WPA_SUPPLICANT
{
	UCHAR   Wpa_ie[256];
	UCHAR	Wpa_ie_len;
} WPA_SUPPLICANT, *PWPA_SUPPLICANT;
#endif

typedef struct _BSS_DESCRIPTION_SET_ALL_FIELDS
{
    UCHAR                     BSSID[MRVDRV_ETH_ADDR_LEN];
    UCHAR                     SSID[MRVDRV_MAX_SSID_LENGTH];
    UCHAR                     BSSType;
    USHORT                    BeaconPeriod;
    UCHAR                     DTIMPeriod;
    UCHAR                     TimeStamp[8];
    UCHAR                     LocalTime[8];
    IEEEtypes_PhyParamSet_t   PhyParamSet;
    IEEEtypes_SsParamSet_t    SsParamSet;
    IEEEtypes_CapInfo_t       Cap;
    // ToDo    
    UCHAR                     DataRates[NDIS_SUPPORTED_RATES];

	USHORT 					 bss_band;	

#ifdef ENABLE_802_11D
    UCHAR                    bHaveCountryIE;
	IEEEtypes_CountryInfoFullSet_t CountryInfo;
#endif

	WPA_SUPPLICANT			 wpa_supplicant;
#ifdef WPA2
    WPA_SUPPLICANT			 wpa2_supplicant;
#endif 

#ifdef WMM
	UCHAR Wmm_IE[WMM_PARA_IE_LENGTH + 2];
	UCHAR Wmm_ie_len;
#endif 

#ifdef ENABLE_802_11H_TPC
	UCHAR Sensed11H;
	IEEEtypes_PowerConstraint_t PowerConstraint;
	IEEEtypes_PowerCapability_t PowerCapability;
	IEEEtypes_TPCReport_t 		TPCReport;
#endif

#ifdef CCX
    CCX_BSS_Info_t ccx_bss_info;
#endif

} BSS_DESCRIPTION_SET_ALL_FIELDS, *PBSS_DESCRIPTION_SET_ALL_FIELDS;


typedef struct _BSS_DESCRIPTION_SET_FIXED_FIELDS {
    UCHAR BSSID[MRVDRV_ETH_ADDR_LEN];
    UCHAR SSID[MRVDRV_MAX_SSID_LENGTH];
    UCHAR BSSType;
    USHORT BeaconPeriod;
    UCHAR DTIMPeriod;
    UCHAR TimeStamp[8];
    UCHAR LocalTime[8];
} BSS_DESCRIPTION_SET_FIXED_FIELDS, *PBSS_DESCRIPTION_SET_FIXED_FIELDS;

#pragma pack()

//=============================================================================
//          HOST COMMAND DEFINITIONS
//=============================================================================

#pragma pack(1)
//
// Definition of data structure for each command
//
// Define general data structure
typedef struct _HostCmd_DS_GEN {
    USHORT Command;
    USHORT Size;
    USHORT SeqNum;
    USHORT Result;
} HostCmd_DS_GEN, *PHostCmd_DS_GEN;


#ifdef DEEP_SLEEP
#define HostCmd_DS_802_11_DEEP_SLEEP 		HostCmd_DS_GEN
#endif 

#ifdef HOST_SLEEP  

//dralee_20060605
#define MAX_HOST_SLEEP_WAKEUP_FILETER_ENTRY  20
#define Host_Sleep_Filter_Type 0x0115
 
typedef struct _WakeUpFilterEntry 
{
    USHORT     AddressType; 
    USHORT     EthType; 
    ULONG      Ipv4Addr;
} WakeUpFilterEntry, *PWakeUpFilterEntry;

typedef struct _HostCmd_DS_HOST_WAKEUP_FILTER
{
      MrvlIEtypesHeader_t	Header;  
      WakeUpFilterEntry     entry[MAX_HOST_SLEEP_WAKEUP_FILETER_ENTRY];
} HostCmd_DS_HOST_WAKEUP_FILTER, *PHostCmd_DS_HOST_WAKEUP_FILTER;

typedef struct _HostCmd_DS_HOST_SLEEP {
	USHORT Command;
    USHORT Size;
    USHORT SeqNum;
    USHORT Result;
    ULONG  Criteria;
    UCHAR  GPIO;
    UCHAR  Gap;
    HostCmd_DS_HOST_WAKEUP_FILTER Filter;
} HostCmd_DS_HOST_SLEEP, *PHostCmd_DS_HOST_SLEEP;

#define HostCmd_DS_WAKEUP_CONFIRM 		HostCmd_DS_GEN

#endif 

// Define data structure for HostCmd_CMD_CODE_DNLD
typedef struct _HostCmd_DS_CODE_DNLD {
	USHORT	Len;
	USHORT	Type;
  UCHAR Code[4096];
} HostCmd_DS_CODE_DNLD, *PHostCmd_DS_CODE_DNLD;


// Define data structure for HostCmd_CMD_OP_PARAM_DNLD
typedef struct _HostCmd_DS_OP_PARAM_DNLD {
    UCHAR OpParam[4096];
} HostCmd_DS_OP_PARAM_DNLD, *PHostCmd_DS_OP_PARAM_DNLD;

#define MRVDRV_FW_CAPINFO_WPA  (1 << 0)
#define MRVDRV_FW_CAPINFO_PS   (1 << 1)
#define MRVDRV_FW_CAPINFO_GM   (1 << 2)


#ifdef IF_GSPI
typedef struct _HostCmd_DS_CMD_GSPI_BUS_CONFIG {
    USHORT Command;                 // Command number
    USHORT Size;                    // Size of the data structure
    USHORT SeqNum;                  // Command sequence number
    USHORT Result;                  // Result code

    USHORT Action;  /* ACT_GET / ACT_SET */
    USHORT BusDelayMode; /* Data format Bit[1:0], Delay method Bit[2] */
    USHORT HostTimeDelayToReadPort; /* Number of dummy clocks 
					    to wait for read r/w port */
    USHORT HostTimeDelayToReadregister; /* Number of dummy 
						clocks to wait for read reg */
} HostCmd_DS_CMD_GSPI_BUS_CONFIG, *PHostCmd_DS_CMD_GSPI_BUS_CONFIG;
#endif

// Define data structure for HostCmd_CMD_GET_HW_SPEC
typedef struct _HostCmd_DS_GET_HW_SPEC {
    USHORT Command;                 // Command number
    USHORT Size;                    // Size of the data structure
    USHORT SeqNum;                  // Command sequence number
    USHORT Result;                  // Result code

#ifdef INTERFACE20
    USHORT  HWIfVersion;            // version of the hardware interface
#endif // #ifdef INTERFACE20

    USHORT  Version;                 // HW version
    USHORT  NumOfWCB;                // Max. number of WCB FW can handle
    USHORT  NumOfMCastAdr;           // Max. number of Multicast address FW can handle
    UCHAR   PermanentAddr[6];        // MAC address
    USHORT  RegionCode;              // Region Code
    USHORT  NumberOfAntenna;         // Number of antenna used
    ULONG   FWReleaseNumber;         // 4 byte of FW release number, example 0x1234=1.2.3.4
    ULONG   WcbBase;
    ULONG   RxPdRdPtr;
    ULONG   RxPdWrPtr;
    ULONG   fwCapInfo;              /* Firmware Capability Info */
} HostCmd_DS_GET_HW_SPEC, *PHostCmd_DS_GET_HW_SPEC;

// Define data structure for HostCmd_CMD_EEPROM_UPDATE
typedef struct _HostCmd_DS_EEPROM_ACCESS {
    USHORT  Command;
    USHORT  Size;
    USHORT  SeqNum;
    USHORT  Result;
    USHORT  Action;                  // Detailed action or option
    USHORT  DataLength;
    ULONG   Address;                 // target address
	UCHAR   Data[1];
} HostCmd_DS_EEPROM_ACCESS, *PHostCmd_DS_EEPROM_ACCESS;

// Define data structure for HostCmd_CMD_802_11_RESET
typedef struct _HostCmd_DS_802_11_RESET {
    USHORT Command;
    USHORT Size;
    USHORT SeqNum;
    USHORT Result;
    USHORT Action;                  // ACT_NOT_REVERT_MIB, ACT_REVERT_MIB  or ACT_HALT
    USHORT Reserved;
} HostCmd_DS_802_11_RESET, *PHostCmd_DS_802_11_RESET;

#ifdef BG_SCAN
typedef struct _HostCmd_DS_802_11_BG_SCAN_CONFIG 
{
    	USHORT  	Command;
    	USHORT  	Size;
    	USHORT  	SeqNum;
    	USHORT  	Result;
    
    	USHORT		Action;
	
	// Enable 
	// 0 - Disable 1 - Enable 
	UCHAR		Enable;	
	
	// bssType 
	//  1 - Infrastructure
	//  2 - IBSS
	//  3 - any 
	UCHAR		BssType;
	
	// ChannelsPerScan 
	// No of channels to scan at one scan 
	UCHAR		ChannelsPerScan;
	
	// 0 - Discard old scan results
	// 1 - Discard new scan results 
	UCHAR		DiscardWhenFull;
	
	USHORT  	Reserved;
	
	// ScanInterval 
	ULONG		ScanInterval;
	
	// StoreCondition 
	// - SSID Match
	// - Exceed RSSI threshold
	// - SSID Match & Exceed RSSI Threshold 
	// - Always 
	ULONG		StoreCondition;	
	
	// ReportConditions 
	// - SSID Match
	// - Exceed RSSI threshold
	// - SSID Match & Exceed RSSIThreshold
	// - Exceed MaxScanResults
	// - Entire channel list scanned once 
	// - Domain Mismatch in country IE 
	//
	ULONG		ReportConditions;	

	// MaxScanResults 
	// Max scan results that will trigger 
	// a scn completion event 
	USHORT		MaxScanResults;
	
	//	attach TLV based parameters as needed, e.g.
	//	MrvlIEtypes_SsIdParamSet_t 	SsIdParamSet;
	//	MrvlIEtypes_ChanListParamSet_t	ChanListParamSet;
	//	MrvlIEtypes_NumProbes_t		NumProbes;
	//
	UCHAR   		TlvData[1];	
}  HostCmd_DS_802_11_BG_SCAN_CONFIG, *PHostCmd_DS_802_11_BG_SCAN_CONFIG;

/** HostCmd_DS_802_11_BG_SCAN_QUERY */
typedef struct _HostCmd_DS_802_11_BG_SCAN_QUERY 
{
	USHORT  	Command;
	USHORT  	Size;
	USHORT  	SeqNum;
	USHORT  	Result;

	UCHAR   		Flush;
} HostCmd_DS_802_11_BG_SCAN_QUERY, *PHostCmd_DS_802_11_BG_SCAN_QUERY;

/** HostCmd_DS_802_11_BG_SCAN_QUERY_RSP */
typedef struct _HostCmd_DS_802_11_BG_SCAN_QUERY_RSP 

⌨️ 快捷键说明

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