summaryrefslogtreecommitdiff
path: root/network/wlan/WDI/COMMON/OffChnlTx.h
diff options
context:
space:
mode:
authorDaiqian Hu <[email protected]>2016-11-21 08:54:24 +0800
committerDaiqian Hu <[email protected]>2016-11-21 08:54:24 +0800
commita95eaad088f61aa55da9d73015cf1ed86e64a67e (patch)
tree15b498a08a4aee4b7f8b1627d39c965b3aa3ba98 /network/wlan/WDI/COMMON/OffChnlTx.h
parent1aa0338ec5418345ea0c383e92b4fa19f7c98425 (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.h178
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