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

📄 eagledev.h

📁 marvell8385 GSPI开发驱动
💻 H
📖 第 1 页 / 共 2 页
字号:
    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 + -