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

📄 eagledev.h

📁 此压缩包为杰得开发得z228的BSP的源代码,可以实现很多功能,尤其是视频解码有很好的效果.
💻 H
📖 第 1 页 / 共 2 页
字号:
	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(IF_SDIO) || defined(IF_GSPI)
    //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 IF_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;
	  */
    #if 0      
    //dralee_20060613
    //BOOLEAN				MrvDrvIntWorkAroundTimerIsSet;
    NDIS_MINIPORT_TIMER MrvDrvIntWorkAroundTimer;
    #endif

    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;
      ULONG                       IntWARTimeoutCount;
    
    //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_GSPI
	USHORT						ucGHostIntStatus;
	#else   
	  UCHAR                      ucGHostIntStatus;
	#endif ///IF_GSPI
#ifdef HOST_SLEEP
    #ifdef HOST_SLEEP_PS
    ULONG                      HostPowerState;
    #else
    BOOLEAN			               bHostWakeupDevRequired;
    #endif
#endif
	
    //dralee_20060515
    ULONG                      SleepCfgRestoreTick;
    //ULONG                      bHostSleepSyncPs; 
    ULONG                      bHostWakeCfgSet; 

#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  //IF_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;
	HostCmd_DS_802_11_KEY_MATERIAL		aeskey;
#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 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;    
    //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

#ifdef PMKID_CACHE_CAP
	UINT			NumOfPmkid;
	PMKID_CACHE	PmkidCache[MAX_PMKID_CACHE];
	NDIS_802_11_STATUS_INDICATION		RSNStatusIndicated;
	NDIS_802_11_PMKID_CANDIDATELIST	RSNPmkidCandidateList;
	PMKID_CANDIDATE					PmkidCandidateArray[MAX_PMKID_CANDIDATE];
#endif

	DWORD	nAssocRspCount; //tt ra fail
	//NDIS_MINIPORT_TIMER		MrvDrvSendCompleteTimer; //tt ra fail	

     ULONG            SdioIstThread;

    //Plus++, 012706,  802.1x wep, for 802.1x eap-xxx wep issue   	 
     USHORT  txKeyIndex; 
     USHORT  txKeyLength;
     UCHAR    txKeyMaterial[16];   
    //Plus--	 

    //Plus++, 012606(for Broadcom mix mode fix)
	WPA_SUPPLICANT		wpa2_supplicant;
   //Plus--, 012606  

    //++dralee_20060327
    ULONG TxLock;
    USHORT sleepperiod;  

#ifdef AvoidOidSetScan
    NDIS_MINIPORT_TIMER	    MrvDrvAvoidScanAfterConnectedTimer; 
    BOOLEAN                            bAvoidScanAfterConnectedforMSecs;
    ULONG                       	    AvoidScanTime;	
#endif
	///assoc-patch ++
	UCHAR		fmver[4];
	///assoc-patch --
	///crlo:filter_32_ESSID ++
	DWORD		ESSID_32;
	///crlo:filter_32_ESSID --
	///crlo:Multicast ++
	DWORD		allowMultiCast;
	///crlo:Multicast --

    // tt mic error ++
    BOOLEAN                             bMicErrorIsHappened;
    // tt mic error --
    // tt ++ mic error 2
    ULONG                                   ulMicErrorStartTime;
    // tt --

	#ifdef CCX

	///crlo:fastroam ++
	///#ifdef CCX_FASTROAM
	CCX_AP_INFO	ccxCurrentAP;
	CCX_AP_INFO	ccxLastAP;
	int			assocChannel;
	BOOLEAN		isCiscoAP;
	BOOLEAN		privacyEnabled;
	///#endif ///CCX_FASTROAM
	///crlo:fastroam --
	///crlo:RadioMeasure ++
	///#ifdef CCX_RADIOMEASURE
	WORD		dialogToken;
	WORD		MeasureToken;
	BYTE		MeasureMode;
	WORD		MeasureDuration;
	DWORD		parentTSF;

	BOOLEAN		isPassiveScan;		/// Passive/Active scan
	BYTE		ChannelNum;		///The channel we need to scan
	WORD		MeasureDurtion;		///Scan duration
	///#endif ///CCX_RADIOMEASURE
	///crlo:RadioMeasure --
	#endif ///CCX
	#ifdef BG_SCAN
	 UCHAR              BgScanCfg[LENGTH_BGSCAN_CFG];
        ULONG            nBgScanCfg;	   
       BOOLEAN                                           	bBgScanEnabled;
	 ULONG          bActiveRoamingwithBGSCAN;
	 BOOLEAN          bPSEnableBGScan;
	 ULONG              ulScanInterval;
	 BOOLEAN          bBgDeepSleep;
      #endif 
    
     #ifdef GET_TX_RATE
	  USHORT	TxRate;
    #endif

    #ifdef PA_CFG_EXT
	 UCHAR              PACfg[LENGTH_PA_CFG];	
    #endif 	 

     //dralee_20060515
     OID_MRVL_DS_HOST_SLEEP_CFG       SleepCfg;

     //dralee_20060601    
     #ifdef IBSS_COALESCE
     USHORT           IbssCoalsecingEnable;
     #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_RSSI_LOW
} 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 + -