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

📄 rtmp.h

📁 TP Link 321 Linux Driver
💻 H
📖 第 1 页 / 共 5 页
字号:
#ifdef RALINK_ATE	ATE_INFO				ate;	BOOLEAN					ContinBulkOut;		//ATE bulk out control	atomic_t				BulkOutRemained;	BOOLEAN					ContinBulkIn;		//ATE bulk in control	atomic_t				BulkInRemained;#endif	// RALINK_ATE	//////////////////////////////////////////////////////////////////////	//	USB	//////////////////////////////////////////////////////////////////////	USHORT				BulkOutMaxPacketSize;	   // 64 in XP	USHORT				BulkInMaxPacketSize;	CmdQ				CmdQ;	CmdQElmt			CmdQElements[COMMAND_QUEUE_SIZE];	BOOLEAN				CmdHandlerIsRunning;	BOOLEAN				DeQueueRunning[4];		// for ensuring RTUSBDeQueuePacket get call once	BOOLEAN				DeMGMTQueueRunning;		// for ensuring RTUSBDeQueuePacket get call once		// SpinLocks	spinlock_t			SendTxWaitQueueLock[4]; // SendTxWaitQueue spinlock	spinlock_t			DataQLock[4];	spinlock_t			DeQueueLock[4];	spinlock_t			DeMGMTQueueLock;	// for ensuring RTUSBDeQueuePacket get call once	spinlock_t			MLMEWaitQueueLock;	// SendTxWaitQueue spinlock	spinlock_t			CmdQLock;			// SendTxWaitQueue spinlock	spinlock_t			BulkOutLock[4];		// SendTxWaitQueue spinlock for 4 ACs	//	spinlock_t			ControlLock;		// SendTxWaitQueue spinlock	spinlock_t			MLMEQLock;			// SendTxWaitQueue spinlock	spinlock_t			GenericLock;		// SendTxWaitQueue spinlock        spinlock_t                      TxRingLock;            // SendTxWaitQueue spinlock // BensonLiu modify	/////////////////////	// Transmit Path	/////////////////////	TX_CONTEXT				MLMEContext[PRIO_RING_SIZE];	TX_CONTEXT				BeaconContext[BEACON_RING_SIZE];	TX_CONTEXT				NullContext;	TX_CONTEXT				PsPollContext;	TX_CONTEXT				RTSContext;//	PUCHAR					TxBuffer;//	TX_BUFFER				TxMgmtBuf;//	PURB					pTxMgmtUrb;//	PIRP					pTxMgmtIrp;	QUEUE_HEADER			SendTxWaitQueue[4];		UINT32					TxRingTotalNumber[4];	UCHAR					NextTxIndex[4];				// Next TxD write pointer	UCHAR					NextMLMEIndex;				// Next PrioD write pointer	UCHAR					PushMgmtIndex;				// Next SW management ring index	UCHAR					PopMgmtIndex;				// Next SW management ring index	atomic_t				MgmtQueueSize;				// Number of Mgmt request stored in MgmtRing	UCHAR					NextRxBulkInIndex;	// 4 sets of Bulk Out index and pending flag	UCHAR					NextBulkOutIndex[4];	BOOLEAN					BulkOutPending[4];//	BOOLEAN					ControlPending;	ULONG					PrioRingTxCnt;	UCHAR					PrioRingFirstIndex;	atomic_t				TxCount;		// Number of Bulkout waiting to be send.	LONG					PendingTx;	// Data related context and AC specified, 4 AC supported	TX_CONTEXT				TxContext[4][TX_RING_SIZE];	LONG					NumPacketsQueued[4];//	PURB					pTxUrb[4];//	PIRP					pTxIrp[4];	/////////////////////	// Receive Path	/////////////////////	RX_CONTEXT				RxContext[RX_RING_SIZE];//	PURB					pRxUrb;//	PIRP					pRxIrp;//	PUCHAR					RxBuffer;	atomic_t				PendingRx;	/////////////////////	//	Control Flags	///////////////////////	atomic_t				PendingIoCount;		// Flags for bulk out data priority	ULONG					BulkFlags;//	spinlock_t				MemLock;	// need to check	ULONG					BulkOutDataOneSecCount;	ULONG					BulkInDataOneSecCount;	ULONG					BulkLastOneSecCount; // BulkOutDataOneSecCount + BulkInDataOneSecCount#ifdef BLOCK_NET_IF	BLOCK_QUEUE_ENTRY		blockQueueTab[NUM_OF_TX_RING];#endif // BLOCK_NET_IF //	// used to record how many null frame send success	int null_frame_counter;	// used to record how many virtual interfaces been upped already.	ULONG					VirtualIfCnt;	USHORT					MacRegWrite_Processing;	BOOLEAN		ProbeFinish;}	RTMP_ADAPTER, *PRTMP_ADAPTER;/* Define in md5.h *///// SHA context////typedef struct//{//	ULONG		H[5];//	ULONG		W[80];//	INT 		lenW;//	ULONG		sizeHi, sizeLo;//}	SHA_CTX;#ifdef RALINK_ATEextern RTMP_RF_REGS RF2528RegTable[];extern RTMP_RF_REGS RF5226RegTable[];extern RTMP_RF_REGS RF5225RegTable[];extern UCHAR	NUM_OF_2528_CHNL;extern UCHAR	NUM_OF_5226_CHNL;extern UCHAR	NUM_OF_5225_CHNL;#endif//// Prototypes of function definition////// Miniport routines in rtmp_main.c//VOID RTUSBHalt(	IN	PRTMP_ADAPTER	pAd, 	IN	BOOLEAN 		IsFree);	VOID CMDHandler(	IN PRTMP_ADAPTER pAd);INT MlmeThread(	IN void * Context);INT RTUSBCmdThread(	IN void * Context);    	#if WIRELESS_EXT >= 12struct iw_statistics *rt73_get_wireless_stats(	IN	struct net_device *net_dev);#endifstruct net_device_stats *rt73_get_ether_stats(	IN	struct net_device *net_dev);long rt_abs(long arg);//// Routines in rtmp_init.c//VOID CreateThreads( struct net_device *net_dev );NDIS_STATUS NICInitTransmit(	IN	PRTMP_ADAPTER	 pAd );NDIS_STATUS NICInitRecv(	IN	PRTMP_ADAPTER	pAd);VOID ReleaseAdapter(	IN	PRTMP_ADAPTER pAd,     IN  BOOLEAN         IsFree,    IN  BOOLEAN         IsOnlyTx);NDIS_STATUS	RTMPInitAdapterBlock(	IN	PRTMP_ADAPTER	pAd);NDIS_STATUS	RTUSBWriteHWMACAddress(	IN	PRTMP_ADAPTER		pAd);VOID NICReadEEPROMParameters(	IN	PRTMP_ADAPTER	pAd);VOID NICInitAsicFromEEPROM(	IN	PRTMP_ADAPTER	pAd);NDIS_STATUS	NICInitializeAsic(	IN	PRTMP_ADAPTER	pAd);VOID NICIssueReset(	IN	PRTMP_ADAPTER	pAd);BOOLEAN	NICCheckForHang(	IN	PRTMP_ADAPTER	pAd);VOID NICUpdateRawCounters(	IN PRTMP_ADAPTER pAd);VOID NICResetFromError(	IN	PRTMP_ADAPTER	pAd);NDIS_STATUS NICLoadFirmware(	IN PRTMP_ADAPTER pAd);PUCHAR RTMPFindSection(	IN	PCHAR	buffer);	INT RTMPGetKeyParameter(	IN	PCHAR	key,	OUT PCHAR	dest,		IN	INT 	destsize,	IN	PCHAR	buffer);VOID RTMPReadParametersFromFile(	IN	PRTMP_ADAPTER pAd);#ifndef BIG_ENDIANULONG	RTMPEqualMemory(	IN	PVOID	pSrc1,	IN	PVOID	pSrc2,	IN	ULONG	Length);#endifULONG	RTMPCompareMemory(	IN	PVOID	pSrc1,	IN	PVOID	pSrc2,	IN	ULONG	Length);VOID	RTMPZeroMemory(	IN	PVOID	pSrc,	IN	ULONG	Length);VOID	RTMPFillMemory(	IN	PVOID	pSrc,	IN	ULONG	Length,	IN	UCHAR	Fill);VOID	RTMPMoveMemory(	OUT PVOID	pDest,	IN	PVOID	pSrc,	IN	ULONG	Length);VOID	PortCfgInit(	IN	PRTMP_ADAPTER pAd);UCHAR BtoH(	IN CHAR		ch);VOID AtoH(	IN CHAR		*src,	OUT UCHAR	*dest,	IN INT		destlen);VOID	RTMPPatchMacBbpBug(	IN	PRTMP_ADAPTER	pAd);VOID	RTMPusecDelay(	IN	ULONG	usec);VOID	RTMPSetLED(	IN PRTMP_ADAPTER	pAd, 	IN UCHAR			Status);VOID RTMPSetSignalLED(	IN PRTMP_ADAPTER	pAd, 	IN NDIS_802_11_RSSI Dbm);VOID RTMPCckBbpTuning(	IN	PRTMP_ADAPTER	pAd, 	IN	UINT			TxRate);VOID	RTMPInitTimer(	IN	PRTMP_ADAPTER			pAd,	IN	PRALINK_TIMER_STRUCT	pTimer,	IN	PVOID					pTimerFunc,	IN	PVOID					pData,	IN  BOOLEAN					Repeat);VOID	RTMPSetTimer(	IN	PRALINK_TIMER_STRUCT	pTimer,	IN	ULONG					Value);VOID	RTMPModTimer(	IN	PRALINK_TIMER_STRUCT	pTimer,	IN	ULONG					Value);VOID RTMPCancelTimer(	IN  PRALINK_TIMER_STRUCT    pTimer,	OUT BOOLEAN                 *pCancelled);char * rtstrstr(const char * s1,const char * s2);//// MLME routines//// Asic/RF/BBP related functionsVOID AsicSwitchChannel(	IN PRTMP_ADAPTER pAd, 	IN UCHAR		 Channel); VOID AsicLockChannel(	IN PRTMP_ADAPTER pAd, 	IN UCHAR		 Channel); VOID AsicAntennaSelect(	IN	PRTMP_ADAPTER	pAd,	IN	UCHAR			Channel); VOID AsicAntennaSetting(	IN	PRTMP_ADAPTER	pAd,	IN	ABGBAND_STATE	BandState);VOID AsicAdjustTxPower(	IN PRTMP_ADAPTER pAd); VOID AsicSleepThenAutoWakeup(	IN PRTMP_ADAPTER pAd, 	IN USHORT		 TbttNumToNextWakeUp); VOID AsicForceSleep(	IN PRTMP_ADAPTER pAd);VOID AsicForceWakeup(	IN PRTMP_ADAPTER pAd);VOID AsicSetBssid(	IN PRTMP_ADAPTER pAd, 	IN PUCHAR		 pBssid); VOID AsicDisableSync(	IN PRTMP_ADAPTER pAd); VOID AsicEnableBssSync(	IN PRTMP_ADAPTER pAd); VOID AsicEnableIbssSync(	IN PRTMP_ADAPTER pAd);VOID AsicSetEdcaParm(	IN PRTMP_ADAPTER pAd,	IN PEDCA_PARM	 pEdcaParm);	VOID AsicSetSlotTime(	IN PRTMP_ADAPTER pAd,	IN BOOLEAN		 bUseShortSlotTime); VOID AsicBbpTuning(	IN PRTMP_ADAPTER pAd);VOID AsicAddSharedKeyEntry(	IN PRTMP_ADAPTER pAd,	IN UCHAR		 BssIndex,	IN UCHAR		 KeyIdx,	IN UCHAR		 CipherAlg,	IN PUCHAR		 pKey,	IN PUCHAR		 pTxMic,	IN PUCHAR		 pRxMic);VOID AsicRemoveSharedKeyEntry(	IN PRTMP_ADAPTER pAd,	IN UCHAR		 BssIndex,	IN UCHAR		 KeyIdx);VOID AsicAddPairwiseKeyEntry(	IN PRTMP_ADAPTER pAd,	IN PUCHAR		 pAddr,	IN UCHAR		 KeyIdx,	IN UCHAR		 CipherAlg,	IN PUCHAR		 pKey,	IN PUCHAR		 pTxMic,	IN PUCHAR		 pRxMic);VOID AsicRemovePairwiseKeyEntry(	IN PRTMP_ADAPTER pAd,	IN UCHAR		 KeyIdx);VOID	RTMPCheckRates(	IN		PRTMP_ADAPTER	pAd,	IN OUT	UCHAR			SupRate[],	IN OUT	UCHAR			*SupRateLen);VOID AsicSetRxAnt(	IN PRTMP_ADAPTER	pAd,	IN UCHAR			Pair1,	IN UCHAR			Pair2);VOID AsicEvaluateSecondaryRxAnt(	IN PRTMP_ADAPTER pAd); VOID AsicRxAntEvalTimeout(	IN PVOID SystemSpecific1,	IN PVOID FunctionContext,	IN PVOID SystemSpecific2,	IN PVOID SystemSpecific3);VOID AsicRxAntEvalAction(	IN PRTMP_ADAPTER pAd);UCHAR RandomByte(	IN PRTMP_ADAPTER pAd); VOID StaQuickResponeForRateUpExec(	IN PVOID SystemSpecific1,	IN PVOID FunctionContext,	IN PVOID Syst

⌨️ 快捷键说明

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