summaryrefslogtreecommitdiff
path: root/network/wlan/WDI/COMMON/MultiChannels.h
diff options
context:
space:
mode:
authorkarlf <[email protected]>2016-08-11 13:28:13 -0700
committerkarlf <[email protected]>2016-08-11 13:28:13 -0700
commit96eb96dfb613e4c745db6bd1f53a92fe7e2290fc (patch)
treead5f3ede5cbcd6b598677ce41bcf8318471bdd92 /network/wlan/WDI/COMMON/MultiChannels.h
parent687b274aa38fd05c8c26e3068932121876d7f745 (diff)
Updated for "Windows 10 Anniversary Update" (Version 1607)
Diffstat (limited to 'network/wlan/WDI/COMMON/MultiChannels.h')
-rw-r--r--network/wlan/WDI/COMMON/MultiChannels.h438
1 files changed, 0 insertions, 438 deletions
diff --git a/network/wlan/WDI/COMMON/MultiChannels.h b/network/wlan/WDI/COMMON/MultiChannels.h
deleted file mode 100644
index d00df943..00000000
--- a/network/wlan/WDI/COMMON/MultiChannels.h
+++ /dev/null
@@ -1,438 +0,0 @@
-
-#ifndef __INC_MULTICHANNELS_H
-#define __INC_MULTICHANNELS_H
-
-#define MULTICHANNEL_QUEUE_FOR_EXTSTA BE_QUEUE
-#define MULTICHANNEL_QUEUE_FOR_EXTCLIENT VI_QUEUE
-#define MULTICHANNEL_QUEUE_FOR_EXTGO BK_QUEUE
-
-#define MULTICHANNEL_ACTION_NONE 0
-#define MULTICHANNEL_ACTION_STARTED 1
-#define MULTICHANNEL_ACTION_PAUSED 2
-
-#define MULTICHANNEL_FCS_SUPPORT_START 1
-#define MULTICHANNEL_FCS_SUPPORT_GO 4
-
-#define FCS_STATE_ACTIVE BIT0
-#define FCS_STATE_CONNECTED BIT1
-#define FCS_STATE_PKT_PAUSED BIT2
-#define FCS_STATE_PKT_DROPPED BIT3
-
-#define FCS_NOTIFY_TYPE_C2H 1
-#define FCS_NOTIFY_TYPE_CHANNEL 2
-#define FCS_NOTIFY_TYPE_BT_DISABLE 3
-
-typedef enum _MULTICHANNEL_FCS_COMMON_INFO{
- MULTICHANNEL_FCS_COMMON_NUMCLIENT = 1,
- MULTICHANNEL_FCS_COMMON_DURATION = 2,
- MULTICHANNEL_FCS_PORT_ORDER = 3,
- MULTICHANNEL_FCS_PORT_CHANNEL = 4,
- MULTICHANNEL_FCS_PORT_BANDWIDTH = 5,
- MULTICHANNEL_FCS_PORT_EXTOFFSET_40MHZ = 6,
- MULTICHANNEL_FCS_PORT_EXTOFFSET_80MHZ = 7,
- MULTICHANNEL_FCS_PORT_DURATION = 8,
- MULTICHANNEL_FCS_PORT_RFETYPE = 9,
- MULTICHANNEL_FCS_PORT_CHANNEL_TX_NULL = 10,
- MULTICHANNEL_FCS_PORT_C2H_REPORT = 11,
- MULTICHANNEL_FCS_PORT_CHANNEL_SCAN = 12,
- MULTICHANNEL_FCS_PORT_ROLE = 13,
- MULTICHANNEL_FCS_COMMON_NOA_DURATION = 14,
- MULTICHANNEL_FCS_COMMON_NOA_STARTTIME = 15,
- MULTICHANNEL_FCS_COMMON_STA_BEACONTIME = 16,
- MULTICHANNEL_FCS_COMMON_QPKT_LEVEL = 17,
- MULTICHANNEL_FCS_PORT_MACID_BITMAP = 18,
-}MULTICHANNEL_FCS_COMMON_INFO;
-
-// Multi-channel switch role for each port
-typedef enum _FCS_ROLE{
- FCS_ROLE_STA = 0,
- FCS_ROLE_AP = 1,
- FCS_ROLE_GC = 2,
- FCS_ROLE_GO = 3,
-}FCS_ROLE;
-
-// Represent Channel Tx Null setting
-typedef enum _FCS_CHANNEL_TX_NULL{
- FCS_ENABLE_TX_NULL = 0,
- FCS_DISABLE_TX_NULL = 1,
-}FCS_CHANNEL_TX_NULL, *PFCS_CHANNEL_TX_NULL;
-
-// Represent Channel Scan
-typedef enum _FCS_CHANNEL_SCAN{
- FCS_CHIDX = 0,
- FCS_SCANCH_RSVD_LOC = 1,
-}FCS_CHANNEL_SCAN, *PFCS_CHANNEL_SCAN;
-
-// Represent C2H Report setting
-typedef enum _FCS_C2H_REPORT{
- FCS_C2H_REPORT_DISABLE = 0,
- FCS_C2H_REPORT_FAIL_STATUS = 1,
- FCS_C2H_REPORT_ALL_STATUS = 2,
-}FCS_C2H_REPORT, *PFCS_C2H_REPORT;
-
-// Represent FW status report of channel switch
-typedef enum _FCS_STATUS_RPT{
- FCS_RPT_SUCCESS = 0,
- FCS_RPT_TXNULL_FAIL = 1,
- FCS_RPT_STOPFCS = 2,
- FCS_RPT_READY = 3,
-}FCS_STATUS, *PFCS_STATUS;
-
-// Represent FW status
-typedef enum _FCS_FW_STATE{
- FCS_FW_IDLE = 0,
- FCS_FW_STARTING = 1,
- FCS_FW_STOPPED = 2,
-}FCS_FW_STATE, *PFCS_FW_STATE;
-
-// Represent channel switch operation mode
-typedef enum _FCS_CHNL_OPMODE{
- FCS_CHNL_OPMODE_NONE = 0,
- FCS_CHNL_OPMODE_RESET = 1,
- FCS_CHNL_OPMODE_JOINBSS = 2,
- FCS_CHNL_OPMODE_DISCONNECT = 3,
- FCS_CHNL_OPMODE_JOINFAIL = 4,
- FCS_CHNL_OPMODE_STARTMCC = 5,
-}CHNL_OPMODE, *PCHNL_OPMODE;
-
-// Represent queue packet setting
-typedef enum _FCS_QPKT_LEVEL{
- FCS_QPKT_DEFAULT = 0,
- FCS_QPKT_BY_MACID_SLEEP = 1,
- FCS_QPKT_BY_DRIVER_DROP = 2,
- FCS_QPKT_BY_MACID_DROP = 4,
-}FCS_QPKT_LEVEL, *PFCS_QPKT_LEVEL;
-
-
-//============================================================================
-// Multiple Channel Supported
-//============================================================================
-
-// Context for Each Port Specific
-typedef struct _MULTICHANNEL_PORT_CONTEXT {
-
- //==================================================
- // Client-Related Elements
- //==================================================
-
- // This controls the offset for this port to the HW TSF counter --
- BOOLEAN bBssLocalTsfValid;
- s8Byte BssLocalTsfOffset;
- u8Byte BssTimestamp;
- u2Byte BssBeaconInterval;
- // -----------------------------------------------------
-
- // Channel Information ------------------------------------
- CHANNEL_WIDTH ConnectedBandWidthMode;
- u1Byte ConnectedPrimary20MhzChannel;
- EXTCHNL_OFFSET ConnectedExtChnlOffsetOf40MHz;
- EXTCHNL_OFFSET ConnectedExtChnlOffsetOf80MHz;
-
- RT_WORK_ITEM MultiChannelSwitchChannelWorkItem;
- // -----------------------------------------------------
-
- // Configuration Time --------------------------------------------------------
- u2Byte ConnectionConfigurationTime; // For speeding up the WPS or DHCP packets: ms
- // ------------------------------------------------------------------------
-
- // Order for FW fast channel switch
- u1Byte FCSOrder;
- u1Byte FCSPortState;
-
- u1Byte FcsDuration;
- u1Byte Role;
- u2Byte MacIdBitmap;
-
-} MULTICHANNEL_PORT_CONTEXT, *PMULTICHANNEL_PORT_CONTEXT;
-
-#define MULTICHANNEL_SIZE_OF_PORT_CONTEXT sizeof(MULTICHANNEL_PORT_CONTEXT)
-
-
-
-// Common Context for All Ports (Only Valid in Default Port)
-typedef struct _MULTICHANNEL_COMMON_CONTEXT {
-
- // Channel Switch Timer -------------------------------------
- // + Future Goal: Handle all channel swith actions for whole driver
- ACTION_TIMER_HANDLE MultiChannelActionTimer;
- // -------------------------------------------------------
-
-
-
- // HW / SW Timer Switch --------------------------------
- BOOLEAN bUseHardwareTimer;
- // ----------------------------------------------------
-
-
-
-
- // Channel Switch Scheduler Status --------------------
- BOOLEAN bChannelSwitchSchedulerStarted;
- u1Byte MultiChannelState;
- PADAPTER pAdapterBeforeSwitch;
- // ------------------------------------------------
-
- // Used for HwTsf Synchronization -----------------
- u1Byte TargetApBssid[6];
- BOOLEAN bSyncHwTsfBeaconUpdateReceived;
- RT_WORK_ITEM MultiChannelSyncHwTsfWorkItem;
- // --------------------------------------------
-
- // Tx Report Indication --------------------------------
- BOOLEAN bWaitChannelSwitchTxReport;
- // -------------------------------------------------
-
- // For TxPause Read in Dispatch Level: USB and SDIO ---
- u1Byte TxPauseCache;
- // ----------------------------------------------
-
- // Record current client count
- u1Byte NumCurPort;
- u1Byte FcsDuration;
- BOOLEAN bDownloadRSVD;
- BOOLEAN bStartFwFCS;
- u1Byte uFCSReport;
- u8Byte uSyncTsfDiff;
- u1Byte MCCNoADuration;
- u1Byte MCCNoAStartTime;
- u1Byte MCCStaBeaconTime;
- u1Byte MCCQPktLevel;
- RT_WORK_ITEM MultiChannelC2HWorkItem;
- RT_WORK_ITEM MultiChannelAdjustTsfWorkItem;
- // ----------------------------------------------
-
- u8Byte IGBoostEndTime; // us
- u4Byte IGBoostStateFlag;
-} MULTICHANNEL_COMMON_CONTEXT, *PMULTICHANNEL_COMMON_CONTEXT;
-
-#define MULTICHANNEL_SIZE_OF_COMMON_CONTEXT sizeof(MULTICHANNEL_COMMON_CONTEXT)
-
-typedef struct _FCS_C2H_NOTIFY{
- u1Byte status;
- u1Byte channel;
-}FCS_C2H_NOTIFY, *PFCS_C2H_NOTIFY;
-
-#define MC_DM_INIT_GAIN_BOOST_START 0x00000001
-#define MC_DM_INIT_GAIN_BOOST_END 0x00000002
-#define MC_DM_INIT_GAIN_BOOST_END_DELAY_SEC 0x00000003
-#define MC_DM_INIT_GAIN_BOOST_CHECK 0x00000004
-
-
-#define MC_DM_STATE_INIT_GAIN_BOOST_STARTED BIT31
-
-#define MC_DM_INIT_GAIN_BOOST_DEFAULT_DELAY_SEC 10 // 10 sec
-
-
-//-----------------------------------------------------------
-// Public Functions
-//-----------------------------------------------------------
-
-VOID
-MultiChannelWriteTxPauseCache(
- PADAPTER pAdapter,
- u1Byte TxPauseCommand
-);
-
-u1Byte
-MultiChannelReadTxPauseCache(
- PADAPTER pAdapter
-);
-
-VOID
-MultiChannelAssociateConfirm(
- PADAPTER pAdapter,
- BOOLEAN bSuccess
-);
-
-VOID
-MultiChannelHandleReceivedBeacon(
- PADAPTER pAdapter,
- OCTET_STRING osPacket
-);
-
-VOID
-MultiChannelSwitchChannelWorkItemCallback(
- IN PVOID pContext
-);
-
-VOID
-MultiChannelHandleChannelSwitchToCurrentPort(
- PADAPTER pAdapterBeforeSwitch,
- PADAPTER pCurrentPort
-);
-
-VOID
-MultiChannelSyncHwTsfWorkItemCallback(
- IN PVOID pContext
-);
-
-VOID
-MultiChannelResetApStatus(
- PADAPTER pAdapter,
- BOOLEAN bSet
-);
-
-VOID
-MultiChannelStatusWatchdog(
- PADAPTER pAdapter
-);
-
-VOID
-MultiChannelDumpHwQueueStatus(
- PADAPTER pAdapter
-);
-
-VOID
-MultiChannelDisableEnableExactHwQueue(
- PADAPTER pAdapter,
- BOOLEAN bDisable
-);
-
-VOID
-MultiChannelStopChannelSwitchScheduler(
- PADAPTER pAdapter,
- BOOLEAN bEnableSwitchOperation
-);
-
-BOOLEAN
-MultiChannelSwitchNeeded(
- PADAPTER pAdapter
-);
-
-BOOLEAN
-MultiChannelSyncHwTsfNeeded(
- PADAPTER pAdapter
-);
-
-u1Byte
-MultiChannelRedirectPacketToSpecificQueue(
- PRT_TCB pTcb
-);
-
-VOID
-MultiChannelUpdateSettingBeforeScanOnResetRequest(
- PADAPTER pAdapter
-);
-
-VOID
-MultiChannelInitializeWorkItem(
- PADAPTER pAdapter
-);
-
-VOID
-MultiChannelReleaseWorkItem(
- PADAPTER pAdapter
-);
-
-VOID
-MultiChannelInitializeTimer(
- PADAPTER pAdapter
-);
-
-VOID
-MultiChannelReleaseTimer(
- PADAPTER pAdapter
-);
-
-u1Byte
-MultiChannelGetPortConnected20MhzChannel(
- PADAPTER pAdapter
-);
-
-VOID
-MultichannelHandlePacketDuringScan(
- PADAPTER pAdapter,
- BOOLEAN bDisable
-);
-
-VOID
-MultichannelEnableGoQueue(
- PADAPTER pAdapter
-);
-
-PADAPTER
-MultiChannelGetConnectionAdapter(
- PADAPTER pAdapter,
- u1Byte Order
-);
-
-VOID
-MultiChannelScanHandler(
- PADAPTER pAdapter,
- BOOLEAN bScan,
- BOOLEAN bResume
-);
-
-VOID
-MultiChannelDisconnectClient(
- PADAPTER pAdapter,
- BOOLEAN bSendDisassociate
-);
-
-VOID
-MultiChannelDisconnectGo(
- PADAPTER pAdapter
-);
-
-BOOLEAN
-MultiChannelCheckUpdateHwTsf(
- PADAPTER pAdapter
-);
-
-VOID
-MultiChannelGetFcsCommonInfo(
- PADAPTER pAdapter,
- u1Byte FcsFlag,
- pu1Byte value
-);
-
-VOID
-MultiChannelSetFcsCommonInfo(
- PADAPTER pAdapter,
- u1Byte FcsFlag,
- pu1Byte value
-);
-
-BOOLEAN
-MultiChannel_IsFCSInProgress(
- PADAPTER pAdapter
-);
-
-VOID
-MultiChannel_OnBss(
- PADAPTER pAdapter,
- u8Byte uAPTsf,
- u8Byte uCurrentTsf
-);
-
-RT_STATUS
-FCS_Notify(
- PADAPTER pAdapter,
- ULONG NotifyType,
- pu1Byte InformationBuffer,
- ULONG InformationBufferLength
-);
-
-#if (MULTICHANNEL_SUPPORT == 1)
-u1Byte
-MultiChannelGetConnectedChannels(
- IN PADAPTER pAdapter,
- OUT pu1Byte pChnlArray,
- IN u1Byte maxChnlArrayNum
- );
-
-RT_STATUS
-McDynamicMachanismSet(
- IN PADAPTER pAdapter,
- IN u4Byte ReqID,
- IN PVOID pInputBuffer,
- IN u4Byte InputBufferLen
- );
-
-#else // #if (MULTICHANNEL_SUPPORT != 1)
-
-#define MultiChannelGetConnectedChannels(_pAdapter, _pChnlArray, _maxChnlArrayNum) 0
-#define McDynamicMachanismSet(_pAdapter, _ReqID, _pInputBuffer, _InputBufferLen) RT_STATUS_NOT_SUPPORT
-#endif // #if (MULTICHANNEL_SUPPORT == 1)
-
-#endif