diff options
| author | Daiqian Hu <[email protected]> | 2016-11-21 08:54:24 +0800 |
|---|---|---|
| committer | Daiqian Hu <[email protected]> | 2016-11-21 08:54:24 +0800 |
| commit | a95eaad088f61aa55da9d73015cf1ed86e64a67e (patch) | |
| tree | 15b498a08a4aee4b7f8b1627d39c965b3aa3ba98 /network/wlan/WDI/COMMON/OffChnlTx.h | |
| parent | 1aa0338ec5418345ea0c383e92b4fa19f7c98425 (diff) | |
Re-submit for WDI sample driver to GitHub
Submit WDI sample driver to GitHub for RS1.
Diffstat (limited to 'network/wlan/WDI/COMMON/OffChnlTx.h')
| -rw-r--r-- | network/wlan/WDI/COMMON/OffChnlTx.h | 178 |
1 files changed, 178 insertions, 0 deletions
diff --git a/network/wlan/WDI/COMMON/OffChnlTx.h b/network/wlan/WDI/COMMON/OffChnlTx.h new file mode 100644 index 00000000..bb673183 --- /dev/null +++ b/network/wlan/WDI/COMMON/OffChnlTx.h @@ -0,0 +1,178 @@ +//--------------------------------------------------------------------------- +// +// Copyright (c) 2014 Realtek Semiconductor, Inc. All rights reserved. +// +//--------------------------------------------------------------------------- +// Description: +// +// + +#ifndef __INC_OFF_CHNL_TX_H +#define __INC_OFF_CHNL_TX_H + +//----------------------------------------------------------------------------- +// Data +//----------------------------------------------------------------------------- + +#define OFF_CHNL_TX_PER_TX_ATTEMPT_FLAG_CHNL_HIT BIT0 +#define OFF_CHNL_TX_PER_TX_ATTEMPT_FLAG_FRAME_SENT BIT1 +#define OFF_CHNL_TX_PER_TX_ATTEMPT_FLAG_FRAME_ACKED BIT2 + +#define OFF_CHNL_TX_PER_REQ_FLAG_RETRY BIT0 +#define OFF_CHNL_TX_PER_REQ_FLAG_COMPLETED BIT1 + +typedef struct _OFF_CHNL_TX_STATUS_FLAG +{ + u4Byte perTxAttemptFlag; + u4Byte perReqFlag; +}OFF_CHNL_TX_STATUS_FLAG; + +typedef enum _OFF_CHNL_TX_STATE +{ + OFF_CHNL_TX_STATE_CHNL_HIT = 0, + OFF_CHNL_TX_STATE_COMPLETE, + OFF_CHNL_TX_STATE_PRE_DESTROY, + OFF_CHNL_TX_STATE_RETRY, + OFF_CHNL_TX_STATE_FRAME_SENT, +}OFF_CHNL_TX_STATE; + +typedef +VOID +(*OFF_CHNL_TX_STATE_CB) +( + IN VOID *req, + IN int state, + IN VOID *pCtx +); + +//----------------------------------------------------------------------------- +// Function, process +//----------------------------------------------------------------------------- + +VOID * +OffChnlTx_AllocReq( + IN ADAPTER *pAdapter, + IN const u1Byte *mac, + IN OFF_CHNL_TX_STATE_CB stateCb, + IN VOID *stateCtx, + IN u4Byte cliRsvdLen + ); + +RT_STATUS +OffChnlTx_IssueReq( + IN ADAPTER *pAdapter, + IN VOID *req, + IN const char *typeInfo + ); + +RT_STATUS +OffChnlTx_AbortReq( + IN ADAPTER *pAdapter + ); + +//----------------------------------------------------------------------------- +// Function, setter +//----------------------------------------------------------------------------- +VOID +OffChnlTx_SetupCbCtx( + IN VOID *req, + IN OFF_CHNL_TX_STATE_CB stateCb, + IN VOID *stateCtx + ); + +FRAME_BUF * +OffChnlTx_GetTxFrameBuf( + IN VOID *req + ); + +FRAME_BUF * +OffChnlTx_GetProbeReqBuf( + IN VOID *req + ); + +RT_STATUS +OffChnlTx_SetProbeEnabled( + IN VOID *req, + IN BOOLEAN bEnableProbe + ); + +FRAME_BUF * +OffChnlTx_GetProbeReqBuf( + IN VOID *req + ); + +RT_STATUS +OffChnlTx_SetPostSearchListeningEnabled( + IN VOID *req, + IN BOOLEAN bEnablePostSeachListening, + IN u1Byte chnl, + IN u4Byte duration + ); + +RT_STATUS +OffChnlTx_SetTxChnl( + IN VOID *req, + IN u1Byte txChnl + ); + +u1Byte +OffChnlTx_GetTxChnl( + IN VOID *req + ); + +RT_STATUS +OffChnlTx_SetTxAttemptCount( + IN VOID *req, + IN u1Byte attemptCount + ); + +RT_STATUS +OffChnlTx_SetTimeBound( + IN VOID *req, + IN u4Byte timeBound + ); + +RT_STATUS +OffChnlTx_SetPostAckDwellTime( + IN VOID *req, + IN u4Byte postAckDwellTime + ); + +RT_STATUS +OffChnlTx_SetRetryIntermittentTime( + IN VOID *req, + IN u4Byte retryIntermittentTime + ); + +RT_STATUS +OffChnlTx_SetDataRate( + IN VOID *req, + IN u1Byte dataRate + ); + +OFF_CHNL_TX_STATUS_FLAG +OffChnlTx_GetTxStatusFlag( + IN VOID *req + ); + +RT_STATUS +OffChnlTx_SkipProbeTemporarilly( + IN VOID *req + ); + +VOID * +OffChnlTx_GetCliRsvdBuf( + IN VOID *req + ); + +RT_STATUS +OffChnlTx_SetShtPostAckDwellOnPositivelyAcked( + IN VOID *req, + IN u1Byte bShutPostAckDwellOnPositivelyAcked + ); + +//----------------------------------------------------------------------------- +// Function, dbg +//----------------------------------------------------------------------------- + +#endif // #ifndef __INC_OFF_CHNL_TX_H |
