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

📄 dk_client.h

📁 atheros ar5001 5002 driver
💻 H
字号:
// dk_client.h - contains definitions of dk structures  

// Copyright (c) 2000 Atheros Communications, Inc., All Rights Reserved 
 
// modification history
// --------------------
// 000	00jan02 	sharmat		created (copied from windows client)

// DESCRIPTION
// -----------
// Contains the definitions of main dk strucutres.

#ifndef	__INCdk_clienth
#define	__INCdk_clienth


#include "wlantype.h"
#ifdef WIN32
#ifdef JUNGO
#include "windrvr.h"
#endif
#endif

#define DK_CLIENT_EXE ("mdk_client.exe")
#define MDK_EXE ("mdk.exe")

#define MDK_MAIN ("mdk_main")
#define MDK_CLIENT ("mdk_client")
#define MDK_MAIN_PRIO 95
#define MDK_CLIENT_PRIO 100


#ifdef __cplusplus
extern "C" {
#endif //__cplusplus 

#ifdef JUNGO 
	//structure to share info with the kernel plugin
	typedef struct dkKernelInfo
	{
		A_BOOL	volatile	anyEvents;		/* set to true by plugin if it has any events */
		A_UINT32	regMemoryTrns;
		A_UINT32	dmaMemoryTrns;
		A_UINT32	f2MapAddress;	    /* address of where f2 registers are mapped */
		A_UINT32	G_memoryRange;
		A_BOOL	volatile	rxOverrun	;	/* set by kernel plugin if it detects a receive overrun */
		A_UINT32		devMapAddress; // address of where f2 registers are mapped 
	} DK_KERNEL_INFO;


	/* holds all the dk specific information within DEV_INFO structure */
	typedef struct dkDevInfo
	{
		//A_UINT32	f2MapAddress;	    /* address of where f2 registers are mapped */
		A_UINT16	f2Mapped;		    /* true if the f2 registers are mapped */
		A_UINT16	devIndex;	/* used to track which F2 within system this is */
		A_UINT32	dwBus;		/* hold bus slot and function info about device */
		A_UINT32	dwSlot;
		A_UINT32	dwFunction;	
		A_BOOL	    haveEvent;   // set to true when we have an event created
		/* ##note these are jungo specific, should really be OS specific,  move later */	
		WD_CARD_REGISTER G_cardReg; /* holds resource info about pci card */
		WD_CARD_REGISTER pluginMemReg; /* holds info about the memory allocated in plugin */
		A_UINT32 G_baseMemory;
		WD_DMA	dma;				//holds info  about memory for transfers
		A_UINT32 G_resMemory;
		A_UINT32 G_intIndex;
		WD_INTERRUPT gIntrp;
		A_UINT32 volatile intEnabled;

		WD_KERNEL_PLUGIN kernelPlugIn; //handle for kernel plugin
		WD_DMA	kerplugDma;			   //handle to shared mem between plugin and client
		WD_CARD_REGISTER kerplugCardReg;

		/* shared info by kernel plugin */
		DK_KERNEL_INFO *pSharedInfo;    //pointer to structure after alignment
		DK_KERNEL_INFO *pSharedInfoMem; //pointer to the memory we allocated

		A_UINT16	devMapped;
		A_UINT32 dma_mem_addr; // holds the starting addr of the 1 MB memory used for DMA
		A_UINT32	memSize;
	} DK_DEV_INFO;
#else
typedef struct dkDevInfo {
	A_UINT16	devIndex;	/* used to track which F2 within system this is */
	A_UINT16	f2Mapped;	/* true if the f2 registers are mapped */
	A_UINT32 	f2MapAddress;
	A_UINT32	regVirAddr;
	A_UINT32	regMapRange;
	A_UINT32	memPhyAddr;
	A_UINT32	memVirAddr;
	A_UINT32	memSize;
	A_BOOL		haveEvent;
	A_UINT16	devMapped;	// same as f2Mapped but generic
} DK_DEV_INFO;
#endif // JUNGO

extern A_INT32 mdk_main(A_INT32 debugMode);

#ifdef __cplusplus
}
#endif // __cplusplus 

#endif //__INCdk_clienth 

⌨️ 快捷键说明

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