📄 ssx31bdrv.h
字号:
typedef struct tagSSX31BBasicRD
{
ULONG ulFlag:8,
ulOpCode:8,
ulStatus:16;
ULONG ulInputContext;
ULONG ulInputLength:20,
ulReserve1:6,
ulGatherEnable:1,
ulInputNum:5;
ULONG ulOutputContext;
ULONG ulOutputLength:20,
ulReserve2:6,
ulScatterEnable:1,
ulOutputNum:5;
ULONG ulID;
}SSX31B_BASIC_RD;
#endif
#define SSX31B_BASIC_RD_LENGTH sizeof(SSX31B_BASIC_RD)
/*********************************************************pke**************************/
#ifdef BIG_ENDIAN
typedef struct tagSSX31BPkeBD
{
ULONG ulReserve:16,
ulOpCode:8,
ulFlag:8;
ULONG ulInputContext;
ULONG ulInputNum:5,
ulGatherEnable:1,
ulReserve1:6,
ulInputLength:20;
ULONG ulOutputContext;
ULONG ulOutputNum:5,
ulScatterEnable:1,
ulOutputLength1:10,
ulOutputLength0:16;
ULONG ulID;
}SSX31B_PKE_BD;
#else
typedef struct tagSSX31BPkeBD
{
ULONG ulFlag:8,
ulOpCode:8,
ulReserve:16;
ULONG ulInputContext;
ULONG ulInputLength:20,
ulReserve1:6,
ulGatherEnable:1,
ulInputNum:5;
ULONG ulOutputContext;
ULONG ulOutputLength0:16,
ulOutputLength1:10,
ulScatterEnable:1,
ulOutputNum:5;
ULONG ulID;
}SSX31B_PKE_BD;
#endif
#define SSX31B_PKE_BD_LENGTH sizeof(SSX31B_PKE_BD)
#ifdef BIG_ENDIAN
typedef struct tagSSX31BPkeRD
{
ULONG ulStatus:16,
ulOpCode:8,
ulFlag:8;
ULONG ulInputContext;
ULONG ulInputNum:5,
ulGatherEnable:1,
ulReserve1:6,
ulInputLength:20;
ULONG ulOutputContext;
ULONG ulOutputNum:5,
ulScatterEnable:1,
ulOutputLength1:10,
ulOutputLength0:16;
ULONG ulID;
}SSX31B_PKE_RD;
#else
typedef struct tagSSX31BPkeRD
{
ULONG ulFlag:8,
ulOpCode:8,
ulStatus:16;
ULONG ulInputContext;
ULONG ulInputLength:20,
ulReserve1:6,
ulGatherEnable:1,
ulInputNum:5;
ULONG ulOutputContext;
ULONG ulOutputLength0:16,
ulOutputLength1:10,
ulScatterEnable:1,
ulOutputNum:5;
ULONG ulID;
}SSX31B_PKE_RD;
#endif
#define SSX31B_PKE_RD_LENGTH sizeof(SSX31B_PKE_RD)
#ifdef BIG_ENDIAN
/* input context descriptor */
typedef struct tagSSX31BPKEICD
{
ULONG ulInputPtr;
ULONG ulInputAttrib:8,
ulOrig:8,
ulInputLen:16;
}SSX31B_PKE_ICD;
#else
typedef struct tagSSX31BPKEICD
{
ULONG ulInputPtr;
ULONG ulInputLen:16,
ulOrig:8,
ulInputAttrib:8;
}SSX31B_PKE_ICD;
#endif
#define SSX31B_PKE_ICD_LENGTH sizeof(SSX31B_PKE_ICD)
#ifdef BIG_ENDIAN
/* output context descriptor */
typedef struct tagSSX31BPKEOcd
{
ULONG ulOutputPtr;
ULONG ulOutputAttrib:8,
ulOrig:8,
ulOutputLen:16;
}SSX31B_PKE_OCD;
#else
typedef struct tagSSX31BPKEOcd
{
ULONG ulOutputPtr;
ULONG ulOutputLen:16,
ulOrig:8,
ulOutputAttrib:8;
}SSX31B_PKE_OCD;
#endif
#define SSX31B_PKE_OCD_LENGTH sizeof(SSX31B_PKE_OCD)
/*********************************************************pke**************************/
#ifdef BIG_ENDIAN
typedef struct tagSSX31BIPSecBD
{
ULONG ulReserve:16,
ulOpCode:8,
ulFlag:8;
ULONG ulInputContext;
ULONG ulInputNum:5,
ulGatherEnable:1,
ulReserve1:6,
ulInputLength:20;
ULONG ulOutputContext;
ULONG ulOutputNum:5,
ulScatterEnable:1,
ulReserve2:6,
ulOutputLength:20;
ULONG ulID;
ULONG ulMBufPtr;
ULONG ulOrigBuf;
}SSX31B_IPSEC_BD;
#else
typedef struct tagSSX31BIPSecBD
{
ULONG ulFlag:8,
ulOpCode:8,
ulReserve:16;
ULONG ulInputContext;
ULONG ulInputLength:20,
ulReserve1:6,
ulGatherEnable:1,
ulInputNum:5;
ULONG ulOutputContext;
ULONG ulOutputLength:20,
ulReserve2:6,
ulScatterEnable:1,
ulOutputNum:5;
ULONG ulID;
ULONG ulMBufPtr;
ULONG ulOrigBuf;
}SSX31B_IPSEC_BD;
#endif
#define SSX31B_IPSEC_BD_LENGTH sizeof(SSX31B_IPSEC_BD)
#ifdef BIG_ENDIAN
typedef struct tagSSX31BIPSecRD
{
ULONG ulStatus:16,
ulOpCode:8,
ulFlag:8;
ULONG ulInputContext;
ULONG ulInputNum:5,
ulGatherEnable:1,
ulReserve1:6,
ulInputLength:20;
ULONG ulOutputContext;
ULONG ulOutputNum:5,
ulScatterEnable:1,
ulReserve2:6,
ulOutputLength:20;
ULONG ulID;
ULONG ulMBufPtr;
ULONG ulOrigBuf;
}SSX31B_IPSEC_RD;
#else
typedef struct tagSSX31BIPSecRD
{
ULONG ulFlag:8,
ulOpCode:8,
ulStatus:16;
ULONG ulInputContext;
ULONG ulInputLength:20,
ulReserve1:6,
ulGatherEnable:1,
ulInputNum:5;
ULONG ulOutputContext;
ULONG ulOutputLength:20,
ulReserve2:6,
ulScatterEnable:1,
ulOutputNum:5;
ULONG ulID;
ULONG ulMBufPtr;
ULONG ulOrigBuf;
}SSX31B_IPSEC_RD;
#endif
#define SSX31B_IPSEC_RD_LENGTH sizeof(SSX31B_IPSEC_RD)
typedef struct tagSSX31Bdrvctrl
{
struct pci_dev * pPciDev;
ULONG phymembase;
CHAR pchName[50];
ULONG ulPciMemBase;
ULONG ulMemBase;
ULONG ulIPSecBDMemBase;
ULONG ulIPSecBDDescs;
ULONG ulFreeIPSecBDs;
ULONG ulCurrIPSecBdWritePtr;
ULONG ulCurrIPSecBdReadPtr;
ULONG ulIPSecRDMemBase;
ULONG ulIPSecRDDescs;
ULONG ulFreeIPSecRDs;
ULONG ulCurrIPSecRdReadPtr;
ULONG ulCurrIPSecRdWritePtr;
ULONG ulSaBDMemBase;
ULONG ulSaBDDescs;
ULONG ulFreeSaBDs;
ULONG ulCurrSaBdWritePtr;
ULONG ulCurrSaBdReadPtr;
ULONG ulSaRDMemBase;
ULONG ulSaRDDescs;
ULONG ulFreeSaRDs;
ULONG ulCurrSaRdReadPtr;
ULONG ulCurrSaRdWritePtr;
ULONG ulPkeBDMemBase;
ULONG ulPkeBDDescs;
ULONG ulFreePkeBDs;
ULONG ulCurrPkeBdWritePtr;
ULONG ulCurrPkeBdReadPtr;
ULONG ulPkeRDMemBase;
ULONG ulPkeRDDescs;
ULONG ulFreePkeRDs;
ULONG ulCurrPkeRdReadPtr;
ULONG ulCurrPkeRdWritePtr;
SSX31B_ICD* pstGather;
ULONG ulCtrlWordMemBase;
ULONG ulIPSecPerfCnt;
ULONG ulIPSecPerfErrCnt;
ULONG ulOutSSX31BPkts;
ULONG ulOutSSX31BBytes;
ULONG ulInSSX31BPkts;
ULONG ulInSSX31BBytes;
ULONG ulLastOutSSX31BBytes;
ULONG ulLastOutSSX31BPkts;
ULONG ulLastInSSX31BBytes;
ULONG ulLastInSSX31BPkts;
ULONG ulOutSSX31BByteRate;
ULONG ulOutSSX31BPacketRate;
ULONG ulInSSX31BByteRate;
ULONG ulInSSX31BPacketRate;
ULONG ulTmtDone;
ULONG ulTmtSADone;
ULONG ulTmtPKEDone;
ULONG ulTmtErr;
ULONG ulTmtTypeErr;
ULONG ulTmtBDFullErr;
ULONG ulTmtCall;
ULONG ulAssembleFrmErr;
ULONG ulScatterSliceErr;
ULONG ulGatherSliceErr;
ULONG ulIntCounter;
ULONG ulPktSPIErr;
ULONG ulPktICVErr;
ULONG ulPktSeqNumErr;
ULONG ulPktProcTimeoutErr;
ULONG ulPktUnkownIPHeadErr;
ULONG ulPktFrgSegErr;
ULONG ulPktLenDismatchErr;
ULONG ulPktBDLengErr;
ULONG ulPktStuctErr;
ULONG ulPktPadErr;
ULONG ulAlignErr;
ULONG ulOperCodeErr;
ULONG ulHwFlowExpireErr;
ULONG ulInvalidSAErr;
ULONG ulSoftFlowExpireErr;
/*toyarm*/
ULONG ulMemBase_dmaaddr;
ULONG ulIPSecBDMemBase_dmaaddr;
ULONG ulIPSecRDMemBase_dmaaddr;
ULONG ulSaBDMemBase_dmaaddr;
ULONG ulSaRDMemBase_dmaaddr;
ULONG ulPkeBDMemBase_dmaaddr;
ULONG ulPkeRDMemBase_dmaaddr;
SSX31B_ICD* pstGather_dmaaddr;
ULONG ulCtrlWordMemBase_dmaaddr;
ULONG ulMemSize,ulGatherSize,ulCtrlWordSize;
} SSX31BDRV_CTRL;
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -