📄 dk_client.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 + -