📄 eagledev.h
字号:
LARGE_INTEGER MulticastReceivedFrameCount;
LARGE_INTEGER FCSErrorCount;
// Software filter support
BOOLEAN SoftwareFilterOn;
ULONG NoOfWEPEntry;
MRVL_WEP_KEY LastAddedWEPKey;
MRVL_WEP_INFO WEP_INFO_LIST[MRVDRV_NUM_OF_WEP_INFO];
ULONG IV;
MRVL_WEP_KEY CurrentWEPKey;
BOOLEAN AdHocCreated;
BOOLEAN AdHocFailed;
ULONG AcceptAnySSID;
ULONG AutoConfig;
ULONG TxWepKey;
ULONG Preamble;
NDIS_802_11_ANTENNA TxAntenna;
NDIS_802_11_ANTENNA RxAntenna;
ULONG Channel;
ULONG TxPower;
NDIS_802_11_FRAGMENTATION_THRESHOLD FragThsd;
NDIS_802_11_RTS_THRESHOLD RTSThsd;
ULONG RTSRetryLimit;
ULONG NetworkMode;
// 0:auto, 1:1 Mbps, 2:2 Mbps, 3:5.5 Mbps,4:11 Mbps, 5:22 Mbps
ULONG DataRate;
MRVL_WEP_KEY WepKey1;
MRVL_WEP_KEY WepKey2;
MRVL_WEP_KEY WepKey3;
MRVL_WEP_KEY WepKey4;
USHORT ChannelSelect;
/// Power save
NDIS_802_11_POWER_MODE PSMode; // Ndis802_11PowerModeCAM=disable,Ndis802_11PowerModeMAX_PSP=enable
NDIS_802_11_POWER_MODE PSMode_B; // Ndis802_11PowerModeCAM=disable,Ndis802_11PowerModeMAX_PSP=enable
ULONG psState;
ULONG ulDTIM;
ULONG ulAwakeTimeStamp;
#ifdef POWERSAVE_DELAY_WORKAROUND
UCHAR ucPSCounter;
#endif
BOOLEAN RadioOn;
#if defined(SDIO) || defined(IF_SPI)
//NDIS_SPIN_LOCK lSDInterfaceLock;
//BOOLEAN bSDInterfaceIsBusy;
// Need to purge unused variables pater
//NDIS_HANDLE MiniportAdapterHandle; // handle passed to NDIS functions
NDIS_HANDLE ConfigurationHandle; // NDIS configuration handle
//NDIS_SPIN_LOCK AdapterSpinLock; // spinlock for protecting members of this adapter
//SD_MEMORY_LIST_HANDLE hWriteLookasideList;
BOOL ShutDown; // driver shutdown
#ifdef SDIO
SD_DEVICE_HANDLE hDevice; // SD device handle
#endif
WCHAR ActivePath[MAX_ACTIVE_REG_PATH]; // adapter regpath
//dralee
/*
HostCmd_DS_CODE_DNLD *p_SDIORxBufPkt;
// Set to true if interrupt timer is set
BOOLEAN MrvDrvSdioIntTimerIsSet;
// timer is used to get the thread with the correct context
NDIS_MINIPORT_TIMER MrvDrvSdioIntTimer;
*/
BOOLEAN MrvDrvSdioCheckFWReadyTimerIsSet;
NDIS_MINIPORT_TIMER MrvDrvSdioCheckFWReadyTimer;
// buffer to remember the first 32 bytes of the last pkt sent down to FW
// in case the pkt needs to be resent
UCHAR LastFWBuffer[32];
UCHAR RadioControl;
// count number of interrupt and DPC, debug only
ULONG ulINTCount;
ULONG ulDPCCount;
//dralee 072905
/*
HANDLE hTimerThread;
HANDLE hISRThread;
*/
//#ifndef MRVL_WINCE50
// NDIS_SPIN_LOCK lDPCLock;
//#endif
DWORD dwPacketSendTick;
DWORD dwEndPktSendTick;
DWORD dwInterruptTick;
// lock to protect the bDPCPending variable
//NDIS_SPIN_LOCK lDPCPendingLock;
#ifdef IF_SPI
USHORT ucGHostIntStatus;
#else
UCHAR ucGHostIntStatus;
#endif ///IF_SPI
#ifdef HOST_SLEEP
#ifdef HOST_SLEEP_PS
ULONG HostPowerState;
ULONG HostSleepAwake;
#else
BOOLEAN bHostWakeupDevRequired;
#endif
#endif
#ifdef HOST_SLEEP_SYNC_PS
ULONG bHostSleepSyncPs;
ULONG bHostWakeCfgSet;
#endif
#ifndef MRVL_WINCE50
#ifdef MRVL_MACADDRESS
USHORT MrvlMacFlag;
UCHAR MrvlAddr[MRVDRV_ETH_ADDR_LEN];
#endif
#ifdef MRVL_REGIONCODE
USHORT MrvlRegionFlag;
#endif
#ifdef MRVL_DATARATE
UCHAR MrvlDataRate[6];
USHORT MrvlDataRateFlag;
#endif
#ifdef MRVL_RXTXANTENNA
USHORT MrvlRxAntennaFlag;
USHORT MrvlTxAntennaFlag;
#endif
#ifdef MRVL_RFCHANNEL
USHORT ChannelFlag;
#endif
#ifdef MRVL_SET_RF_RADIO
UCHAR RadioFlag;
#endif
BOOLEAN TxPowerFlag;
#endif
#ifdef MRVL_PSCONFIRM
BOOLEAN bPSConfirm;
#endif
#endif //#ifdef SDIO
// QOS enabled, 0 = disabled, 1 = enabled
ULONG EnableQOS;
MRV_QOS_PARAMS QOSParams;
#ifdef MRVL_GUI_INTERFACE
/// Marvell GUI interface related variable
BOOLEAN QueryOidByIOCTL;
BOOLEAN SetOidByIOCTL;
BOOLEAN UIPresent;
ULONG Instance;
NDIS_HANDLE WrapperHandle;
BOOLEAN HiddenSSID;
BOOLEAN UIRegistered;
#endif // MRVL_GUI_INTERFACE
// L2 Roaming Parameters
UCHAR RoamingMode;
UCHAR RoamingDelta;
LONG RoamingLevel;
ULONG RoamingPeriod;
ULONG RoamingTimeCount;
UCHAR RoamingLastRSSIArray[MRVDRV_NUM_RSSI_VALUE];
UCHAR RoamingLastRSSIArrayIndex;
BOOLEAN RoamingNeedToRoam;
ULONG ulTxByteInLastPeriod;
ULONG ulRxByteInLastPeriod;
USHORT usTimeElapsedSinceLastScan;
//tt ++ v5 firmware
// BT co-existence
ULONG BTMode;
ULONG BTAntennaConfig;
ULONG BTFrequencyConfig;
ULONG BTWLANTxPriorityLo;
ULONG BTWLANTxPriorityHi;
ULONG BTWLANRxPriorityLo;
ULONG BTWLANRxPriorityHi;
ULONG BTTime;
ULONG BTTrafficType;
ULONG BTTimeShareInterval;
//tt --
#ifdef EVALBOARD_REV4_FIX
/// REV4_FIX : set to true to issue patch RF reg write
BOOLEAN bApplyEvalBoardRev4Patch;
#endif // #ifdef EVALBOARD_REV4_FIX
#ifdef DEEP_SLEEP
/// Deep Sleep related variables
BOOLEAN IsDeepSleep;
BOOLEAN IsDeepSleepRequired;
#endif
#ifdef ADHOCAES
/// Adhoc AES related variables
BOOLEAN AdhocAESEnabled;
MRVL_ADHOC_AES_KEY AdhocAesKey;
#endif
/// Multi-Bands related variable
REGION_CHANNEL region_channel[MAX_REGION_BAND_NUM];
REGION_CHANNEL *cur_region_channel;
UCHAR connected_channel;
UCHAR connected_band;
/// default values of Adhoc starter
ULONG AdhocDefaultBand;
ULONG AdhocDefaultChannel;
ULONG AdhocWiFiDataRate;
ULONG SetSD4BIT;
BOOLEAN SendPSFlag;
ULONG SdioTick;
HANDLE TxResourceControlEvent;
HANDLE hThreadReadyEvent;
HANDLE hControllerInterruptEvent;
HANDLE hPowerNotify;
HANDLE hPMUEvent;
HANDLE hControllerInterruptThread;
//HANDLE hTxEvent;
//HANDLE hTxThread;
CRITICAL_SECTION TxCriticalSection;
CRITICAL_SECTION CmdQueueExeSection;
//CRITICAL_SECTION SDIOCriticalSection;
CRITICAL_SECTION IntCriticalSection;
#ifndef TX_PRY_Q
PNDIS_PACKET SendPackets[MAX_TX_PACKETS]; // pending tx packets.
#endif
PNDIS_PACKET ReturnPacket;
ULONG TxPacketCount; // number of tx pending
ULONG TxPacketPut; // number of tx pending
ULONG TxPacketGet; // number of tx pending
ULONG TxPacketComplete;
ULONG TxPacketSend;
ULONG TxPacketSendComplete;
//ULONG NeedIndicatePacket;
//ULONG DisplayTxMsg;
//dralee port
//ULONG ResourcesEvts; //dralee_0110, dummy
//ULONG PendingTxCnt;
ULONG ulTXByteInLastPeriod;
//dralee -- 09162005, It seems unused.
// BOOLEAN bEAPOLSendPending;
//BOOLEAN bCmdDownloadLock;
ULONG bPowerUpDevice;
//dralee 20051031 for test
//ULONG txqnodeused;
ULONG sp_evt;
int deauthcnt;
//BSS_DESCRIPTION_WPA_IE CurrentWPA_IE;
// there was a TX packet request rejected
//BOOLEAN bTxPacketWaiting;
CmdCtrlNode *PSCurCmd; // Current Command
#ifdef ENABLE_802_11D
ULONG Enable80211D;
ULONG DefaultRegion;
ULONG DefaultBand;
#endif
HostCmd_DS_802_11_SLEEP_PARAMS SleepParams;
UCHAR SleepParamFlag;
#ifdef WMM
WMM_DESC WmmDesc;
UCHAR AckPolicy[4];
UCHAR AckPolicyState;
WMM_AC_STATUS WmmAcStatus[4];
UCHAR WmmStatusState;
PNDIS_PACKET CurrentTxPkt;
#endif /* WMM */
//tt ++ v5 firmware
HANDLE hOidQueryEvent;
UCHAR OidCmdRespBuf[MRVDRV_SIZE_OF_CMD_BUFFER];
ULONG nSizeOfOidCmdResp;
USHORT nOidCmdResult;
//tt --
#ifdef AUTO_REASSOCIATION
BOOLEAN ReAssociationInProgress;
BOOLEAN bIsSendCmdImterSet; // for debugging prupose only...
NDIS_MINIPORT_TIMER MrvDrvSendCmdTimer;
UINT uDelayForReAssociation; // in milliseconds
UINT uRetryForReassociation;
UINT uCurrentRetryForReassociation;
#endif
DWORD nAssocRspCount; //tt ra fail
//NDIS_MINIPORT_TIMER MrvDrvSendCompleteTimer; //tt ra fail
ULONG SdioIstThread;
#ifdef PARA_WPA_1X
//Plus++, 012706, 802.1x wep, for 802.1x eap-xxx wep issue
USHORT txKeyIndex;
USHORT txKeyLength;
UCHAR txKeyMaterial[16];
//Plus--
#endif
}MRVDRV_ADAPTER, *PMRVDRV_ADAPTER;
//dralee,
//define cause of return resources
#define RSC_PS (1<<0)
#define RSC_SCANNING (1<<1)
#define RSC_BUF_FULL (1<<2)
#pragma pack()
//dralee
typedef enum
{
// card is in full power
PS_STATE_FULL_POWER,
// PS mode, but card is ready for TX
PS_STATE_WAKEUP,
// PS Mode, card is not ready for TX
PS_STATE_SLEEP,
// SLEEP event is already received, but have not sent confirm yet
//PS_STATE_SLEEP_PENDING, dralee, 072705
} PS_STATE;
#ifdef HOST_SLEEP_PS
typedef enum
{
HTWK_STATE_FULL_POWER,
HTWK_STATE_PRESLEEP,
HTWK_STATE_SLEEP,
} HTWK_STATE;
#endif
#ifdef REASSOCIATE
// Reconnect Reason
typedef enum
{ //
RECONNECT_ASSOCIATE_FAIL =1,
//
RECONNECT_LINK_LOST,
//
RECONNECT_DEAUTHENTICATE,
//
RECONNECT_ROAMING,
//
RECONNECT_D3_TO_D0,
//
RECONNECT_DEEP_SLEEP_AWAKE,
//
RECONNECT_HIDE_SSID
} RECONNECT_REASON;
// Reconnect Type
typedef enum
{ //
RECONNECT_COUNTER_TYPE = 1,
//
RECONNECT_PERIOD_TYPE,
//
RECONNECT_RSSI_TYPE
} RECONNECT_TYPE;
#define RE_CONNECT_PERIOD_TIME 8000 // 8 sec
#endif //REASSOCIATE
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -