1981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
2981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * TWDriver.h
3981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Copyright(c) 1998 - 2009 Texas Instruments. All rights reserved.
5981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * All rights reserved.
6981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
7981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Redistribution and use in source and binary forms, with or without
8981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * modification, are permitted provided that the following conditions
9981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * are met:
10981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
11981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  * Redistributions of source code must retain the above copyright
12981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    notice, this list of conditions and the following disclaimer.
13981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  * Redistributions in binary form must reproduce the above copyright
14981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    notice, this list of conditions and the following disclaimer in
15981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    the documentation and/or other materials provided with the
16981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    distribution.
17981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  * Neither the name Texas Instruments nor the names of its
18981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    contributors may be used to endorse or promote products derived
19981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *    from this software without specific prior written permission.
20981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
21981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
24981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
25981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
26981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
27981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
28981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
29981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
33981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
34981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
35981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \file  TWDriver.h
36981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  \brief TWDriver APIs
37981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
38981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  \see
39981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
40981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
41981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @defgroup Control Control group
42981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief The Control group includes the list of functions which perform TWD Control
43981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
44981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @defgroup Measurement Measurement group
45981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief The Measurement group includes the list of functions which gets measurements from FW / TWD
46981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
47981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @defgroup Data_Path Data Path group
48981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief The Data Path group includes the list of functions which perform the TWD Data Path
49981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
50981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**	@defgroup Power_Management Power Management group
51981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief The Power Management group includes the list of functions which set the power management mode
52981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
53981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @defgroup QoS Quality  Of Service group
54981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief The Quality of Service group includes the list of functions which perform the TWD QoS
55981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
56981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @defgroup Radio Radio (PHY) group
57981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief The Radio group includes the list of functions which handle the Radio
58981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
59981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @defgroup BSS BSS group
60981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief The BSS group includes the list of functions which handle the Basic Service Set
61981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
62981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @defgroup Misc Miscellaneous group
63981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief The Miscellaneous group includes the list of functions which handle miscellaneous issues
64981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
65981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifdef TI_DBG
66981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**	@defgroup Test Debug Test group
67981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief The Debug Test group includes the list of functions which Test the TWD and FW
68981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
69981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
70981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
71981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef TWDRIVER_H
72981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWDRIVER_H
73981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
74981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_NUM_OF_802_1d_TAGS          8
75981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
76981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "802_11Defs.h"
77981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "TWDriverMsr.h"
78981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "TWDriverScan.h"
79981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "TWDriverRate.h"
80981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "fwDebug_api.h"
81981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "TwIf.h"
82981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
83981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * original firmware h-files
84981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
85981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "public_commands.h"
86981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "public_event_mbox.h"
87981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "public_infoele.h"
88981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "public_host_int.h"
89981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "public_descriptors.h"
90981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#include "public_radio.h"
91981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
92981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
93981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Firmware types defintions
94981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
95981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef uint8
96981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define uint8   TI_UINT8
97981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
98981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef uint16
99981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define uint16  TI_UINT16
100981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
101981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef uint32
102981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define uint32  TI_UINT32
103981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
104981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef int8
105981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define int8    TI_INT8
106981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
107981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef int16
108981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define int16   TI_INT16
109981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
110981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifndef int32
111981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define int32   TI_INT32
112981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
113981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
114981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
115981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
116981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
117981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
118981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *	Definitions
119981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
120981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
121981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
122981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* PALAU Group Address Default Values */
123981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define NUM_GROUP_ADDRESS_VALUE_DEF     4
124981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define NUM_GROUP_ADDRESS_VALUE_MIN     0
125981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define NUM_GROUP_ADDRESS_VALUE_MAX     8
126981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
127981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Early Wakeup Default Values */
128981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define EARLY_WAKEUP_ENABLE_MIN         (TI_FALSE)
129981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define EARLY_WAKEUP_ENABLE_MAX         (TI_TRUE)
130981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define EARLY_WAKEUP_ENABLE_DEF         (TI_TRUE)
131981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
132981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* ARP IP Filter Default Values */
133981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MIN_FILTER_ENABLE_VALUE         0
134981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_FILTER_ENABLE_VALUE         2
135981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define DEF_FILTER_ENABLE_VALUE         0
136981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define FILTER_ENABLE_FLAG_LEN          1
137981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
138981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Beacon filter Deafult Values */
139981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define DEF_BEACON_FILTER_ENABLE_VALUE  1
140981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define DEF_BEACON_FILTER_IE_TABLE_NUM  16
141981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MIN_BEACON_FILTER_ENABLE_VALUE  0
142981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_BEACON_FILTER_ENABLE_VALUE  1
143981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define BEACON_FILTER_IE_TABLE_DEF_SIZE 37
144981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define BEACON_FILTER_IE_TABLE_MAX_SIZE 100
145981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define BEACON_FILTER_IE_TABLE_MIN_SIZE 0
146981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define BEACON_FILTER_IE_TABLE_MAX_NUM  (6+32)
147981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define BEACON_FILTER_IE_TABLE_MIN_NUM  0
148981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
149981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* CoexActivity Table Deafult Values */
150981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define COEX_ACTIVITY_TABLE_DEF_NUM     0
151981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define COEX_ACTIVITY_TABLE_MIN_NUM     0
152981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define COEX_ACTIVITY_TABLE_MAX_NUM     24*2
153981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define COEX_ACTIVITY_TABLE_SIZE        ((2+1)+(2+1)+(2+1)+(2+1)+(4+1)+(4+1)) /* includes spaces between bytes */
154981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
155981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define DEF_NUM_STORED_FILTERS          1
156981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MIN_NUM_STORED_FILTERS          1
157981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_NUM_STORED_FILTERS          8
158981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
159981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_HW_ACCESS_METHOD_MIN   0
160981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_HW_ACCESS_METHOD_MAX   2
161981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_HW_ACCESS_METHOD_DEF   1
162981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
163981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_SITE_FRAG_COLLECT_MIN  2
164981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_SITE_FRAG_COLLECT_MAX  10
165981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_SITE_FRAG_COLLECT_DEF  3
166981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
167981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_MEM_BLKS_NUM        64   /* The number of Rx memory blocks configured to FW */
168981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_TX_MIN_MEM_BLKS_NUM    64   /* The MINIMUM number of Tx memory blocks configured to FW */
169981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
170981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_BLOCKS_RATIO_MIN    0
171981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_BLOCKS_RATIO_MAX    100
172981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_BLOCKS_RATIO_DEF    50
173981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
174981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_TX_FLASH_ENABLE_MIN         TI_FALSE
175981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_TX_FLASH_ENABLE_MAX         TI_TRUE
176981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_TX_FLASH_ENABLE_DEF         TI_TRUE
177981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
178981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_USE_INTR_TRHESHOLD_MIN 0
179981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_USE_INTR_TRHESHOLD_MAX 1
180981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_USE_INTR_TRHESHOLD_DEF 0
181981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
182981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_USE_TX_DATA_INTR_MIN   0
183981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_USE_TX_DATA_INTR_MAX   1
184981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
185981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define NUM_OF_CHANNELS_24              14
186981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define NUM_OF_CHANNELS_5               180
187981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
188981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_CALIBRATION_CHANNEL_2_4_MIN 1
189981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_CALIBRATION_CHANNEL_2_4_MAX NUM_OF_CHANNELS_24
190981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_CALIBRATION_CHANNEL_2_4_DEF 1
191981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
192981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define A_5G_BAND_MIN_CHANNEL       36
193981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define A_5G_BAND_MAX_CHANNEL       180
194981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define A_5G_BAND_NUM_CHANNELS  	(A_5G_BAND_MAX_CHANNEL-A_5G_BAND_MIN_CHANNEL+1)
195981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
196981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_CALIBRATION_CHANNEL_5_0_MIN 34
197981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_CALIBRATION_CHANNEL_5_0_MAX  A_5G_BAND_MAX_CHANNEL
198981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_CALIBRATION_CHANNEL_5_0_DEF 36
199981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
200981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_CALIBRATION_CHANNEL_4_9_MIN 8
201981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_CALIBRATION_CHANNEL_4_9_MAX 16
202981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_CALIBRATION_CHANNEL_4_9_DEF 12
203981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
204981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RTS_THRESHOLD_MIN           0
205981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RTS_THRESHOLD_MAX           4096
206981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RTS_THRESHOLD_DEF           4096
207981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
208981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_BCN_RX_TIME_OUT_MIN         10      /* ms */
209981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_BCN_RX_TIME_OUT_MAX         1000    /* ms */
210981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_BCN_RX_TIME_OUT_DEF         10      /* ms */
211981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
212981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_DISABLE_BROADCAST_MIN    TI_FALSE
213981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_DISABLE_BROADCAST_MAX    TI_TRUE
214981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_DISABLE_BROADCAST_DEF    TI_FALSE
215981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
216981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Indicate if the recovery process is active or not */
217981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RECOVERY_ENABLE_MIN         TI_FALSE
218981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RECOVERY_ENABLE_MAX         TI_TRUE
219981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RECOVERY_ENABLE_DEF         TI_TRUE
220981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
221981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Indicate if working with Burst Mode or not */
222981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define BURST_MODE_ENABLE_MIN         TI_FALSE
223981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define BURST_MODE_ENABLE_MAX         TI_TRUE
224981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define BURST_MODE_ENABLE_DEF         TI_FALSE
225981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
226653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define SMART_REFLEX_STATE_MIN        TI_FALSE
227653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define SMART_REFLEX_STATE_MAX        TI_TRUE
228653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define SMART_REFLEX_STATE_DEF        TI_TRUE
229653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
230653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define SMART_REFLEX_DEBUG_MIN        0
231653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define SMART_REFLEX_DEBUG_MAX        0xFFFF
232653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define SMART_REFLEX_DEBUG_DEF        0
233653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
234653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define SMART_REFLEX_CONFIG_PARAMS_DEF_TABLE  "0,0,0,0,0,0,0,0,0,0,0,0,0,0"
235981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
236981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_FRAG_THRESHOLD_MIN          256
237981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_FRAG_THRESHOLD_MAX          4096
238981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_FRAG_THRESHOLD_DEF          4096
239981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
240981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_MAX_TX_MSDU_LIFETIME_MIN    0
241981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_MAX_TX_MSDU_LIFETIME_MAX    3000
242981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_MAX_TX_MSDU_LIFETIME_DEF    512
243981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
244981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_MAX_RX_MSDU_LIFETIME_MIN    0
245981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_MAX_RX_MSDU_LIFETIME_MAX    0xFFFFFFFF
246981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_MAX_RX_MSDU_LIFETIME_DEF    512000
247981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
248981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
249981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_LISTEN_INTERVAL_MIN         1
250981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_LISTEN_INTERVAL_MAX         10
251981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_LISTEN_INTERVAL_DEF         3
252981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
253981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* This field indicates the number of transmit retries to attempt at
254981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    the rate specified in the TNETW Tx descriptor before
255981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    falling back to the next lowest rate.
256981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    If this field is set to 0xff, then rate fallback is disabled.
257981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    If this field is 0, then there will be 0 retries before starting fallback.*/
258981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RATE_FB_RETRY_LIMIT_MIN     0   /* => No retries before starting RateFallBack */
259981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RATE_FB_RETRY_LIMIT_MAX     255 /* =>0xff for disabling Rate fallback */
260981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RATE_FB_RETRY_LIMIT_DEF     0
261981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
262981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_TX_ANTENNA_MIN              TX_ANTENNA_2
263981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_TX_ANTENNA_MAX              TX_ANTENNA_1
264981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_TX_ANTENNA_DEF              TX_ANTENNA_1
265981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
266981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_ANTENNA_MIN              RX_ANTENNA_1
267981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_ANTENNA_MAX              RX_ANTENNA_PARTIAL
268981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_ANTENNA_DEF              RX_ANTENNA_FULL
269981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
270981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
271981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Tx and Rx interrupts pacing (threshold in packets, timeouts in milliseconds)
272981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
273653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define TWD_TX_CMPLT_THRESHOLD_DEF      4   /* 0 means no pacing so send interrupt on every event */
274981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_TX_CMPLT_THRESHOLD_MIN      0
275981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_TX_CMPLT_THRESHOLD_MAX      30
276981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
277653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define TWD_TX_CMPLT_TIMEOUT_DEF        5
278981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_TX_CMPLT_TIMEOUT_MIN        1
279981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_TX_CMPLT_TIMEOUT_MAX        100
280981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
281981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_INTR_THRESHOLD_DEF       0   /* 0 means no pacing so send interrupt on every event */
282981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_INTR_THRESHOLD_MIN       0
283981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_INTR_THRESHOLD_MAX       30
284653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define TWD_RX_INTR_THRESHOLD_DEF_WIFI_MODE  0 /* No Rx interrupt pacing so send interrupt on every event */
285981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
286653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define TWD_RX_INTR_TIMEOUT_DEF         1
287981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_INTR_TIMEOUT_MIN         1
288981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RX_INTR_TIMEOUT_MAX         100
289981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
290653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt/* Rx aggregation packets number limit (max packets in one aggregation) */
291653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define TWD_RX_AGGREG_PKTS_LIMIT_DEF    4
292653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define TWD_RX_AGGREG_PKTS_LIMIT_MIN    1
293653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt#define TWD_RX_AGGREG_PKTS_LIMIT_MAX    4
294653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
295981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
296981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Tx power level
297981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
298981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define DBM_TO_TX_POWER_FACTOR			10
299981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
300981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* TX_POWER is in Dbm/10 units */
301981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_TX_POWER					250
302981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MIN_TX_POWER					0
303981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define DEF_TX_POWER					205
304981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
305981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
306981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MIN_DEFAULT_KEY_ID              0
307981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_DEFAULT_KEY_ID              3
308981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
309981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define KEY_RSC_LEN                     8
310981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MIN_KEY_LEN                     5
311981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_KEY_LEN                     32
312981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
313981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RSSI_BEACON_WEIGHT_MIN       0
314981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RSSI_BEACON_WEIGHT_MAX     100
315981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RSSI_BEACON_WEIGHT_DEF      20
316981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
317981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RSSI_PACKET_WEIGHT_MIN       0
318981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RSSI_PACKET_WEIGHT_MAX     100
319981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_RSSI_PACKET_WEIGHT_DEF      10
320981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
321981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_SNR_BEACON_WEIGHT_MIN        0
322981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_SNR_BEACON_WEIGHT_MAX      100
323981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_SNR_BEACON_WEIGHT_DEF       20
324981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
325981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_SNR_PACKET_WEIGHT_MIN        0
326981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_SNR_PACKET_WEIGHT_MAX      100
327981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TWD_SNR_PACKET_WEIGHT_DEF       10
328981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
329981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
330981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
331981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
332981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_NUM_OF_AC                   4
333981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
334981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/************************************/
335981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*      Rates values                */
336981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/************************************/
337981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* The next definitions are used to decide which encryption is used by the Rx flags */
338981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define RX_FLAGS_NO_SECURITY                0
339981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define RX_FLAGS_WEP                        1
340981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define RX_FLAGS_TKIP                       2
341981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define RX_FLAGS_AES                        3
342981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
343981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
344981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define RX_DESC_FLAGS_ENCRYPTION            8
345981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define RX_PACKET_FLAGS_ENCRYPTION_SHIFT    16
346981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define RX_PACKET_FLAGS_ENCRYPTION_SHIFT_FROM_DESC      (RX_PACKET_FLAGS_ENCRYPTION_SHIFT - RX_DESC_FLAGS_ENCRYPTION)
347981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
348981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Tx packet Control-Block flags bit-mask. */
349981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_CTRL_FLAG_XFER_DONE_ISSUED      0x0001  /* Xfer-Done already issued to upper driver   - for WHA. */
350981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_CTRL_FLAG_TX_COMPLETE_ISSUED    0x0002  /* Tx-Complete already issued to upper driver - for WHA. */
351981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_CTRL_FLAG_LINK_TEST             0x0004  /* XCC link test packet */
352981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_CTRL_FLAG_SENT_TO_FW            0x0008  /* Set after the packet is allowed to be sent to FW (by TxHwQueue) */
353981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_CTRL_FLAG_PKT_IN_RAW_BUF        0x0010  /* The input packet is in a raw buffer (as opposed to OS packet) */
354981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_CTRL_FLAG_MULTICAST             0x0020  /* A multicast ethernet packet */
355981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_CTRL_FLAG_BROADCAST             0x0040  /* A broadcast ethernet packet */
356981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
357981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_PKT_TYPE_MGMT                   1   /* Management Packet						  */
358981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_PKT_TYPE_EAPOL                  2   /* EAPOL packet (Ethernet)				  */
359981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_PKT_TYPE_ETHER                  3   /* Data packet from the Network interface  */
360981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_PKT_TYPE_WLAN_DATA	           4   /* Driver generated WLAN Data Packet (currently used for IAPP packet) */
361981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
362981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
363981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define ALIGN_4BYTE_MASK                   0x3 /* Masked LS bits for 4-bytes aligned addresses or lengths. */
364981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define SHIFT_BETWEEN_TU_AND_USEC          10  /* Shift factor to convert between TU (1024 uSec) and uSec. */
365981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
366981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Packet header + extensions structure ranges between 24 and 48 bytes as follows:
367981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * ------------------------------------------------------------------------------
368981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Alignment Padding:   0/2 bytes,      added for 4 bytes alignment of this structure.
369981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Mac-Header:          24 bytes,       802.11 basic header.
370981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Qos header:          0/2 bytes,      for QoS-data or QoS-Null the two QoS bytes are added.
371981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Security Pad:        0/0/4/8 bytes,  for None/WEP/TKIP/AES.
372981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * LLC/SNAP:            0/8 bytes,      added only for data packets.
373981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * HT control:          0/4             added only for packte support QoS and HT
374981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
375981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_HEADER_SIZE                 48
376981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
377981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Data body max length */
378981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_DATA_BODY_LENGTH            4096
379981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
380981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
381981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
382981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* The weight in % of the new packet relative to the previous average value of RSSI */
383981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define RSSI_DEFAULT_WEIGHT             20
384981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
385981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define RSSI_DEFAULT_THRESHOLD          -80
386981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define SNR_DEFAULT_THRESHOLD           0
387981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
388981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
389981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 'No beacon' roaming trigger configuration
390981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Number of consecutive beacons (or DTIM periods) missed before
391981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 'Out of Sync' event is raised
392981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
393981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OUT_OF_SYNC_DEFAULT_THRESHOLD   10
394981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
395981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * IBSS - Number of consecutive beacons (or DTIM periods) missed before
396981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 'Out of Sync' event is raised
397981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
398981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define OUT_OF_SYNC_IBSS_THRESHOLD      200
399981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Period of time between 'Out of sync' and 'No beacon' events */
400981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define NO_BEACON_DEFAULT_TIMEOUT       100 /* in tu-s*/
401981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
402981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Consecutive NACK roaming trigger configuration */
403981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define NO_ACK_DEFAULT_THRESHOLD        20
404981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
405981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Low Rx rate roaming trigger configuration */
406981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define LOW_RATE_DEFAULT_THRESHOLD      2
407981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
408981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MEASUREMENT_NOISE_HISTOGRAM_NUM_OF_RANGES       8
409981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_CHANNELS_IN_REG_DOMAIN      40
410981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
411981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define CTS_TO_SELF_DISABLE             0
412981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define CTS_TO_SELF_ENABLE              1
413981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
414981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_TEMPLATE_SIZE               256
415981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
416981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Scan constants */
417981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_NUMBER_OF_CHANNELS_PER_SCAN                     16
418981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define SCAN_MAX_NUM_OF_NORMAL_CHANNELS_PER_COMMAND         MAX_NUMBER_OF_CHANNELS_PER_SCAN
419981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define SCAN_MAX_NUM_OF_SPS_CHANNELS_PER_COMMAND            16
420981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define SCAN_DEFAULT_MIN_CHANNEL_DWELL_TIME                 30000
421981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define SCAN_DEFAULT_MAX_CHANNEL_DWELL_TIME                 60000
422981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define SCAN_DEFAULT_EARLY_TERMINATION_EVENT                SCAN_ET_COND_DISABLE
423981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define SCAN_DEFAULT_EARLY_TERMINATION_NUM_OF_FRAMES        0
424981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
425981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define NUM_OF_NOISE_HISTOGRAM_COUNTERS 8
426981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
427981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TX_DESCRIPTOR_SIZE             sizeof(TxIfDescriptor_t)
428981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
429981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define CTRL_BLK_ENTRIES_NUM            128
430981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
431981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_CAP_AMPDU_PARAMETERS_FIELD_OFFSET   2
432981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_CAP_HT_EXTENDED_FIELD_OFFSET        19
433981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_CAP_AMPDU_MAX_RX_FACTOR_BITMASK     0x3
434981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_CAP_AMPDU_MIN_START_SPACING_BITMASK 0x7
435981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_CAP_GREENFIELD_FRAME_FORMAT_BITMASK 0x0010
436981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_CAP_SHORT_GI_FOR_20MHZ_BITMASK      0x0020
437981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_CAP_LSIG_TXOP_PROTECTION_BITMASK    0x8000
438981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_EXT_HT_CONTROL_FIELDS_BITMASK       0x0400
439981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_EXT_RD_INITIATION_BITMASK           0x0800
440981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_INF_RIFS_MOD_BITMASK                0x08
441981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_INF_OPERATION_MOD_BITMASK           0x03
442981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_INF_NON_GF_PRES_BITMASK             0x04
443981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_INF_TX_BURST_LIMIT_BITMASK          0x08
444981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define HT_INF_DUAL_BEACON_BITMASK             0x40
445981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
446981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
447981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * TWD HT capabilities, physical capabilities of the STA.
448981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The structure is defined like that in order to simplify the interface with WHA layer.
449981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
450981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define RX_TX_MCS_BITMASK_SIZE      10
451981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
452981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define  DSSS_CCK_MODE         					1
453981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
454981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MCS_HIGHEST_SUPPORTED_RECEPTION_DATA_RATE_IN_MBIT_S 0x48
455981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
456981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define IMPLICIT_TXBF_REC_CAPABLE             	1
457981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define TRANSMIT_STAGGERED_SOUNDING_CAPABLE   	1
458981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
459981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Firmware version name length */
460981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define FW_VERSION_LEN                  		20
461981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
462981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*the max table sized is : ( number of 221 * 8 bytes ) + ( non-221 * 2 bytes )
463981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  Must be synchronized with the size of ACX defined in public_infoele.h interface
464981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt  with the FW
465981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt*/
466981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MIB_MAX_SIZE_OF_IE_TABLE 				112
467981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MIB_TEMPLATE_DATA_MAX_LEN   			256
468981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MIB_MAX_MULTICAST_GROUP_ADDRS			8
469981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
470981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_MULTICAST_GROUP_ADDRS				8
471981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
472981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Max numver of policies */
473981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_NUM_OF_TX_RATE_CLASS_POLICIES   	8
474981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
475981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define NUM_POWER_LEVELS                		4
476981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MAX_POWER_LEVEL                 		1
477981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#define MIN_POWER_LEVEL                 		NUM_POWER_LEVELS
478981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
479981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
480981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
481981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *	Enumerations
482981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
483981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
484981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EFileType
485981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD input/output files
486981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
487981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
488981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Indicates which File (or part of file) to read or write
489981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
490981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TFileInfo
491981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
492981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
493981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
494981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    FILE_TYPE_INI = 0, 	/**< */
495981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    FILE_TYPE_NVS, 		/**< */
496981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    FILE_TYPE_FW, 		/**< */
497981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    FILE_TYPE_FW_NEXT 	/**< */
498981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EFileType;
499981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
500981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EKeepAliveTriggerType
501981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Keep Alive Trigger Types
502981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
503981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
504981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Indicates when to trigger Keep Alive
505981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
506981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TKeepAliveParams
507981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
508981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
509981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
510981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
511981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    KEEP_ALIVE_TRIG_TYPE_NO_TX = 0,		/**< */
512981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    KEEP_ALIVE_TRIG_TYPE_PERIOD_ONLY	/**< */
513981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
514981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EKeepAliveTriggerType;
515981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
516981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ESlotTime
517981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Radio (PHY) Slot Time Type
518981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
519981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
520981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for configuring PHY Slot Time for FW
521981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
522981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_CfgPreamble
523981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
524981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
525981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
526981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	PHY_SLOT_TIME_LONG		= 0,	/**< 	Long PHY Slot Time  */
527981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    PHY_SLOT_TIME_SHORT     = 1		/**< 	Short PHY Slot Time  */
528981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
529981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ESlotTime;
530981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
531981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EMib
532981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief MIB Element Type
533981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
534981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
535981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for R/W MIB to FW
536981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
537981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TMib
538981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
539981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
540981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
541981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x00	*/	MIB_dot11MaxReceiveLifetime = 0,	/**< */
542981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x01	*/  MIB_dot11SlotTime,					/**< */
543981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x02	*/  MIB_dot11GroupAddressesTable,		/**< */
544981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x03	*/  MIB_dot11WepDefaultKeyId,			/**< */
545981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x04	*/  MIB_dot11CurrentTxPowerLevel,		/**< */
546981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x05	*/  MIB_dot11RTSThreshold,				/**< */
547981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x06	*/  MIB_ctsToSelf,						/**< */
548981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x07	*/  MIB_arpIpAddressesTable,			/**< */
549981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x08	*/  MIB_templateFrame,					/**< */
550981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x09	*/  MIB_rxFilter,						/**< */
551981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0A	*/  MIB_beaconFilterIETable,			/**< */
552981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0B	*/  MIB_beaconFilterEnable,				/**< */
553981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0C	*/  MIB_sleepMode,						/**< */
554981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0D	*/  MIB_wlanWakeUpInterval,				/**< */
555981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0E	*/  MIB_beaconLostCount,				/**< */
556981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0F	*/  MIB_rcpiThreshold,					/**< */
557981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x10	*/  MIB_statisticsTable,				/**< */
558981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x11	*/  MIB_ibssPsConfig,					/**< */
559981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x12	*/  MIB_txRatePolicy,					/**< */
560981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x13	*/  MIB_countersTable,					/**< */
561981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x14	*/  MIB_btCoexsitenceMode,				/**< */
562981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x15	*/  MIB_btCoexistenceParameters,		/**< */
563981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
564981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt				/* must be last!!! */
565981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt				MIB_lastElem	= 0xFFFF			/**< */
566981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
567981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EMib;
568981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
569981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdParam
570981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Control parameter ID
571981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
572981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
573981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * FW Parmaeter Information Identifier
574981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
575981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_SetParam, TWD_GetParam
576981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
577981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
578981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
579981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x01	*/	TWD_RTS_THRESHOLD_PARAM_ID          = 0x01,		/**< */
580981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x02	*/  TWD_FRAG_THRESHOLD_PARAM_ID,					/**< */
581981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x03	*/  TWD_COUNTERS_PARAM_ID,							/**< */
582981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x04	*/  TWD_LISTEN_INTERVAL_PARAM_ID,					/**< */
583981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x05	*/  TWD_BEACON_INTERVAL_PARAM_ID,					/**< */
584981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x06	*/  TWD_TX_POWER_PARAM_ID,    						/**< */
585981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x07	*/  TWD_CLK_RUN_ENABLE_PARAM_ID,					/**< */
586981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x08	*/  TWD_QUEUES_PARAM_ID, 							/**< */
587981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x09	*/  TWD_TX_RATE_CLASS_PARAM_ID,						/**< */
588981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0A	*/  TWD_MAX_TX_MSDU_LIFE_TIME_PARAM_ID,				/**< */
589981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0B	*/  TWD_MAX_RX_MSDU_LIFE_TIME_PARAM_ID,				/**< */
590981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0C	*/  TWD_CTS_TO_SELF_PARAM_ID,						/**< */
591981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0D	*/  TWD_RX_TIME_OUT_PARAM_ID,						/**< */
592981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0E	*/  TWD_BCN_BRC_OPTIONS_PARAM_ID,					/**< */
593981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x0F	*/	TWD_AID_PARAM_ID,								/**< */
594981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x10	*/  TWD_RSN_HW_ENC_DEC_ENABLE_PARAM_ID,  			/**< */
595981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x11	*/  TWD_RSN_KEY_ADD_PARAM_ID,						/**< */
596981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x12	*/  TWD_RSN_KEY_REMOVE_PARAM_ID,					/**< */
597981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x13	*/  TWD_RSN_DEFAULT_KEY_ID_PARAM_ID,				/**< */
598981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x14	*/  TWD_RSN_SECURITY_MODE_PARAM_ID,					/**< */
599981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x15	*/  TWD_RSN_SECURITY_ALARM_CB_SET_PARAM_ID,			/**< */
600981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x16	*/  TWD_ACX_STATISTICS_PARAM_ID,					/**< */
601981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x17	*/  TWD_MEDIUM_OCCUPANCY_PARAM_ID,					/**< */
602981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x18	*/  TWD_DISABLE_POWER_MANAGEMENT_AUTO_CONFIG_PARAM_ID,	/**< */
603981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x19	*/  TWD_ENABLE_POWER_MANAGEMENT_AUTO_CONFIG_PARAM_ID,	/**< */
604981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x1A	*/  TWD_SG_ENABLE_PARAM_ID,							/**< */
605981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x1B	*/  TWD_SG_CONFIG_PARAM_ID,							/**< */
606981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifdef XCC_MODULE_INCLUDED
607981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x1C	*/  TWD_RSN_XCC_SW_ENC_ENABLE_PARAM_ID,				/**< */
608981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x1D	*/  TWD_RSN_XCC_MIC_FIELD_ENABLE_PARAM_ID,			/**< */
609981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif /* XCC_MODULE_INCLUDED*/
610981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x1E	*/  TWD_TX_OP_LIMIT_PARAM_ID,						/**< */
611981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x1F	*/  TWD_NOISE_HISTOGRAM_PARAM_ID,					/**< */
612981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x20	*/  TWD_TSF_DTIM_MIB_PARAM_ID,						/**< */
613981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x21	*/  TWD_REVISION_PARAM_ID,							/**< */
614981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x22	*/  TWD_CURRENT_CHANNEL_PARAM_ID,					/**< */
615981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x23	*/	TWD_RADIO_TEST_PARAM_ID,						/**< */
616981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x24	*/	TWD_RSSI_LEVEL_PARAM_ID,						/**< */
617981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x25	*/	TWD_SNR_RATIO_PARAM_ID,							/**< */
618981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0x26	*/	TWD_COEX_ACTIVITY_PARAM_ID,	    				/**< */
619653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt/*	0x27	*/	TWD_FM_COEX_PARAM_ID,	    				    /**< */
620981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
621981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt				/* must be last!!! */
622653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt/*	0x28    */	TWD_LAST_PARAM_ID								/**< */
623981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdParam;
624981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
625981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdCallbackOwner
626981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Callback Module owner ID
627981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
628981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
629981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The Owner ID defines a specific TWD Module
630981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
631981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa ETwdEventId, TWD_RegisterCb
632981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
633981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
634981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
635981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_OWNER_DRIVER_TX_XFER            = 0x0100,	/**< 	TX Xfer Owner ID  		*/
636981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_OWNER_RX_XFER                   = 0x0200,	/**< 	RX Xfer Owner ID  		*/
637981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_OWNER_SELF                      = 0x0300,	/**< 	Self Owner ID  			*/
638981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_OWNER_MAC_SERVICES              = 0x0400,	/**< 	MAC Services Owner ID  	*/
639981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_OWNER_TX_RESULT                 = 0x0500,	/**< 	TX Result Owner ID  	*/
640981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_OWNER_SELF_CONFIG               = 0x0600,	/**< 	Self configuration of Owner ID  	*/
641981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_OWNER_RX_QUEUE                  = 0x0700,	/**< 	RX Queue Owner ID  		*/
642981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_OWNER_TX_HW_QUEUE               = 0x0800	/**< 	TX HW Queue Owner ID  	*/
643981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
644981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdCallbackOwner;
645981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
646981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdIntCallbackId
647981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Internal Callbacks ID
648981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
649981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
650981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The Owner ID defines a specific TWD Internal CB
651981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
652981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa ETwdEventId
653981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
654981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
655981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
656981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_INT_SEND_PACKET_TRANSFER        =  0x00 ,	/**< 	Tx Data Path Send Callback  	*/
657981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_INT_SEND_PACKET_COMPLETE                , 	/**< 	Tx Data Path Complete Callback 	*/
658981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_INT_UPDATE_BUSY_MAP                     , 	/**< 	Tx Data Path Update-Busy-Map Callback 	*/
659981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
660981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* Rx Data Path Callbacks */
661981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_INT_RECEIVE_PACKET              =  0x10 ,	/**< 	Rx Data Path Receive Packet Callback 	   	*/
662981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_INT_REQUEST_FOR_BUFFER                  , 	/**< 	Rx Data Path Request for buffer Callback  	*/
663981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
664981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* TWD Callbacks */
665981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_INT_COMMAND_COMPLETE            =  0x20 , 	/**< 	TWD internal Command Complete Callback  	*/
666981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_INT_EVENT_FAILURE  							/**< 	TWD internal Event Failure handle Callback 	*/
667981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
668981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdIntCallbackId;
669981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
670981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdOwnEventId
671981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Event Mail Box ID
672981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
673981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
674981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Clients That expects an event should register for it,
675981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * and Mask/UnMask Events with this ID
676981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
677981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
678981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
679981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Note: changes here should be reflected also in eventTable in eventMbox.c !!! */
680981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
681981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
682981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt			/*Regular events*/
683981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/  TWD_OWN_EVENT_RSSI_SNR_TRIGGER_0 = 0,       /**< */
684981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/  TWD_OWN_EVENT_RSSI_SNR_TRIGGER_1,           /**< */
685981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/  TWD_OWN_EVENT_RSSI_SNR_TRIGGER_2,           /**< */
686981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/  TWD_OWN_EVENT_RSSI_SNR_TRIGGER_3,           /**< */
687981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/  TWD_OWN_EVENT_RSSI_SNR_TRIGGER_4,          	/**< */
688981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	5	*/  TWD_OWN_EVENT_RSSI_SNR_TRIGGER_5,           /**< */
689981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	6	*/  TWD_OWN_EVENT_RSSI_SNR_TRIGGER_6,           /**< */
690981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	7	*/  TWD_OWN_EVENT_RSSI_SNR_TRIGGER_7,           /**< */
691981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	8	*/	TWD_OWN_EVENT_MEASUREMENT_START,            /**< */
692981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	9	*/  TWD_OWN_EVENT_MEASUREMENT_COMPLETE,         /**< */
693981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	10	*/	TWD_OWN_EVENT_SCAN_CMPLT,                   /**< */
694981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	11	*/  TWD_OWN_EVENT_SPS_SCAN_CMPLT,               /**< */
695981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	12	*/  TWD_OWN_EVENT_AP_DISCOVERY_COMPLETE,        /**< */
696981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	13	*/  TWD_OWN_EVENT_PS_REPORT,                    /**< */
697981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	14	*/	TWD_OWN_EVENT_PSPOLL_DELIVERY_FAILURE, 		/**< */
698981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	15	*/  TWD_OWN_EVENT_DISCONNECT_COMPLETE,          /**< */
699981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	16	*/  TWD_OWN_EVENT_JOIN_CMPLT,                   /**< */
700981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	17	*/  TWD_OWN_EVENT_SWITCH_CHANNEL_CMPLT,         /**< */
701981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	18	*/  TWD_OWN_EVENT_BSS_LOSE,                     /**< */
702981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	19	*/  TWD_OWN_EVENT_BSS_REGAIN,                   /**< */
703981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	20	*/  TWD_OWN_EVENT_MAX_TX_RETRY,                 /**< */
704981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  21  */  RESERVED21,									/**< */
705981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	22	*/  TWD_OWN_EVENT_SOFT_GEMINI_SENSE,            /**< */
706981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	23	*/  TWD_OWN_EVENT_SOFT_GEMINI_PREDIC,           /**< */
707981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	24	*/  TWD_OWN_EVENT_SOFT_GEMINI_AVALANCHE,        /**< */
708981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	25	*/  TWD_OWN_EVENT_PLT_RX_CALIBRATION_COMPLETE,  /**< */
709981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  26  */  TWD_DBG_EVENT,								/**< */
710981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  27  */  TWD_HEALTH_CHECK_REPLY_EVENT,				/**< */
711981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	28	*/  TWD_OWN_EVENT_PERIODIC_SCAN_COMPLETE,       /**< */
712981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	29	*/  TWD_OWN_EVENT_PERIODIC_SCAN_REPORT,         /**< */
713981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*  30  */  TWD_BA_SESSION_TEAR_DOWN_EVENT,				/**< */
714981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	31	*/  TWD_OWN_EVENT_ALL,                          /**< */
715981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	32	*/  TWD_OWN_EVENT_MAX                          	/**< */
716981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
717981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdOwnEventId;
718981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
719981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdEventId
720981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TNETW Driver Event ID
721981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
722981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
723981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The TWD Event ID is used by user for registering a TWD Internal CB
724981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * which will handle a TWD Event.
725981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Each field in this enum is an ID of TWD Event, and is combined of two IDs:
726981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * TWD CB Owner (Module) ID and TWD Internal CB ID. Therefore, the CB is registered accordeing to
727981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Module (Owner) and Internal CB Id.
728981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
729981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_RegisterCb, ETwdCallbackOwner, ETwdIntCallbackId
730981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
731981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
732981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
733981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* Internal Failure Event Callbacks */
734981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_EVENT_FAILURE                   	=  TWD_OWNER_SELF | TWD_INT_EVENT_FAILURE, 					/**< 	Failure Internal Event ID 			*/
735981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_EVENT_COMMAND_COMPLETE          	=  TWD_OWNER_SELF | TWD_INT_COMMAND_COMPLETE,  				/**< 	Command Complete Internal Event ID */
736981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
737981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* Tx Data Path Callbacks */
738981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_EVENT_TX_XFER_SEND_PKT_TRANSFER 	=  TWD_OWNER_DRIVER_TX_XFER | TWD_INT_SEND_PACKET_TRANSFER,	/**< 	TX Data Path Send Packet Event ID 			*/
739981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_EVENT_TX_RESULT_SEND_PKT_COMPLETE	=  TWD_OWNER_TX_RESULT | TWD_INT_SEND_PACKET_COMPLETE,      /**< 	TX Data Path Send Packet Complete Event ID 	*/
740981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_EVENT_TX_HW_QUEUE_UPDATE_BUSY_MAP   =  TWD_OWNER_TX_HW_QUEUE | TWD_INT_UPDATE_BUSY_MAP,         /**< 	TX Data Path Update-Busy-Map Event ID 	*/
741981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
742981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* Rx Data Path Callbacks */
743981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_EVENT_RX_REQUEST_FOR_BUFFER     	=  TWD_OWNER_RX_XFER | TWD_INT_REQUEST_FOR_BUFFER,         	/**< 	RX Data Path Request for Buffer Internal Event ID 	*/
744981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TWD_EVENT_RX_RECEIVE_PACKET         	=  TWD_OWNER_RX_QUEUE | TWD_INT_RECEIVE_PACKET             	/**< 	RX Data Path Receive Packet Internal Event ID  	*/
745981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
746981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdEventId;
747981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
748981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifdef TI_DBG
749981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdPrintInfoType
750981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD print functions codes
751981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
752981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
753981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Debug - determines which Tx Info to print
754981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
755981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_PrintTxInfo
756981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
757981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
758981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
759981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	TWD_PRINT_TX_CTRL_BLK_TBL = 0,	/**< 	Print TX Control Block Information	*/
760981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/  TWD_PRINT_TX_HW_QUEUE_INFO,		/**< 	Print TX HW Queue Information 		*/
761981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/  TWD_PRINT_TX_XFER_INFO,			/**< 	Print TX XFER Information 			*/
762981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/  TWD_PRINT_TX_RESULT_INFO,		/**< 	Print TX Result Information 		*/
763981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/  TWD_CLEAR_TX_RESULT_INFO		/**< 	Clear TX Result Information			*/
764981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
765981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdPrintInfoType;
766981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
767981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
768981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EIpVer
769981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief IP Version
770981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
771981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
772981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
773981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_PrintTxInfo
774981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
775981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
776981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
777981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	IP_VER_4 = 0, 	/**< */
778981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/  IP_VER_6	 	/**< */
779981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
780981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EIpVer;
781981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
782981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EKeyType
783981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Key Type
784981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
785981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
786981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Security Key Type
787981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
788981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TSecurityKeys
789981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
790981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
791981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
792981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/  KEY_NULL = 0,	/**< */
793981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/  KEY_WEP,		/**< */
794981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/  KEY_TKIP,		/**< */
795981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/  KEY_AES,		/**< */
796981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/  KEY_XCC,    	/**< */
797981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifdef GEM_SUPPORTED
798981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /*  5   */  KEY_GEM
799981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
800981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
801981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EKeyType;
802981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
803981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ERegistryTxRate
804981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TX Rate Type
805981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
806981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
807981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
808981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
809981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
810981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Make it same as "rate_e" */
811981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
812981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
813981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* This value is reserved if this enum is used for MgmtCtrlTxRate - the auto mode is only valid for data packets */
814981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	REG_RATE_AUTO_BIT = 0, 		/**< */
815981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	REG_RATE_1M_BIT,			/**< */
816981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	REG_RATE_2M_BIT,			/**< */
817981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	REG_RATE_5_5M_CCK_BIT,		/**< */
818981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/	REG_RATE_11M_CCK_BIT,		/**< */
819981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	5	*/	REG_RATE_22M_PBCC_BIT,		/**< */
820981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	6	*/	REG_RATE_6M_OFDM_BIT,		/**< */
821981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	7	*/	REG_RATE_9M_OFDM_BIT,		/**< */
822981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	8	*/	REG_RATE_12M_OFDM_BIT,		/**< */
823981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	9	*/	REG_RATE_18M_OFDM_BIT,		/**< */
824981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	10	*/	REG_RATE_24M_OFDM_BIT,		/**< */
825981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	11	*/	REG_RATE_36M_OFDM_BIT,		/**< */
826981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	12	*/	REG_RATE_48M_OFDM_BIT,		/**< */
827981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	13	*/	REG_RATE_54M_OFDM_BIT,		/**< */
828981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	14	*/	REG_RATE_MCS0_OFDM_BIT,		/**< */
829981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	15	*/	REG_RATE_MCS1_OFDM_BIT,		/**< */
830981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	16	*/	REG_RATE_MCS2_OFDM_BIT,		/**< */
831981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	17	*/	REG_RATE_MCS3_OFDM_BIT,		/**< */
832981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	18	*/	REG_RATE_MCS4_OFDM_BIT,		/**< */
833981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	19	*/	REG_RATE_MCS5_OFDM_BIT,		/**< */
834981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	20	*/	REG_RATE_MCS6_OFDM_BIT,		/**< */
835981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	21	*/	REG_RATE_MCS7_OFDM_BIT		/**< */
836981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
837981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ERegistryTxRate;
838981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
839981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EFailureEvent
840981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Failure Event
841981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
842981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
843981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used as a parameter for Failure Event CB -
844981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Inicates Failure Event ID, according which the Failure
845981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Event's data is driven
846981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
847981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_RegisterOwnCb, TFailureEventCb
848981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
849981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
850981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
851981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	-1	*/	NO_FAILURE = -1,				/**< 	No Failure Event					*/
852981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	NO_SCAN_COMPLETE_FAILURE = 0,	/**< 	No Scan Complete Failure Event		*/
853981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	MBOX_FAILURE,					/**< 	Mail Box Failure Event				*/
854981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	HW_AWAKE_FAILURE,				/**< 	HW Awake Failure Event				*/
855981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	TX_STUCK,						/**< 	TX STUCK Failure Event				*/
856981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/	DISCONNECT_TIMEOUT,				/**< 	Disconnect Timeout Failure Event	*/
857981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	5	*/	POWER_SAVE_FAILURE,				/**< 	Power Save Failure Event			*/
858981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	6	*/	MEASUREMENT_FAILURE,			/**< 	Measurement Failure Event			*/
859981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	7	*/	BUS_FAILURE,					/**< 	Bus Failure Event					*/
860981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	8	*/	HW_WD_EXPIRE,					/**< 	HW Watchdog Expire Event			*/
861653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt/*	9	*/	RX_XFER_FAILURE,			    /**< 	Rx pkt xfer failure                 */
862981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
863981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* must be last!!! */
864653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt/* 10	*/	MAX_FAILURE_EVENTS				/**< 	Maximum number of Failure Events	*/
865981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
866981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EFailureEvent;
867981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
868981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETemplateType
869981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Template Type
870981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
871981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
872981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for setting/Getting a Template to/from FW
873981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
874981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_CmdTemplate, TWD_WriteMibTemplateFrame, TSetTemplate TWD_GetTemplate
875981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
876981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
877981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
878981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	NULL_DATA_TEMPLATE = 0,		/**< NULL Data Template						*/
879981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	BEACON_TEMPLATE,        	/**< Beacon Template						*/
880981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	PROBE_REQUEST_TEMPLATE,     /**< PROBE Request Template					*/
881981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	PROBE_RESPONSE_TEMPLATE,	/**< PROBE Response Template				*/
882981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/	QOS_NULL_DATA_TEMPLATE,		/**< Quality Of Service NULL Data Template	*/
883981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	5	*/	PS_POLL_TEMPLATE,			/**< Power Save Poll Template				*/
884981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	6	*/	KEEP_ALIVE_TEMPLATE,		/**< Keep Alive Template 					*/
885981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	7	*/	DISCONN_TEMPLATE			/**< Disconn (Deauth/Disassoc) Template		*/
886981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETemplateType;
887981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
888981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
889981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
890981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
891981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
892981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
893981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    KEY_WEP_DEFAULT       = 0,
894981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    KEY_WEP_ADDR          = 1,
895981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    KEY_AES_GROUP         = 4,
896981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    KEY_AES_PAIRWISE      = 5,
897981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    KEY_WEP_GROUP         = 6,
898981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    KEY_TKIP_MIC_GROUP    = 10,
899981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    KEY_TKIP_MIC_PAIRWISE = 11
900981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} KeyType_enum;
901981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
902981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
903981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ECipherSuite
904981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief CHIPHER Suite
905981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
906981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
907981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Available cipher suites for admission control
908981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
909981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
910981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
911981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
912981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
913981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	TWD_CIPHER_NONE = 0,			/**< no cipher suite 		*/
914981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	TWD_CIPHER_WEP,        			/**< WEP-40 cipher suite 	*/
915981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	TWD_CIPHER_TKIP,        		/**< TKIP cipher suite      */
916981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	TWD_CIPHER_AES_WRAP,    		/**< AES WRAP cipher suite  */
917981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/	TWD_CIPHER_AES_CCMP,    		/**< AES CCMP cipher suite  */
918981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	5	*/	TWD_CIPHER_WEP104,      		/**< WEP-104 cipher suite 	*/
919981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	6	*/	TWD_CIPHER_CKIP,        		/**< CKIP cipher suite      */
920981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifdef GEM_SUPPORTED
921981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /*	7	*/	TWD_CIPHER_GEM,         		/**< GEM cipher suite       */
922981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
923981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt            TWD_CIPHER_MAX,
924981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
925981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt			TWD_CIPHER_UNKNOWN	= 255       /**< UNKNOWN chpiher suite 	*/
926981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
927981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ECipherSuite;
928981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
929981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum E80211PsMode
930981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief 802.11 Power Save Mode
931981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
932981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
933981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
934981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_Scan, TWD_SetPsMode
935981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
936981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
937981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
938981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	POWER_SAVE_OFF = 0,		/**< 	power save 802.11 OFF   		*/
939981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	POWER_SAVE_ON,			/**< 	power save 802.11 ON  			*/
940981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	POWER_SAVE_KEEP_CURRENT	/**< 	power save 802.11 don't change 	*/
941981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
942981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} E80211PsMode;
943981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
944981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum E80211PsStatus
945981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Set Power Save mode status
946981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
947981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
948981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
949981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
950981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
951981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
952981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
953981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	POWER_SAVE_802_11_SUCCESS = 1,	/**< 	power save mode Success   	*/
954981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	POWER_SAVE_802_11_FAIL,			/**< 	power save mode Fail    	*/
955981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	POWER_SAVE_802_11_NOT_ALLOWED,	/**< 	power save mode Not Allowed	*/
956981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/	POWER_SAVE_802_11_PENDING,		/**< 	power save mode Pending    	*/
957981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	5	*/	POWER_SAVE_802_11_IS_CURRENT	/**< 	power save mode Is Current 	*/
958981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
959981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} E80211PsStatus;
960981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
961981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EElpCtrlMode
962981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief ELP Control Mode
963981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
964981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
965981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
966981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
967981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
968981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
969981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
970981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	ELPCTRL_MODE_NORMAL = 0,	/**< ALP Control mode Normal   		*/
971981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	ELPCTRL_MODE_KEEP_AWAKE		/**< ALP Control mode Keep Awake   	*/
972981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
973981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EElpCtrlMode;
974981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
975981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EPreamble
976981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Preamble Type
977981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
978981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
979981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
980981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_CfgPreamble
981981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
982981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
983981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
984981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    PREAMBLE_LONG       	= 0,	/**< Preamble type Long   			*/
985981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    PREAMBLE_SHORT          = 1,	/**< Preamble type Short   			*/
986981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
987981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    PREAMBLE_UNSPECIFIED    = 0xFF	/**< Preamble type Not Specified   	*/
988981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
989981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EPreamble;
990981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
991981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ENoiseHistogramCmd
992981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Noise Histogram Type
993981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
994981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
995981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
996981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TNoiseHistogram, TWD_CmdNoiseHistogram
997981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
998981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
999981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1000981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt     STOP_NOISE_HIST                    = 0,	/**< Stop Noise Histogram	*/
1001981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt     START_NOISE_HIST                   = 1		/**< Start Noise Histogram	*/
1002981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1003981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ENoiseHistogramCmd;
1004981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1005981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETnetWakeOn
1006981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief ACX Wake Up Condition
1007981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1008981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1009981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1010981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TPowerMgmtConfig, TWD_CfgWakeUpCondition
1011981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1012981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1013981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1014981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1015981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	TNET_WAKE_ON_BEACON = 0,       	/**< Indicate the wake on event of the HW - beacon.
1016981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt											* In this event the HW configure to be awake on every beacon.
1017981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt											*/
1018981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1019981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	TNET_WAKE_ON_DTIM,             /**< Indicate the wake on event of the HW - DTIM. In this event
1020981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt											* the HW configure to be awake on every DITM (configure by the AP).
1021981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt											*/
1022981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1023981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	TNET_WAKE_ON_N_BEACON,          /**< Indicate the wake on event of the HW - listen interval.
1024981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt											* In this event the HW configure to be awake on every
1025981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt											* configured number of beacons.
1026981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt											*/
1027981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1028981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	TNET_WAKE_ON_N_DTIM,            /**< Indicate the wake on event of the HW - listen interval.
1029981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt											* In this event the HW configure to be awake on every
1030981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt											* configured number of beacons.
1031981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt											*/
1032981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1033981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/	TNET_WAKE_ON_HOST              /**< Indicate the wake on event of the HW - Host access only
1034981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt											*/
1035981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1036981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETnetWakeOn;
1037981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1038981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETxAntenna
1039981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TX Antenna Types
1040981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1041981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1042981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1043981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TGeneralInitParams, TTwdParamContents
1044981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1045981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1046981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1047981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TX_ANTENNA_2	= 0, 	/**< */
1048981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TX_ANTENNA_1    = 1		/**< */
1049981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1050981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETxAntenna;
1051981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1052981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ERxAntenna
1053981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief RX Antenna Types
1054981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1055981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1056981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1057981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TGeneralInitParams, TTwdParamContents
1058981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1059981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1060981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1061981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	RX_ANTENNA_1 = 0,	/**< */
1062981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	RX_ANTENNA_2,		/**< */
1063981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	RX_ANTENNA_FULL,	/**< */
1064981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	RX_ANTENNA_PARTIAL	/**< */
1065981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1066981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ERxAntenna;
1067981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1068981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EPowerPolicy
1069981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Save Power Level Policy
1070981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1071981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1072981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1073981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_CfgSleepAuth
1074981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1075981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1076981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1077981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	POWERAUTHO_POLICY_ELP = 0,	/**< */
1078981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	POWERAUTHO_POLICY_PD,		/**< */
1079981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	POWERAUTHO_POLICY_AWAKE,	/**< */
1080981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	POWERAUTHO_POLICY_NUM		/**< */
1081981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1082981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EPowerPolicy;
1083981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1084981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ESoftGeminiEnableModes
1085981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Soft-Gemini Enable Modes
1086981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1087981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1088981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1089981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1090981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1091981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1092981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1093981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	SG_DISABLE = 0,			/**< */
1094981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	SG_PROTECTIVE,			    /**< */
1095981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	SG_OPPORTUNISTIC,	/**< */
1096981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1097981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1098981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ESoftGeminiEnableModes;
1099981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ESoftGeminiEnableProfile
1100981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Soft-Gemini Profile Modes for S60 configuration
1101981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1102981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1103981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1104981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1105981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1106981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1107981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1108981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    BtCoexProfData = 0,
1109981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    BtCoexProfDataLowLatency,
1110981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    BtCoexProfA2DP
1111981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}ESoftGeminiEnableProfile;
1112981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1113981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1114981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EMibTemplateType
1115981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief MIB Template type
1116981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1117981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1118981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1119981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1120981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1121981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1122981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1123981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/ 	TEMPLATE_TYPE_BEACON = 0,           /**< 	BEACON template 			*/
1124981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/  TEMPLATE_TYPE_PROBE_REQUEST,        /**< 	PROB template 				*/
1125981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/  TEMPLATE_TYPE_NULL_FRAME,           /**< 	NULL FRAM template 			*/
1126981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/  TEMPLATE_TYPE_PROBE_RESPONSE,       /**< 	PROB Response template 		*/
1127981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/  TEMPLATE_TYPE_QOS_NULL_FRAME,       /**< 	QOS Null Frame template 	*/
1128981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	5	*/  TEMPLATE_TYPE_PS_POLL               /**< 	Power Save Poll template	*/
1129981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1130981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EMibTemplateType;
1131981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1132981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1133981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ERxFailure
1134981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief RX Failure/Error
1135981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1136981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1137981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1138981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1139981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1140981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1141981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1142981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	RX_FAILURE_NONE = 0,		/**< No Failure		*/
1143981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	RX_FAILURE_DECRYPT,         /**< DeCrypt Failure	*/
1144981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	RX_FAILURE_MIC_ERROR,		/**< MIC Error		*/
1145981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ERxFailure;
1146981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1147981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdChannelWidth
1148981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Channel Width
1149981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1150981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1151981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Configure HT Capabilities Settings
1152981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1153981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_SetDefaults, TTwdHtCapabilities
1154981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1155981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1156981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1157981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	CHANNEL_WIDTH_20MHZ = 0,		/**< 20MHZ Channel Width	*/
1158981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/  CHANNEL_WIDTH_40MHZ_20MHZ		/**< 40-20MHZ Channel Width	*/
1159981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdChannelWidth;
1160981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1161981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdRxSTBC
1162981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief RX STBC Spatial Stream Supported
1163981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1164981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1165981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Indicates how many RX STBC Spatial Stream are Supported
1166981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Configure HT Capabilities Settings
1167981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1168981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_SetDefaults, TTwdHtCapabilities
1169981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1170981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1171981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1172981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	RXSTBC_NOT_SUPPORTED  =   0,							/**< No Spatial Stream Supported					*/
1173981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/  RXSTBC_SUPPORTED_ONE_SPATIAL_STREAM, 					/**< One Spatial Stream Supported					*/
1174981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/  RXSTBC_SUPPORTED_ONE_AND_TWO_SPATIAL_STREAMS,			/**< One and Two Spatial Stream Supported			*/
1175981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/  RXSTBC_SUPPORTED_ONE_TWO_AND_THREE_SPATIAL_STREAMS	/**< One, Two and Three Spatial Stream Supported	*/
1176981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1177981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdRxSTBC;
1178981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1179981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdMaxAMSDU
1180981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Maximum MSDU Octets
1181981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1182981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1183981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Configure HT Capabilities Settings
1184981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1185981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_SetDefaults, TTwdHtCapabilities
1186981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1187981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1188981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1189981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	MAX_MSDU_3839_OCTETS = 0,	/**< Maximum MSDU Octets Number: 3839	*/
1190981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/  MAX_MSDU_7935_OCTETS		/**< Maximum MSDU Octets Number: 7935	*/
1191981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1192981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdMaxAMSDU;
1193981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1194981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdMaxAMPDU
1195981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Maximum MPDU Octets
1196981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1197981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1198981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Indicates What is the Maximum MPDU Octets Number
1199981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Configure HT Capabilities Settings
1200981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1201981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_SetDefaults, TTwdHtCapabilities
1202981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1203981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1204981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1205981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	MAX_MPDU_8191_OCTETS = 0,	/**< Maximum MPDU Octets Number: 8191	*/
1206981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/  MAX_MPDU_16383_OCTETS,		/**< Maximum MPDU Octets Number: 16383	*/
1207981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/  MAX_MPDU_32767_OCTETS,		/**< Maximum MPDU Octets Number: 32767	*/
1208981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/  MAX_MPDU_65535_OCTETS		/**< Maximum MPDU Octets Number: 65535	*/
1209981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1210981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdMaxAMPDU;
1211981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1212981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdAMPDUSpacing
1213981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD AMPDU Spacing
1214981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1215981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1216981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Indicates What is the Time Spacing of AMPDU
1217981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Configure HT Capabilities Settings
1218981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1219981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_SetDefaults, TTwdHtCapabilities
1220981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1221981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1222981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1223981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	AMPDU_SPC_NO_RESTRCITION =  0,	/**< No Restriction on AMPDU Time Spacing	*/
1224981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	AMPDU_SPC_1_4_MICROSECONDS, 	/**< 1/4 Microsecond AMPDU Time Spacing   	*/
1225981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	AMPDU_SPC_1_2_MICROSECONDS, 	/**< 1/2 Microsecond AMPDU Time Spacing   	*/
1226981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	AMPDU_SPC_1_MICROSECOND,  		/**< 1 Microsecond AMPDU Time Spacing   	*/
1227981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/	AMPDU_SPC_2_MICROSECONDS,		/**< 2 Microsecond AMPDU Time Spacing   	*/
1228981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	5	*/	AMPDU_SPC_4_MICROSECONDS,		/**< 4 Microsecond AMPDU Time Spacing   	*/
1229981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	6	*/	AMPDU_SPC_8_MICROSECONDS,		/**< 8 Microsecond AMPDU Time Spacing   	*/
1230981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	7	*/	AMPDU_SPC_16_MICROSECONDS 		/**< 16 Microsecond AMPDU Time Spacing   	*/
1231981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1232981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdAMPDUSpacing;
1233981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1234981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdMcsSupport
1235981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD MCS Support
1236981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1237981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1238981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * BIT Mapp which Indicates What is the Tx/rx MCS Support Enabled
1239981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Configure HT Capabilities Settings
1240981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1241981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_SetDefaults, TTwdHtCapabilities
1242981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1243981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1244981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1245981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	MCS_SUPPORT_MCS_0   =  BIT_0,	/**< BIT 0	*/
1246981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	MCS_SUPPORT_MCS_1   =  BIT_1,	/**< BIT 1	*/
1247981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	MCS_SUPPORT_MCS_2   =  BIT_2,	/**< BIT 2	*/
1248981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/	MCS_SUPPORT_MCS_3   =  BIT_3,	/**< BIT 3	*/
1249981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	5	*/	MCS_SUPPORT_MCS_4   =  BIT_4,	/**< BIT 4	*/
1250981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	6	*/	MCS_SUPPORT_MCS_5   =  BIT_5,	/**< BIT 5	*/
1251981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	7	*/	MCS_SUPPORT_MCS_6   =  BIT_6,	/**< BIT 6	*/
1252981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	8	*/	MCS_SUPPORT_MCS_7   =  BIT_7	/**< BIT 7	*/
1253981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1254981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdMcsSupport;
1255981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1256981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdPCOTransTime
1257981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD PCO Transition Time
1258981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1259981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1260981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Indicates What is the PCO Transition Time
1261981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Configure HT Capabilities Settings
1262981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1263981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_SetDefaults, TTwdHtCapabilities
1264981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1265981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1266981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1267981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	PCO_TRANS_TIME_NO_TRANSITION = 0, 	/**< No PCO Transition Time					*/
1268981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	PCO_TRANS_TIME_400_MICROSECONDS, 	/**< PCO Transition Time: 400 Microsecond	*/
1269981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	PCO_TRANS_TIME_1_5_MILLISECONDS, 	/**< PCO Transition Time: 1.5 Millisecond	*/
1270981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	PCO_TRANS_TIME_5_MILLISECONDS		/**< PCO Transition Time: 5 Millisecond		*/
1271981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1272981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdPCOTransTime;
1273981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1274981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdHTCapabilitiesBitMask
1275981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD HT Capabilities Bit Mask Mapping
1276981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1277981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1278981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Mapps the Bit Mask which are used for Making (Enabling/Disabling)
1279981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * HT Capabilities
1280981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1281981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_SetDefaults, TTwdHtCapabilities
1282981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1283981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1284981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1285981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	CAP_BIT_MASK_GREENFIELD_FRAME_FORMAT           =  BIT_0,	/**< BIT 0	*/
1286981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	CAP_BIT_MASK_SHORT_GI_FOR_20MHZ_PACKETS        =  BIT_1,	/**< BIT 1	*/
1287981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	CAP_BIT_MASK_SHORT_GI_FOR_40MHZ_PACKETS        =  BIT_2,	/**< BIT 2	*/
1288981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/	CAP_BIT_MASK_SUPPORT_FOR_STBC_IN_TRANSMISSION  =  BIT_3,	/**< BIT 3	*/
1289981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	5	*/	CAP_BIT_MASK_DELAYED_BLOCK_ACK                 =  BIT_4,	/**< BIT 4	*/
1290981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	6	*/	CAP_BIT_MASK_DSSS_CCK_IN_40_MHZ                =  BIT_5,	/**< BIT 5	*/
1291981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	7	*/	CAP_BIT_MASK_LSIG_TXOP_PROTECTION              =  BIT_6,	/**< BIT 6	*/
1292981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	8	*/	CAP_BIT_MASK_PCO                               =  BIT_7,	/**< BIT 7	*/
1293981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	9	*/	CAP_BIT_MASK_LDPC_CODING                       =  BIT_8		/**< BIT 8	*/
1294981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1295981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdHTCapabilitiesBitMask;
1296981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1297981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdMCSFeedback
1298981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD MCS FeedBack
1299981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1300981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1301981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Indicates what is the MCS FeedBack Policy
1302981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Configure HT Capabilities Settings
1303981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1304981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_SetDefaults, TTwdHtCapabilities
1305981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1306981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1307981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1308981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	MCS_FEEDBACK_NO = 0,						/**< */
1309981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	MCS_FEEDBACK_RESERVED,						/**< */
1310981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	MCS_FEEDBACK_UNSOLICTED_ONLY,				/**< */
1311981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	MCS_FEEDBACK_BOTH_SOLICTED_AND_UNSOLICTED	/**< */
1312981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdMCSFeedback;
1313981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1314981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdTxMcsSet
1315981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD TX MCS Set
1316981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1317981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1318981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Indicates Whether to set Tx MCS
1319981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1320981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1321981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1322981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1323981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1324981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TX_MCS_SET_NO   =   0, 	/**< Don't Set Tx MCS	*/
1325981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TX_MCS_SET_YES  =   1	/**< Set Tx MCS			*/
1326981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdTxMcsSet;
1327981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1328981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdTxRxNotEqual
1329981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD TX RX Not Equal
1330981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1331981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1332981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Indicates Whether the TX and RX channels are equal
1333981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1334981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1335981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1336981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1337981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1338981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TX_RX_NOT_EQUAL_NO   =   0,	/**< TX and RX Channels are not equal	*/
1339981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TX_RX_NOT_EQUAL_YES  =   1	/**< TX and RX Channels are equal		*/
1340981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdTxRxNotEqual;
1341981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1342981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETwdHtcSupport
1343981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD HTc Support
1344981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1345981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1346981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Indicates Whether the HT Capability is Supported
1347981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1348981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1349981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1350981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1351981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1352981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    HTC_SUPPORT_NO   =   0,	/**< HT Capability is not Supported		*/
1353981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    HTC_SUPPORT_YES  =   1	/**< HT Capability is Supported			*/
1354981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETwdHtcSupport;
1355981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1356981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ESendCompleteStatus
1357981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Send complete status
1358981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1359981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1360981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Indicates the current Success/Failure Status of Completion of Send Operation
1361981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1362981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1363981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1364981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1365981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1366981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	SEND_COMPLETE_SUCCESS = 0,			/**< Send Complete Success: Completion of Send Operation is OK
1367981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt												*/
1368981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	SEND_COMPLETE_RETRY_EXCEEDED,		/**< Send Complete Retry Exceeded:
1369981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt												* Completion of Send Operation filed because it Exceeded Allowed retries Number
1370981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt												*/
1371981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	SEND_COMPLETE_LIFETIME_EXCEEDED,	/**< Send Complete Lifetiem Exceeded:
1372981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt												* Completion of Send Operation failed because it Exceeded Allowed Lifetime
1373981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt												*/
1374981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	3	*/	SEND_COMPLETE_NO_LINK,				/**< Send Complete No Link:
1375981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt												* Completion of Send Operation failed because No Link was found
1376981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt												*/
1377981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	4	*/	SEND_COMPLETE_MAC_CRASHED			/**< Send Complete MAC Crashed:
1378981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt												* Completion of Send Operation failed because MAC Crashed
1379981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt												*/
1380981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ESendCompleteStatus;
1381981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1382981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum EPacketType
1383981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Packet type
1384981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1385981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1386981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1387981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1388981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1389981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1390981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1391981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	0	*/	PACKET_DATA = 0, 	/**< */
1392981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	1	*/	PACKET_CTRL, 		/**< */
1393981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*	2	*/	PACKET_MGMT 		/**< */
1394981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1395981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} EPacketType;
1396981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1397981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ETxHwQueStatus
1398981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Status returned by txHwQueue_AllocResources
1399981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1400981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1401981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1402981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1403981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1404981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1405981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1406981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TX_HW_QUE_STATUS_SUCCESS,       /* Resources available on current queue */
1407981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TX_HW_QUE_STATUS_STOP_CURRENT,  /* No resources, stop current queue and requeue the packet */
1408981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TX_HW_QUE_STATUS_STOP_NEXT      /* Resources available for this packet but not for another one,
1409981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt                                          so just stop the current queue */
1410981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} ETxHwQueStatus;
1411981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1412981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \enum ERxBufferStatus
1413981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Status returned by TRequestForBufferCb
1414981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1415981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1416981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1417981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1418981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1419981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef enum
1420981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1421981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    RX_BUF_ALLOC_PENDING,
1422981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    RX_BUF_ALLOC_COMPLETE,
1423981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    RX_BUF_ALLOC_OUT_OF_MEM
1424981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1425981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}ERxBufferStatus;
1426981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1427981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1428981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
1429981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
1430981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *	Structures
1431981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
1432981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1433981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**
1434981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Get File Callback
1435981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1436981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCbHndl	- Handle to CB Object
1437981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
1438981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1439981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1440981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The callback function type for GetFile users
1441981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1442981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa 	TFileInfo
1443981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1444981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (*TGetFileCbFunc)(TI_HANDLE hCbHndl);
1445981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1446981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TFileInfo
1447981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief File Information
1448981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1449981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1450981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Contains all needed information and structures for Getting file
1451981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1452981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_InitFw
1453981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1454981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1455981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1456981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    EFileType   	eFileType;  		/**< Requested file type */
1457981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8   		*pBuffer;    		/**< Pointer to Buffer into the file (or file portion) is copied from user space */
1458981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32   	uLength;    		/**< Length of data currently held in pBuffer */
1459981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32   	uOffset;    		/**< Offset in File of data currently held in pBuffer */
1460981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32   	uAddress;    		/**< Offset in File of data currently held in pBuffer */
1461981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL     	bLast;      		/**< TRUE indicates that we reached end of file */
1462981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    void       		*hOsFileDesc;		/**< OAL file-descriptor handle for repeated access to same file (FW) */
1463981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TGetFileCbFunc  fCbFunc;			/**< CB function to call if file read is finished in a later context (future option) */
1464981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_HANDLE       hCbHndl;			/**< Handle to provide when calling fCbFunc */
1465981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32		uChunksLeft;		/**< Chunks Left to read from File (used if file is read in chunks) */
1466981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32		uChunkBytesLeft;	/**< Number of bytes of Last read chunk, which were not yet handled  */
1467981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32		uCrcCalc;			/**< Current Calculated CRC  */
1468981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TFileInfo;
1469981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1470981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct T80211Header
1471981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief 802.11 MAC header
1472981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1473981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1474981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1475981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1476981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1477981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1478981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1479981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           fc;			/**< */
1480981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           dur;		/**< */
1481981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr                            address1;	/**< */
1482981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr                            address2;	/**< */
1483981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr                            address3;	/**< */
1484981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           seq;		/**< */
1485981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           qos;		/**< */
1486981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1487981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}  T80211Header;
1488981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1489981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TKeepAliveParams
1490981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Keep Alive Parameters
1491981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1492981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1493981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1494981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_CfgKeepAlive
1495981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1496981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1497981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1498981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                index;		/**< */
1499981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                enaDisFlag;	/**< */
1500981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32               interval;	/**< */
1501981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    EKeepAliveTriggerType   trigType;	/**< */
1502981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1503981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TKeepAliveParams;
1504981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1505981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TPsRxStreaming
1506981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Power Save RX Streaming
1507981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1508981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1509981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The configuration of Rx streaming delivery in PS mode per TID
1510981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1511981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_CfgKeepAlive
1512981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1513981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1514981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1515981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32               uTid;           /**< The configured TID (0-7) */
1516981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32               uStreamPeriod;  /**< The expected period between two packets of the delivered stream */
1517981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32               uTxTimeout;     /**< Start sending triggers if no Tx traffic triggers arrive for this priod */
1518981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                 bEnabled;       /**< If TRUE enable this TID streaming, if FALSE disable it. */
1519981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1520981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TPsRxStreaming;
1521981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1522981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TDmaParams
1523981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief DMA Parameters
1524981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1525981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1526981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Struct which holds DMA Rx/Tx Queues and Bufffers params
1527981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1528981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1529981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1530981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1531981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1532981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           NumRxBlocks;				/**< Allocated RX memory blocks number 	    */
1533981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           NumTxBlocks;				/**< Allocated TX memory blocks number      */
1534981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            NumStations;				/**< Number of Stations						*/
1535981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    void                                *fwTxResultInterface;		/**< RX minimum Memory block number 		*/
1536981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            *fwRxCBufPtr;				/**< Pointer to FW RX Control Buffer		*/
1537981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            *fwTxCBufPtr;				/**< Pointer to FW TX Control Buffer		*/
1538981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	void                                *fwRxControlPtr;			/**< Pointer to FW TX Control 				*/
1539981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	void                                *fwTxControlPtr;			/**< Pointer to FW RX Control 				*/
1540981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           PacketMemoryPoolStart;      /**< RX Memory block offset 				*/
1541981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TDmaParams;
1542981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1543981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TSecurityKeys
1544981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Security Key
1545981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1546981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1547981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Struct which holds Security Key Parameters
1548981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for handling DMA
1549981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1550981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1551981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1552981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1553981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1554981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    EKeyType                            keyType; 				/**< Security Key Type (WEP, TKIP etc.)			*/
1555981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           encLen;					/**< Security Key length in bytes				*/
1556981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            encKey[MAX_KEY_LEN];	/**< Security Key Encoding						*/
1557981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            micRxKey[MAX_KEY_LEN];	/**< MIC RX Security Key 						*/
1558981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            micTxKey[MAX_KEY_LEN];	/**< MIC TX Security Key						*/
1559981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           keyIndex;     			/**< Security Key Index (id=0 is broadcast key)	*/
1560981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr                            macAddress;				/**< Security Key MAC Address					*/
1561981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            keyRsc[KEY_RSC_LEN];	/**< Security Key RSC							*/
1562981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1563981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TSecurityKeys;
1564981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1565981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TxPktParams_t
1566981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TX Packet Parameters
1567981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1568981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1569981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Tx Control-Block Packet parameters that are not included in the Tx-descriptor
1570981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1571981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1572981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1573981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1574981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1575981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    void *         pInputPkt;       /**< The input packet to the Tx path, either OS packet or raw buffer (see RAW_BUF_PKT flag) */
1576981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32      uInputPktLen;    /**< The input packet length in bytes (for freeing it in case of raw buffer)  */
1577981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32      uDriverDelay;    /**< The time in uSec the pkt was delayed in the driver until Xfer 			  */
1578981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8       uPktType;        /**< See TX_PKT_TYPE_xxxx above                                               */
1579981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8       uHeadroomSize;   /**< Only for WHA - headroom in bytes before the payload in the packet buffer */
1580981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16      uFlags;          /**< See TX_CTRL_FLAG__xxxx above 										      */
1581981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1582981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TTxPktParams;
1583981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1584981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1585981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TTxCtrlBlk
1586981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TX Control Block Entry
1587981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1588981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1589981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Contains the Tx packet parameters required for the Tx process, including
1590981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * the Tx descriptor and the attributes required for HW-queue calculations.
1591981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * TX Control Block Entry is allocated for each packet sent from the upper
1592981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * driver and freed upon Tx-complete.
1593981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The entry index is the descriptor-ID. It is written in the descriptor and
1594981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * copied back into the tx-complete results
1595981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1596981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	SendPacketTranferCB_t, SendPacketDebugCB_t, TWD_txCtrlBlk_alloc, TWD_txCtrlBlk_free, TWD_txCtrlBlk_GetPointer, TWD_txXfer_sendPacket
1597981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1598981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct _TTxCtrlBlk
1599981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1600981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TTxnStruct          tTxnStruct;               /**< The transaction structure for packet queueing and transaction via the bus driver */
1601981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TxIfDescriptor_t    tTxDescriptor;            /**< The packet descriptor copied to the FW  */
1602981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8            aPktHdr[MAX_HEADER_SIZE]; /**< The packet header + extensions (see description of MAX_HEADER_SIZE above) */
1603981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TTxPktParams        tTxPktParams;             /**< Per packet parameters not included in the descriptor */
1604981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    struct _TTxCtrlBlk  *pNextFreeEntry;          /**< Pointer to the next free entry */
1605981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1606981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TTxCtrlBlk;
1607981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1608981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1609981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TTemplateParams
1610981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Template Parameters
1611981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1612981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1613981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1614981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_GetTemplate
1615981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1616981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1617981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1618981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32            Size;		   				/**< Template size					*/
1619981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32            uRateMask;                 /**< The rates bitmap for the frame */
1620981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8             Buffer[MAX_TEMPLATE_SIZE];	/**< Buffer which holds Template	*/
1621981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1622981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TTemplateParams;
1623981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1624981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TFwInfo
1625981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief FW Information
1626981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1627981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1628981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1629981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_GetFWInfo
1630981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1631981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1632981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1633981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            fwVer[FW_VERSION_LEN];  /**< Firmware version - null terminated string 	*/
1634981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr                            macAddress;				/**< MAC Address								*/
1635981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            txPowerTable[NUMBER_OF_SUB_BANDS_E][NUM_OF_POWER_LEVEL]; /**< Maximun Dbm in Dbm/10 units */
1636981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           uHardWareVersion;		/**< HW Version									*/
1637981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1638981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TFwInfo;
1639981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1640981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TJoinBss
1641981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Join BSS Parameters
1642981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1643981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1644981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1645981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_CmdJoinBss
1646981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1647981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1648981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1649981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ScanBssType_e                       bssType;			/**< */
1650981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           beaconInterval;		/**< */
1651981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           dtimInterval;		/**< */
1652981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            channel;			/**< */
1653981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8*                           pBSSID;				/**< */
1654981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8*                           pSSID;				/**< */
1655981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            ssidLength;			/**< */
1656981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           basicRateSet;      	/**< */
1657981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ERadioBand                          radioBand;			/**< */
1658981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* Current Tx-Session index as configured to FW in last Join command */
1659981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           txSessionCount;    	/**< */
1660981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1661981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TJoinBss;
1662981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1663981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TSetTemplate
1664981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Set Template Parameters
1665981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1666981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1667981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1668981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_CmdTemplate, TWD_WriteMibTemplateFrame
1669981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1670981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1671981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1672981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ETemplateType                       type;	/**< Template Type							*/
1673981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            index;  /**< only valid for keep-alive templates	*/
1674981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8*                           ptr;	/**< Pointer to Template Data		  		*/
1675981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           len;	/**< Pointer to Template Length		  		*/
1676981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ERadioBand                          eBand; 	/**< only valid for probe request templates	*/
1677981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           uRateMask;/**< The rate mask to use for this frame  */
1678981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1679981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TSetTemplate;
1680981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1681981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TNoiseHistogram
1682981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Noise Histogram Parameters
1683981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1684981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1685981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1686981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_CmdNoiseHistogram
1687981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1688981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1689981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1690981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ENoiseHistogramCmd                  cmd;												/**< Noise Histogram Command (Start/Atop)	*/
1691981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           sampleInterval;										/**< Sample Interval (in microsec)			*/
1692981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            ranges [MEASUREMENT_NOISE_HISTOGRAM_NUM_OF_RANGES];	/**< Noise Histogram Ranges					*/
1693981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1694981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TNoiseHistogram;
1695981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1696981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TInterogateCmdHdr
1697981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Interrogate Command Header
1698981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1699981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1700981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1701981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TNoiseHistogramResults, TMediumOccupancy, TTsfDtim
1702981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1703981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1704981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1705981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           id;		/**< */
1706981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           len;	/**< */
1707981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1708981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TInterogateCmdHdr;
1709981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1710981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TNoiseHistogramResults
1711981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Noise Histogram Results
1712981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1713981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1714981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Getting Noise Histogram Parameters from FW
1715981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1716981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1717981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1718981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1719981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1720981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TInterogateCmdHdr                   noiseHistResCmdHdr;							/**< Results Header						*/
1721981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           counters[NUM_OF_NOISE_HISTOGRAM_COUNTERS];	/**< Counters							*/
1722981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           numOfLostCycles;							/**< Number of Lost Cycles				*/
1723981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           numOfTxHwGenLostCycles;						/**< Number of Tx Hw Gen Lost Cycles	*/
1724981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           numOfRxLostCycles;							/**< Number of RX Hw Gen Lost Cycles	*/
1725981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1726981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TNoiseHistogramResults;
1727981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1728981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMediumOccupancy
1729981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Medium Occupancy Parameters
1730981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1731981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1732981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Getting Medium Occupancy (Channal Load) from FW
1733981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * or print Medium Occupancy (Channal Load) Debug Information
1734981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1735981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1736981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1737981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1738981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1739981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TInterogateCmdHdr                   mediumOccupCmdHdr;	/**< Command Header						*/
1740981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           MediumUsage;		/**< Medium Occupancy Usage Time		*/
1741981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           Period;				/**< Medium Occupancy Period Time		*/
1742981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1743981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMediumOccupancy;
1744981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1745981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TTsfDtim
1746981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Beacon TSF and DTIM count
1747981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1748981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1749981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Getting updated current TSF and last Beacon TSF and DTIM Count from FW
1750981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * for Scan Purposes
1751981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1752981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1753981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1754981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1755981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1756981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TInterogateCmdHdr                   tsf_dtim_mibCmdHdr;	/**< Command Header						*/
1757981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           CurrentTSFHigh;		/**< Current TSF High (of INT64) Value	*/
1758981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           CurrentTSFLow;		/**< Current TSF Low (of INT64) Value	*/
1759981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           lastTBTTHigh;		/**< Last TBTT High (of INT64) Value	*/
1760981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           lastTBTTLow;		/**< Last TBTT Low (of INT64) Value		*/
1761981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            LastDTIMCount;		/**< Last DTIM Count			      	*/
1762981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            Reserved[3];		/**< Reserved							*/
1763981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1764981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TTsfDtim;
1765981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1766981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TBcnBrcOptions
1767981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Beacon broadcast options
1768981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1769981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1770981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Getting/Configuring updated Beacon broadcast options from/to FW
1771981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1772981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_SetDefaults
1773981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1774981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1775981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1776981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           BeaconRxTimeout;		/**< Beacon RX Timeout			*/
1777981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           BroadcastRxTimeout;		/**< Broadcast RX Timeout		*/
1778981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            RxBroadcastInPs;		/**< RX Broadcast In Power Save	*/
1779981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1780981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TBcnBrcOptions;
1781981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1782981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TBeaconFilterIeTable
1783981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Beacon Filter Information Elements Table
1784981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1785981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1786981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Getting/Configuring Beacon Filter IE Table From/To FW
1787981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1788981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_SetDefaults
1789981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1790981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1791981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1792981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            numberOfIEs;							/**< Number of IE Tables 			*/
1793981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            IETable[BEACON_FILTER_TABLE_MAX_SIZE];	/**< The IE table					*/
1794981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            IETableSize;							/**< number of elements in IE table	*/
1795981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1796981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TBeaconFilterIeTable;
1797981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1798981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TBeaconFilterInitParams
1799981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Beacon Filter Init Parameters
1800981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1801981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1802981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Init Beacon Filter IE Table in FW
1803981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1804981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
1805981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1806981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1807981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1808981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            desiredState;								/**< Desigred state (required/not required)			*/
1809981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            numOfStored;								/**< Number of desigred Beacon Filters stored in FW	*/
1810981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            numOfElements;								/**< Number of Beacon Filter Elements stored in FW	*/
1811981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            IETableSize;								/**< The IE Table size								*/
1812981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            reserve[3];									/**< Reserved										*/
1813981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            IETable[BEACON_FILTER_IE_TABLE_MAX_SIZE]; 	/**< The IE table							   		*/
1814981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1815981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TBeaconFilterInitParams;
1816981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1817981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TPowerMgmtConfig
1818981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Power Management Configuration Parameters
1819981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1820981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1821981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Configuring Wake-Up Conditions or Beacon Broadcast Options to FW
1822981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1823981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_CfgWakeUpCondition, TWD_CfgBcnBrcOptions
1824981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1825981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1826981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1827981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	/* power management options */
1828981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            beaconListenInterval;		/**< Beacon Listen Interavl:
1829981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	* specify how often the TNET wakes up to listen to beacon frames.
1830981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	* the value is expressed in units of "beacon interval"
1831981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	*/
1832981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            beaconFiltering;			/**< Beacon Filtering Desigred state (required/not required)			*/
1833981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            DTIMListenInterval;			/**< DTIM Listen Interavl:
1834981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	* specify how often the TNET wakes up to listen to DTIM frames. the value
1835981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	* is expressed in units of "dtim interval"
1836981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	*/
1837981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            NConsecutiveBeaconMiss;		/**< Consecutive Beacon Miss											*/
1838981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            hangoverPeriod;				/**< Hang Over Period													*/
1839981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            HwPsPollResponseTimeout;	/**< Power-Save Polling Response Time Out								*/
1840981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           BaseBandWakeUpTime;			/**< Base Band Wakeup Time												*/
1841981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           beaconReceiveTime;			/**< Beacon Receive Time												*/
1842981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             beaconMissInterruptEnable;	/**< Enable/Disable Beacon Miss Interrupt   							*/
1843981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             rxBroadcast;				/**< Enable/Disable receive of broadcast packets in Power-Save mode   	*/
1844981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             hwPsPoll;					/**< Enable/Disable Power-Save Polling								   	*/
1845981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* Power Management Configuration IE */
1846981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             ps802_11Enable;				/**< Enable/Disable 802.11 Power-Save 									*/
1847981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            needToSendNullData;  		/**< Indicates if need to send NULL data								*/
1848981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            numNullPktRetries; 			/**< Number of NULL Packets allowed retries 							*/
1849981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            hangOverPeriod;				/**< HangOver period:
1850981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	* Indicates what is the time in TUs during which the WiLink remains awake
1851981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	* after sending an MPDU with the Power Save bit set (indicating that the
1852981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	* station is to go into Power Save mode). Setting bit 0 does not affect
1853981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	* the hangover period
1854981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	*/
1855981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           NullPktRateModulation; 		/**< Null Packet Rate Modulation										*/
1856981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* PMConfigStruct */
1857981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             ELPEnable;					/**< Enable/Disable ELP				 									*/
1858981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           BBWakeUpTime;				/**< Base Band Wakeup Time				 								*/
1859981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           PLLlockTime;				/**< PLL Lock Time						 								*/
1860981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* AcxBcnBrcOptions */
1861981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TBcnBrcOptions                      BcnBrcOptions;				/**< Beacon broadcast options	 		 								*/
1862981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* ACXWakeUpCondition */
1863981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ETnetWakeOn                         tnetWakeupOn;  				/**< ACX Wake Up Condition		 		 								*/
1864981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            listenInterval;				/**< ACX Listen Interval		 		 								*/
1865981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	/* No answer after Ps-Poll work-around */
1866981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8  							ConsecutivePsPollDeliveryFailureThreshold;	/**< Power-Save Polling Delivery Failure Threshold		*/
1867981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1868981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TPowerMgmtConfig;
1869981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1870981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TPowerSaveParams
1871981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Power Save Parameters
1872981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1873981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1874981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1875653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * \sa
1876981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1877981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1878981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1879981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* powerMgmtConfig IE */
1880981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             ps802_11Enable;			/**< Enable/Disable 802.11 Power-Save 									*/
1881981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            needToSendNullData;  	/**< Indicates if need to send NULL data								*/
1882981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            numNullPktRetries; 		/**< Number of NULL Packets allowed retries 							*/
1883981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            hangOverPeriod;			/**< HangOver period:
1884981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																* Indicates what is the time in TUs during which the WiLink remains awake
1885981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																* after sending an MPDU with the Power Save bit set (indicating that the
1886981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																* station is to go into Power Save mode). Setting bit 0 does not affect
1887981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																* the hangover period
1888981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																*/
1889981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    EHwRateBitFiled                     NullPktRateModulation;	/**< Null Packet Rate Modulation										*/
1890981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1891981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TPowerSaveParams;
1892981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1893981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TAcQosParams
1894981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief AC QoS Parameters
1895981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1896981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1897981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Configuring AC Parameters (For Quality Of Service) to FW
1898981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1899981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_CfgAcParams
1900981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1901981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1902981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1903981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            ac;			/**< Access Category - The TX queue's access category	*/
1904981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            cwMin;		/**< The contention window minimum size (in slots) 		*/
1905981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           cwMax;		/**< The contention window maximum size (in slots)		*/
1906981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            aifsn;		/**< The AIF value (in slots)							*/
1907981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           txopLimit;	/**< The TX Op Limit (in microseconds)					*/
1908981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1909981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TAcQosParams;
1910981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1911981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMeasurementParams
1912981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief AC Queues Parameters
1913981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1914981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1915981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used When Send Start Measurment Command to FW
1916981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1917981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_CmdMeasurement
1918981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1919981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1920981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1921981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           ConfigOptions;	/**< RX Filter Configuration Options													*/
1922981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           FilterOptions;	/**< RX Filter Options																	*/
1923981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           duration;		/**< Specifies the measurement process duration in microseconds. The value of 0 means
1924981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt														* infinite duration in which only a STOP_MEASUREMENT command can stop the measurement
1925981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt														* process
1926981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt														*/
1927981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    Channel_e                           channel;		/**< Channel number on which the measurement is performed								*/
1928981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    RadioBand_e                         band;			/**< Specifies the band to which the channel belongs									*/
1929981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    EScanResultTag                      eTag;			/**< Scan Result Tag																	*/
1930981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1931981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMeasurementParams;
1932981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1933981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TApDiscoveryParams
1934981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief AP Discovery Parameters
1935981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1936981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1937981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used When Performing AP Discovery
1938981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1939981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_CmdApDiscovery
1940981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1941981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1942981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1943981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           ConfigOptions;	/**< RX Configuration Options for measurement														*/
1944981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           FilterOptions;	/**< RX Filter Configuration Options for measurement												*/
1945981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           scanDuration;	/**< This field specifies the amount of time, in time units (TUs), to perform the AP discovery		*/
1946981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           scanOptions;	/**< This field specifies whether the AP discovery is performed by an active scan or a passive scan
1947981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt														* 0 - ACTIVE, 1 - PASSIVE
1948981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt														*/
1949981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            numOfProbRqst;	/**< This field indicates the number of probe requests to send per channel, when active scan is specified
1950981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt														* Note: for XCC measurement this value should be set to 1
1951981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt														*/
1952981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            txPowerDbm;    	/**< TX power level to be used for sending probe requests when active scan is specified.
1953981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt														* If 0, leave normal TX power level for this channel
1954981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt														*/
1955981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    EHwRateBitFiled                     txdRateSet;		/**< This EHwBitRate format field specifies the rate and modulation to transmit the probe request when
1956981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt														* an active scan is specifie
1957981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt														*/
1958981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ERadioBand                          eBand;			/**< Specifies the band to which the channel belongs												*/
1959981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TApDiscoveryParams;
1960981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1961981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TRroamingTriggerParams
1962981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Roaming Trigger Parameters
1963981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1964981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1965981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1966981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_CfgMaxTxRetry, TWD_CfgConnMonitParams
1967981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1968981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1969981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1970981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* ACXConsNackTriggerParameters */
1971981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            maxTxRetry;			/**< The number of frames transmission failures before issuing the "Max Tx Retry" event			*/
1972981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1973981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* ACXBssLossTsfSynchronize */
1974981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           TsfMissThreshold;	/**< The number of consecutive beacons that can be lost before the WiLink raises the
1975981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt															* SYNCHRONIZATION_TIMEOUT event
1976981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt															*/
1977981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           BssLossTimeout;		/**< The delay (in time units) between the time at which the device issues the SYNCHRONIZATION_TIMEOUT
1978981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt															* event until, if no probe response or beacon is received a BSS_LOSS event is issued
1979981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt															*/
1980981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TRroamingTriggerParams;
1981981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1982981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TSwitchChannelParams
1983981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Switch Channel Parameters
1984981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1985981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
1986981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Switch channel Command
1987981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
1988981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_CmdSwitchChannel
1989981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
1990981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
1991981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
1992981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            channelNumber;		/**< The new serving channel										*/
1993981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            switchTime;			/**< Relative time of the serving channel switch in TBTT units   	*/
1994981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            txFlag;				/**< 1: Suspend TX till switch time; 0: Do not suspend TX			*/
1995981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            flush;				/**< 1: Flush TX at switch time; 0: Do not flush  					*/
1996981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1997981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TSwitchChannelParams;
1998981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
1999981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TRxCounters
2000981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief RX Counters
2001981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2002981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2003981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Getting RX Counters from FW
2004981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2005981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2006981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2007981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2008981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2009981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           RecvError; 			/**< Number of frames that a NIC receives but does not indicate to the protocols due to errors 	*/
2010981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           RecvNoBuffer;   	/**< Number of frames that the NIC cannot receive due to lack of NIC receive buffer space 		*/
2011981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           FragmentsRecv;    	/**< Number of Fragments Received 																*/
2012981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           FrameDuplicates;	/**< Number of Farme Duplicates																	*/
2013981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           FcsErrors;			/**< Number of frames that a NIC receives but does not indicate to the protocols due to errors	*/
2014981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2015981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TRxCounters;
2016981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2017981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TApPowerConstraint
2018981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief AP Power Constraint
2019981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2020981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2021981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2022981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2023981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2024981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2025981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2026981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    INFO_ELE_HDR												/**< Information Element Header		*/
2027981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    int8                      			powerConstraintOnBss;	/**< The attenuation from the regulatory power constraint as declared by the AP
2028981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																* Units: dBm	;	Range: -20 - 30
2029981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																*/
2030981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TApPowerConstraint;
2031981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2032981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
2033981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * TConfigCmdCbParams, TInterrogateCmdCbParams:
2034981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Note that this structure is used by the GWSI
2035981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * both for setting (writing to the device) and
2036981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * for retreiving (Reading from the device),
2037981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * while being called with a completion CB
2038981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2039981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TConfigCmdCbParams
2040981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Config Command CB Parameters
2041981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2042981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2043981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The CB Parameters (Completino CB, Handle to CB Parameters and buffer of Input/Output Parameters)
2044981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * are used for Setting Parameters
2045981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2046981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_SetParam
2047981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2048981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2049981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2050981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    void*                               fCb;	/**< Completion CB function													*/
2051981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_HANDLE                           hCb;	/**< CB handle																*/
2052981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    void*                               pCb;	/**< CBuffer contains the content to be written or the retrieved content	*/
2053981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2054981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TConfigCmdCbParams;
2055981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2056981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TInterrogateCmdCbParams
2057981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Interrogate Command Parameters
2058981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2059981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2060981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Interrogate Command Parameters are the same as configuration Command CB Parameters
2061981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2062981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_SetParam
2063981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2064981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef TConfigCmdCbParams TInterrogateCmdCbParams;
2065981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2066981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TRxTimeOut
2067981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief RX Time Out
2068981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2069981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2070981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2071981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2072981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2073981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2074981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2075981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           psPoll;		/**< The maximum time that the device will wait to receive traffic from the AP after transmission of PS-poll	*/
2076981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           UPSD;		/**< The maximum time that the device will wait to receive traffic from the AP after transmission from UPSD
2077981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt													* enabled queue
2078981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt													*/
2079981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TRxTimeOut;
2080981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2081981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TQueueTrafficParams
2082981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief RX Time Out
2083981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2084981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2085981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2086981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2087981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2088981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2089981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2090981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            queueID;					/**< The TX queue ID number (0-7)											*/
2091981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            channelType;				/**< Channel access type for the queue Refer to ChannelType_enum			*/
2092981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            tsid;						/**< for EDCA - the AC Index (0-3, refer to AccessCategory_enum).
2093981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	* For HCCA - HCCA Traffic Stream ID (TSID) of the queue (8-15)
2094981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt																	*/
2095981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           dot11EDCATableMSDULifeTime;	/**< 802.11 EDCA Table MSDU Life Time 										*/
2096981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            psScheme;					/**< The power save scheme of the specified queue. Refer to PSScheme_enum	*/
2097981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            ackPolicy;					/**< ACK policy per AC 														*/
2098981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           APSDConf[2];				/**< APSD Configuration 													*/
2099981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2100981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TQueueTrafficParams;
2101981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2102653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2103653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2104653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt/** \struct TFmCoexParams
2105653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * \brief FM Coexistence Parameters
2106653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt *
2107981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2108653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * Used for Setting/Printing FM Coexistence Parameters
2109981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2110981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2111981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2112981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2113981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2114653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TI_UINT8   uEnable;                 /* enable(1) / disable(0) the FM Coex feature */
2115653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2116653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TI_UINT8   uSwallowPeriod;          /* Swallow period used in COEX PLL swallowing mechanism,
2117653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                           Range: 0-0xFF,  0xFF = use FW default
2118653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                        */
2119653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2120653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TI_UINT8   uNDividerFrefSet1;       /* The N divider used in COEX PLL swallowing mechanism for Fref of 38.4/19.2 Mhz.
2121653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                           Range: 0-0xFF,  0xFF = use FW default
2122653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                        */
2123653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2124653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TI_UINT8   uNDividerFrefSet2;       /* The N divider used in COEX PLL swallowing mechanism for Fref of 26/52 Mhz.
2125653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                           Range: 0-0xFF,  0xFF = use FW default
2126653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                        */
2127653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2128653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TI_UINT16  uMDividerFrefSet1;       /* The M divider used in COEX PLL swallowing mechanism for Fref of 38.4/19.2 Mhz.
2129653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                           Range: 0-0x1FF,  0xFFFF = use FW default
2130653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                        */
2131653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2132653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TI_UINT16  uMDividerFrefSet2;       /* The M divider used in COEX PLL swallowing mechanism for Fref of 26/52 Mhz.
2133653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                           Range: 0-0x1FF,  0xFFFF = use FW default
2134653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                        */
2135653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2136653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TI_UINT32  uCoexPllStabilizationTime;/* The time duration in uSec required for COEX PLL to stabilize.
2137653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                           0xFFFFFFFF = use FW default
2138653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                        */
2139653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2140653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TI_UINT16  uLdoStabilizationTime;   /* The time duration in uSec required for LDO to stabilize.
2141653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                           0xFFFFFFFF = use FW default
2142653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                        */
2143653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2144653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TI_UINT8   uFmDisturbedBandMargin;  /* The disturbed frequency band margin around the disturbed
2145653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                             frequency center (single sided).
2146653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                           For example, if 2 is configured, the following channels
2147653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                             will be considered disturbed channel:
2148653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                             80 +- 0.1 MHz, 91 +- 0.1 MHz, 98 +- 0.1 MHz, 102 +- 0.1 MHz
2149653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                           0xFF = use FW default
2150653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                        */
2151653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2152653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	TI_UINT8   uSwallowClkDif;          /* The swallow clock difference of the swallowing mechanism.
2153653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                           0xFF = use FW default
2154653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt                                        */
2155653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2156653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt} TFmCoexParams;
2157653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2158981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2159981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMibBeaconFilterIeTable
2160981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief MIB Beacon Filter IE table
2161981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2162981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2163981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Read/Write the MIB/IE Beacon Filter
2164981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * NOTE: This struct is only meant to be used as a pointer reference to an actual buffer.
2165981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Table size is not a constant and is derived from the buffer size given with the
2166981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * user command
2167981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2168981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_WriteMibBeaconFilterIETable
2169981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2170981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2171981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2172981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* Number of information elements in table  */
2173981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            iNumberOfIEs;   					/**< Input Number of IE Tables	*/
2174981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            iIETable[MIB_MAX_SIZE_OF_IE_TABLE]; /**< Input IE Table				*/
2175981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2176981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMibBeaconFilterIeTable;
2177981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2178981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMibCounterTable
2179981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief MIB Counter Table
2180981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2181981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2182981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Getting Counters of MIB Table
2183981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2184981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2185981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2186981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2187981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2188981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           PLCPErrorCount;	  	/**< The number of PLCP errors since the last time this information element was interrogated.
2189981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt															* This field is automatically cleared when it is interrogated
2190981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt															*/
2191981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           FCSErrorCount;		/**< The number of FCS errors since the last time this information element was interrogated.
2192981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt															* This field is automatically cleared when it is interrogated
2193981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt															*/
2194981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           SeqNumMissCount;	/**< The number of missed sequence numbers in the squentially values of frames seq numbers	*/
2195981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMibCounterTable;
2196981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2197981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMibWlanWakeUpInterval
2198981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief MIB WLAN Wake-Up Interval
2199981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2200981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2201981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2202981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2203981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2204981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2205981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2206981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           WakeUpInterval;		/**< Wake Up Interval 								*/
2207981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            ListenInterval; 	/**< Listen interval in unit of the beacon/DTIM 	*/
2208981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2209981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMibWlanWakeUpInterval;
2210981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2211981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMibTemplateFrame
2212981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief MIB Template Frame
2213981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2214981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2215981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Writing MIB Frame Template to FW
2216981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2217981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_WriteMibTemplateFrame
2218981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2219981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2220981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2221981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    EMibTemplateType                 	FrameType;							/**< MIB Farme Template type	*/
2222981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           Rate;								/**< Frame Rate					*/
2223981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           Length;								/**< Frame Length				*/
2224981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            Data [MIB_TEMPLATE_DATA_MAX_LEN];	/**< Frame Template Data		*/
2225981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2226981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMibTemplateFrame;
2227981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2228981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMibArpIpAddressesTable
2229981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief MIB ARP Address Table
2230981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2231981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2232981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Writing MIB ARP Table Template to FW
2233981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2234981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_WriteMib
2235981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2236981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2237981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2238981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           FilteringEnable;	/**< Enable/Disable Filtering	*/
2239981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TIpAddr                             addr;				/**< IP Address Table			*/
2240981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2241981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMibArpIpAddressesTable;
2242981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2243981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMibGroupAdressTable
2244981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief MIB Group Address Table
2245981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2246981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2247981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Writing MIB Group Table Template to FW
2248981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2249981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_WriteMib
2250981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2251981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2252981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2253981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr                            aGroupTable[MIB_MAX_MULTICAST_GROUP_ADDRS]; 	/**< Table of Multicast Group Addresses */
2254981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            bFilteringEnable;								/**< Enable/Disable Filtering			*/
2255981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            nNumberOfAddresses;								/**< Number of Multicast Addresses		*/
2256981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2257981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMibGroupAdressTable;
2258981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2259981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TTxRateClass
2260981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TX Rate Class
2261981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2262981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2263981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Set/Get TX Rate Policy Class to/from FW
2264981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2265981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2266981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2267981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2268981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2269981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           txEnabledRates;			/**< A Bit Mask which indicates which Rates are enabled */
2270981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            shortRetryLimit;		/**< */
2271981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            longRetryLimit;			/**< */
2272981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            flags;					/**< */
2273981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            reserved;				/**< for alignment with the FW API */
2274981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2275981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TTxRateClass;
2276981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2277981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TTxRatePolicy
2278981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TX Rate Policy
2279981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2280981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2281981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for Set/Get TX Rate Policy to/from FW
2282981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2283981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2284981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2285981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2286981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2287981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           numOfRateClasses;								/**< */
2288981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TTxRateClass                        rateClass[MAX_NUM_OF_TX_RATE_CLASS_POLICIES];	/**< */
2289981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2290981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TTxRatePolicy;
2291981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2292981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TCoexActivity
2293981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief CoexActivity Parameters
2294981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2295981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2296981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2297981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2298981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2299981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct {
2300981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    uint8  coexIp;           /* 0-BT, 1-WLAN (according to CoexIp_e in FW) */
2301981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    uint8  activityId;       /* According to BT/WLAN activity numbering in FW */
2302981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    uint8  defaultPriority;  /* 0-255, activity default priority */
2303981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    uint8  raisedPriority;   /* 0-255, activity raised priority */
2304981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    uint16 minService;       /* 0-65535, The minimum service requested either in
2305981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt                                requests or in milliseconds depending on activity ID */
2306981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    uint16 maxService;       /* 0-65535, The maximum service allowed either in
2307981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt                            requests or in milliseconds depending on activity ID */
2308981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TCoexActivity;
2309981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2310981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct THalCoexActivityTable
2311981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief CoexActivity Table Initialization Parameters
2312981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2313981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2314981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2315981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2316981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2317981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2318981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2319981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    uint32 numOfElements;
2320981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TCoexActivity entry[COEX_ACTIVITY_TABLE_MAX_NUM];
2321981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2322981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} THalCoexActivityTable;
2323981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2324981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \union TMibData
2325981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief MIB Data
2326981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2327981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2328981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Union which defines all MIB Data types
2329981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for write MIB Configuration to FW
2330981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2331981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_WriteMib
2332981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2333981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef union
2334981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2335981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr                            StationId;				/**< Station ID MAC Address								*/
2336981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           MaxReceiveLifeTime;		/**< HAl Control Max Rx MSDU Life Time, in TUs Units	*/
2337981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           SlotTime;				/**< Radio (PHY) Slot Time Type							*/
2338981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMibGroupAdressTable             	GroupAddressTable;		/**< MIB Group Address Table							*/
2339981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            WepDefaultKeyId;		/**< WEP Defualt Security Key ID						*/
2340981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            PowerLevel;				/**< */
2341981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           RTSThreshold;			/**< */
2342981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           CTSToSelfEnable;		/**< Enable/Disable CTS to Self							*/
2343981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMibArpIpAddressesTable          	ArpIpAddressesTable;	/**< MIB ARP Address Table								*/
2344981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMibTemplateFrame                	TemplateFrame;			/**< MIB Template Frame		 							*/
2345981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            RxFilter;				/**< */
2346981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMibWlanWakeUpInterval           	WlanWakeUpInterval;		/**< MIB WLAN Wake-Up Interval							*/
2347981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMibCounterTable                 	CounterTable;			/**< MIB Counter Table									*/
2348981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMibBeaconFilterIeTable          	BeaconFilter;			/**< MIB Beacon Filter IE table				   			*/
2349981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TTxRatePolicy                       txRatePolicy;			/**< TX Rate Policy			   		 					*/
2350981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2351981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMibData;
2352981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2353981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMib
2354981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief MIB Structure
2355981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2356981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2357981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Used for writing MIB Configuration to FW
2358981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2359981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_WriteMib, TWD_WriteMibTemplateFrame, TWD_WriteMibBeaconFilterIETable, TWD_WriteMibTxRatePolicy
2360981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2361981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2362981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2363981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    EMib			aMib;  		/**< MIB Element Type	*/
2364981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16       Length;		/**< MIB Data Length	*/
2365981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMibData     	aData; 		/**< MIB Data			*/
2366981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2367981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMib;
2368981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2369981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \union TTwdParamContents
2370981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Parameters Content
2371981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2372981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2373981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * All FW Parameters contents
2374981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2375981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_SetParam
2376981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2377981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef union
2378981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2379981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           halCtrlRtsThreshold;			/**< */
2380981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            halCtrlCtsToSelf;				/**< */
2381981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TRxTimeOut                          halCtrlRxTimeOut;				/**< */
2382981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           halCtrlFragThreshold;			/**< */
2383981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           halCtrlListenInterval;			/**< */
2384981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           halCtrlCurrentBeaconInterval;	/**< */
2385981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            halCtrlTxPowerDbm;				/**< */
2386981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ETxAntenna                          halCtrlTxAntenna;				/**< */
2387981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ERxAntenna                          halCtrlRxAntenna;				/**< */
2388981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            halCtrlAifs;					/**< */
2389981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             halCtrlTxMemPoolQosAlgo;		/**< */
2390981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             halCtrlClkRunEnable;			/**< */
2391981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TRxCounters                         halCtrlCounters;				/**< */
2392981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2393981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMib*          		                pMib;							/**< */
2394981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            halCtrlCurrentChannel;			/**< */
2395981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2396981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* AC Qos parameters */
2397981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TQueueTrafficParams                 *pQueueTrafficParams;			/**< */
2398981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2399981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* Security related parameters */
2400981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifdef XCC_MODULE_INCLUDED
2401981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             rsnXCCSwEncFlag;				/**< */
2402981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             rsnXCCMicFieldFlag;				/**< */
2403981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
2404981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ECipherSuite                        rsnEncryptionStatus;			/**< */
2405981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            rsnHwEncDecrEnable; 			/**< 0- disable, 1- enable */
2406981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TSecurityKeys                       *pRsnKey;						/**< */
2407981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            rsnDefaultKeyID;				/**< */
2408981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2409981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* Measurements section */
2410981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMediumOccupancy                    mediumOccupancy;				/**< */
2411981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             halTxOpContinuation;			/**< */
2412981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2413981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TTsfDtim                            fwTsfDtimInfo;					/**< */
2414981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2415981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TInterrogateCmdCbParams             interogateCmdCBParams;			/**< */
2416981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TConfigCmdCbParams                  configureCmdCBParams;			/**< */
2417981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2418981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TTxRatePolicy                       *pTxRatePlicy;					/**< */
2419981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2420981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* WARNING!!! This section is used to set/get internal params only. */
2421981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           halCtrlAid;						/**< */
2422981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2423981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ESoftGeminiEnableModes              SoftGeminiEnable;				/**< */
2424981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TSoftGeminiParams                   SoftGeminiParam;				/**< */
2425653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2426653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TFmCoexParams                       tFmCoexParams;                  /**< */
2427653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2428981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           halCtrlMaxRxMsduLifetime;		/**< */
2429981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2430981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    /* Beacon Broadcast options */
2431981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TBcnBrcOptions                      BcnBrcOptions;					/**< */
2432981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2433981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	/* PLT tests */
2434981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_STATUS             				PltRxCalibrationStatus;			/**< */
2435981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2436981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	/* CoexActivity */
2437981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TCoexActivity                       tTwdParamsCoexActivity;         /**< */
2438981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TTwdParamContents;
2439981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2440981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TTwdParamInfo
2441981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Parameters Information
2442981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2443981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2444981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2445981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_SetParam
2446981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2447981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2448981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2449981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           paramType;					/**< FW Parameter Information Identifier	*/
2450981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           paramLength;				/**< FW Parameter Length					*/
2451981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TTwdParamContents                   content;					/**< FW Parameter content					*/
2452981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2453981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TTwdParamInfo;
2454981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2455981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TRxXferReserved
2456981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief RX Xfer Reserved
2457981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2458981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2459981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2460981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2461981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2462981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2463981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2464981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ProcessIDTag_e                      packetType;		/**< */
2465981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            rxLevel;		/**< */
2466981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_INT8                             rssi;			/**< */
2467981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            SNR;			/**< */
2468981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            band;			/**< */
2469981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           TimeStamp;		/**< */
2470981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    EScanResultTag                      eScanTag;		/**< */
2471981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2472981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TRxXferReserved;
2473981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2474981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TRxAttr
2475981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief RX Attributes
2476981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2477981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2478981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2479981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2480981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2481981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2482981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2483981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    PacketClassTag_enum                 ePacketType;    /**< */
2484981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_STATUS                           status;			/**< */
2485981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ERate                               Rate;   		/**< */
2486981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            SNR;			/**< */
2487981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_INT8                             Rssi;   		/**< */
2488981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            channel;		/**< */
2489981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           packetInfo;		/**< */
2490981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ERadioBand                          band;			/**< */
2491981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           TimeStamp;		/**< */
2492981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    EScanResultTag                      eScanTag;		/**< */
2493981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2494981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TRxAttr;
2495981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2496981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2497981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TGeneralInitParams
2498981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief General Initialization Parameters
2499981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2500981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2501981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2502981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2503981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2504981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2505981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2506981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           halCtrlListenInterval;				/**< */
2507981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            halCtrlCalibrationChannel2_4;		/**< */
2508981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            halCtrlCalibrationChannel5_0;	  	/**< */
2509981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           halCtrlRtsThreshold;				/**< */
2510981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           halCtrlFragThreshold;				/**< */
2511981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           halCtrlMaxTxMsduLifetime;			/**< */
2512981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           halCtrlMaxRxMsduLifetime;			/**< */
2513981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ETxAntenna                          halCtrlTxAntenna;					/**< */
2514981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    ERxAntenna                          halCtrlRxAntenna;					/**< */
2515981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            halCtrlMacClock;					/**< */
2516981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            halCtrlArmClock;					/**< */
2517981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           halCtrlBcnRxTime;					/**< */
2518981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             halCtrlRxEnergyDetection;    		/**< */
2519981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             halCtrlTxEnergyDetection;			/**< */
2520981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             halCtrlEepromLessEnable;			/**< */
2521981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             halCtrlRxDisableBroadcast;			/**< */
2522981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             halCtrlRecoveryEnable;				/**< */
2523981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             halCtrlFirmwareDebug;				/**< */
2524981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             WiFiWmmPS;							/**< */
2525981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TRxTimeOut                          rxTimeOut;							/**< */
2526981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            halCtrlRateFallbackRetry;			/**< */
2527981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             b11nEnable;							/**< */
2528981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2529981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           TxCompletePacingThreshold;			/**< */
2530981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           TxCompletePacingTimeout;			/**< */
2531981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           RxIntrPacingThreshold;			    /**< */
2532981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           RxIntrPacingTimeout;			    /**< */
2533981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2534653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TI_UINT32                           uRxAggregPktsLimit;					/**< */
2535981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            hwAccessMethod;						/**< */
2536981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            maxSitesFragCollect;				/**< */
2537981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            packetDetectionThreshold;			/**< */
2538981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           nullTemplateSize;					/**< */
2539981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           disconnTemplateSize;				/**< */
2540981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           beaconTemplateSize;					/**< */
2541981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           probeRequestTemplateSize;			/**< */
2542981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           probeResponseTemplateSize;			/**< */
2543981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           PsPollTemplateSize;				   	/**< */
2544981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           qosNullDataTemplateSize;			/**< */
2545981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           tddRadioCalTimout;					/**< */
2546981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           CrtRadioCalTimout;					/**< */
2547981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           UseMboxInterrupt;					/**< */
2548981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           TraceBufferSize;					/**< */
2549981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             bDoPrint;							/**< */
2550981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            StaMacAddress[MAC_ADDR_LEN];		/**< */
2551981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL                             TxFlashEnable;						/**< */
2552981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            RxBroadcastInPs;					/**< */
2553981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT8       						ConsecutivePsPollDeliveryFailureThreshold;	/**< */
2554981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            TxBlocksThresholdPerAc[MAX_NUM_OF_AC];/**< */
2555981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           BeaconRxTimeout;					/**< */
2556981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           BroadcastRxTimeout;					/**< */
2557981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2558981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            uRssiBeaconAverageWeight;			/**< */
2559981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            uRssiPacketAverageWeight;			/**< */
2560981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            uSnrBeaconAverageWeight;			/**< */
2561981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            uSnrPacketAverageWeight;			/**< */
2562981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2563981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           uHostClkSettlingTime;				/**< */
2564981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            uHostFastWakeupSupport;             /**< */
2565981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    THalCoexActivityTable               halCoexActivityTable;               /**< */
2566653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    TFmCoexParams                       tFmCoexParams;                      /**< */
2567981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2568981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TGeneralInitParams;
2569981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2570981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TPowerSrvInitParams
2571981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Power Service Init Parameters
2572981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2573981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2574981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2575981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2576981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2577981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2578981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2579981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            numNullPktRetries; 			/**< */
2580981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            hangOverPeriod;				/**< */
2581981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           reserve;					/**< */
2582981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2583981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TPowerSrvInitParams;
2584981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2585981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TScanSrvInitParams
2586981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Scan Service Init Parameters
2587981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2588981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2589981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2590981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2591981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2592981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2593981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2594981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           numberOfNoScanCompleteToRecovery;	/**< The number of consecutive no scan complete that will trigger a recovery notification 	*/
2595981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                      		uTriggeredScanTimeOut; 				/**< i.e. split scan. Time out for starting triggered scan between 2 channels 				*/
2596981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2597981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TScanSrvInitParams;
2598981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2599981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TArpIpFilterInitParams
2600981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief ARP IP Filter Init Parameters
2601981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2602981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2603981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2604981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2605981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2606981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2607981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2608981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT32                           isFilterEnabled;	/**< */
2609981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TIpAddr                             addr;    			/**< */
2610981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2611981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TArpIpFilterInitParams;
2612981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2613981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TMacAddrFilterInitParams
2614981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief AMC Address Filter Init Parameters
2615981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2616981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2617981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2618981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2619981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2620981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2621981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2622981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            isFilterEnabled;							/**< */
2623981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8                            numOfMacAddresses;							/**< */
2624981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT16                           reserve;									/**< */
2625981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddr                            macAddrTable[MAX_MULTICAST_GROUP_ADDRS];	/**< */
2626981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2627981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TMacAddrFilterInitParams;
2628981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2629653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt/** \struct RateMangeParams_t
2630653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * \brief Rate Maangement params structure
2631653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt *
2632653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * \par Description
2633653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt *
2634653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * \sa
2635653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt */
2636653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidttypedef struct
2637653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt{
2638653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	rateAdaptParam_e paramIndex;
2639653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint16 RateRetryScore;
2640653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint16 PerAdd;
2641653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint16 PerTh1;
2642653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint16 PerTh2;
2643653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint16 MaxPer;
2644653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint8 InverseCuriosityFactor;
2645653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint8 TxFailLowTh;
2646653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint8 TxFailHighTh;
2647653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint8 PerAlphaShift;
2648653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint8 PerAddShift;
2649653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint8 PerBeta1Shift;
2650653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint8 PerBeta2Shift;
2651653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint8 RateCheckUp;
2652653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint8 RateCheckDown;
2653653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	uint8 RateRetryPolicy[13];
2654653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt}RateMangeParams_t;
2655981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2656981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
2657981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * IMPORTANT NOTE:
2658981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * ===============
2659981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This structure encapsulates the initialization data required by the TnetwDrv layer.
2660981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * All structures in it are arranged so no padding will be added by the compiler!!
2661981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This is required to avoid missalignment when compiled by customers using GWSI API!!
2662981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2663981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TTwdInitParams
2664981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Init Parameters
2665981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2666981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2667981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * All TWD Initialization Parameters
2668981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2669981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_SetDefaults
2670981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2671981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2672981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2673981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TGeneralInitParams                  tGeneral;			 /**< General Initialization Parameters			*/
2674981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TPowerSrvInitParams                 tPowerSrv;			 /**< Power Service Initialization Parameters	*/
2675981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TScanSrvInitParams                  tScanSrv;			 /**< Scan Service Initialization Parameters    */
2676981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TArpIpFilterInitParams              tArpIpFilter;		 /**< ARP IP filter Initialization Parameters	*/
2677981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TMacAddrFilterInitParams            tMacAddrFilter;		 /**< MAC Address Initialization Parameters		*/
2678981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    IniFileRadioParam                   tIniFileRadioParams; /**< Radio Initialization Parameters   		*/
2679981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    IniFileGeneralParam                 tPlatformGenParams; /**< Radio Initialization Parameters   	        */
2680653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    ACXSmartReflexConfigParams_t        tSmartReflexParams;       /**< Smart Refelx Parameters   	            */
2681653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    ACXSmartReflexDebugParams_t         tSmartReflexDebugParams;  /**< Smart Refelx Debug Parameters   	        */
2682653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    ACXSmartReflexState_t               tSmartReflexState;        /**< Smart Refelx state   	                */
2683653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt	RateMangeParams_t					tRateMngParams;
2684981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2685981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TTwdInitParams;
2686981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2687981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \struct TTwdHtCapabilities
2688981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD HT Capabilities
2689981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2690981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2691981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2692981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_SetDefaults, TWD_GetTwdHtCapabilities
2693981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2694981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef struct
2695981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2696981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_BOOL     b11nEnable;       					/**< Enable/Disable 802.11n flag	*/
2697981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8    uChannelWidth;						/**< */
2698981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8    uRxSTBC;							/**< */
2699981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8    uMaxAMSDU;						  	/**< */
2700981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt    TI_UINT8    uMaxAMPDU;							/**< */
2701981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT8    uAMPDUSpacing;					   	/**< */
2702981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT8    aRxMCS[RX_TX_MCS_BITMASK_SIZE];		/**< */
2703981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT8    aTxMCS[RX_TX_MCS_BITMASK_SIZE];		/**< */
2704981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT16   uRxMaxDataRate;						/**< */
2705981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT8    uPCOTransTime;						/**< */
2706981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT32   uHTCapabilitiesBitMask;				/**< */
2707981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TI_UINT8    uMCSFeedback;						/**< */
2708981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt} TTwdHtCapabilities;
2709981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2710653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidttypedef struct
2711653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt{
2712653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    int32  SNRCorrectionHighLimit;
2713653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    int32  SNRCorrectionLowLimit;
2714653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    int32  PERErrorTH;
2715653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    int32  attemptEvaluateTH;
2716653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    int32  goodAttemptTH;
2717653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt    int32  curveCorrectionStep;
2718653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2719653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt }RateMangeReadParams_t;
2720653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2721653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
2722981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
2723981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
2724981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *	APIs
2725981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
2726981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2727981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2728981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Send Packet Transfer CB
2729981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2730981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  CBObj        - object handle
2731981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pPktCtrlBlk  - Pointer to Input Packet Control Block
2732981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2733981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2734981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2735981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The Transfer-Done callback
2736981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * User registers the CB for Send Packet Transfer done
2737981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2738981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_RegisterCb
2739981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2740981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (* TSendPacketTranferCb)(TI_HANDLE CBObj, TTxCtrlBlk *pPktCtrlBlk);
2741981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2742981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Send Packet Debug CB
2743981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2744981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  CBObj        - object handle
2745981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pPktCtrlBlk  - Pointer to Input Packet Control Block
2746981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * uDebugInfo			- Debug Information
2747981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2748981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2749981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2750981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The Transfer-Done Debug callback
2751981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2752981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2753981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2754981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (* TSendPacketDebugCb)  (TI_HANDLE CBObj, TTxCtrlBlk *pPktCtrlBlk, TI_UINT32 uDebugInfo);
2755981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2756981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Send Packet Debug CB
2757981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2758981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  CBObj        - object handle
2759981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pPktCtrlBlk  - Pointer to Input Packet Control Block
2760981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * uDebugInfo			- Debug Information
2761981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2762981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2763981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2764981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2765981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_RegisterCb
2766981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2767653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidttypedef ERxBufferStatus (*TRequestForBufferCb) (TI_HANDLE hObj, void **pRxBuffer, TI_UINT16 aLength, TI_UINT32 uEncryptionFlag, PacketClassTag_e ePacketClassTag);
2768981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2769981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Send Packet Debug CB
2770981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2771981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hObj        	- object handle
2772981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pBuffer	    - Pointer to Received buffer frame
2773981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2774981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2775981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2776981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This function CB will be called when Received packet from RX Queue
2777981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * User registers the CB for RX Buffer Request
2778981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2779981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_RegisterCb
2780981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2781981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (*TPacketReceiveCb) (TI_HANDLE 	hObj,
2782981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt                                  const void 	*pBuffer);
2783981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2784981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Failure Event CB
2785981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2786981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  handle        	- object handle
2787981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eFailureEvent  	- Failure Event Type
2788981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2789981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2790981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2791981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Callback clled for Failure event
2792981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * User registers the CB for Health-Moitoring
2793981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2794981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_RegisterCb
2795981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2796981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (*TFailureEventCb)  (TI_HANDLE handle, EFailureEvent eFailureEvent);
2797981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2798981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** \union TTwdCB
2799981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Callback
2800981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2801981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2802981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Union which holds all TWD Internal Callbacks which are registered by user
2803981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * per Module and Event IDs
2804981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2805981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_RegisterCb
2806981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2807981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef union
2808981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt{
2809981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TSendPacketTranferCb	sendPacketCB;		/**< Transfer-Done callback			*/
2810981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TSendPacketDebugCb		sendPacketDbgCB;	/**< Transfer-Done Debug callback	*/
2811981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TRequestForBufferCb		requestBufferCB;	/**< Transfer-Done Debug callback	*/
2812981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TPacketReceiveCb		recvPacketCB;		/**< RX Buffer Request callback		*/
2813981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt	TFailureEventCb			failureEventCB;		/**< Failure Event callback			*/
2814981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt}TTwdCB;
2815981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2816981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
2817981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2818981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Scan Service complete CB
2819981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2820981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb        	- handle to the scan object
2821981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eTag  		- the scan results type tag
2822981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uResultCount - number of results received during this scan
2823981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  SPSStatus  	- bitmap indicating which channels were attempted (if this is an SPS scan)
2824981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  TSFError  	- whether a TSF error occurred (if this is an SPS scan)
2825981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  ScanStatus  	- scan SRV status (OK / NOK)
2826981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  PSMode		- Power Save Mode
2827981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2828981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2829981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2830981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This function CB will be called when Scan Service is complete
2831981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * User registers the Scan Service Complete CB
2832981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2833981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_RegisterScanCompleteCb
2834981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2835981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (*TScanSrvCompleteCb) (TI_HANDLE 		hCb,
2836981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt									EScanResultTag 	eTag,
2837981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt									TI_UINT32 		uResultCount,
2838981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt                                    TI_UINT16 		SPSStatus,
2839981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt									TI_BOOL 		TSFError,
2840981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt									TI_STATUS 		ScanStatus,
2841981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt                                    TI_STATUS 		PSMode);
2842981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2843981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Callback
2844981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2845981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb        	- handle to object
2846981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  status  		- completion status
2847981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2848981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2849981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2850981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Initialising Complete Callaback (exapmle: Init HW/FW CB etc.)
2851981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * User can use its own Complete CB which will be called when
2852981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * the suitable module id & event number will arrive
2853981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2854981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_Init
2855981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2856981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (*TTwdCallback) (TI_HANDLE hCb, TI_STATUS status);
2857981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2858981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Callback
2859981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2860981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb        	- handle to object
2861981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  msrReply  	- Pointer to input measurement (which ended) Reply
2862981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2863981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2864981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2865981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The function prototype for the measurement complete callback
2866981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * User can use its own measurement complete CB
2867981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * which will be called when measurement end
2868981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2869981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_StartMeasurement
2870981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2871981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (*TMeasurementSrvCompleteCb) (TI_HANDLE hCb, TMeasurementReply* msrReply);
2872981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2873981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Command Response Callback
2874981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2875981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb        	- handle to object
2876981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  status  		- status of Command ended
2877981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2878981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2879981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2880981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The function prototype for the Command Response CB
2881981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Enables user to implement and use its own Response CB
2882981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * which will be called when TWD Command end
2883981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2884981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_StartMeasurement, TWD_StopMeasurement, TWD_Scan, TWD_StopScan, TWD_StartPeriodicScan, TWD_StopPeriodicScan
2885981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2886981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (*TCmdResponseCb) (TI_HANDLE hCb, TI_UINT16 status);
2887981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2888981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Command Response Callback
2889981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2890981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb        	- handle to object
2891981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  status  		- status of Command ended
2892981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2893981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2894981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2895981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The function prototype for the Power Save Set Response CB
2896981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Enables user to implement and use its own Response CB which
2897981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * will be called when Power Save Set Command end
2898981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2899981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_SetPsMode
2900981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2901981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (*TPowerSaveResponseCb)(TI_HANDLE hCb, TI_UINT8 status);
2902981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2903981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Command Complete Callback
2904981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2905981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb        	- handle to object
2906981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  PsMode		- Power Save Mode
2907981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  status  		- status of Command ended
2908981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2909981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2910981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2911981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The function prototype for the Power Save Set Complete CB
2912981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Enables user to implement and use its own Complete CB which
2913981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * will be called when Power Save Set Command end (for success/faild notification)
2914981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2915981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_SetPsMode
2916981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2917981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (*TPowerSaveCompleteCb )(TI_HANDLE hCb, TI_UINT8 PsMode, TI_UINT8 status);
2918981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2919981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Create TWD Module
2920981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2921981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hOs   	- OS module object handle
2922981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TWD Module object handle on success or NULL on failure
2923981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2924981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2925981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Calling this function Creates a TWD object and all its sub-modules.
2926981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2927981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa     TWD_Destroy, TWD_Init
2928981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2929981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_HANDLE TWD_Create (TI_HANDLE hOs);
2930981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2931981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Destroy TWD Module
2932981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2933981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD   	- hTWD module object handle
2934981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
2935981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2936981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2937981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Calling this function Destroys TWD object and all its sub-modules.
2938981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2939981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa     TWD_Create
2940981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2941981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_Destroy (TI_HANDLE hTWD);
2942981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** Control
2943981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Init TWD module
2944981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2945981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
2946981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hReport      - Report module object handle
2947981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hUser        - Master (User) module object handle
2948981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTimer       - Timer module object handle
2949981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hContext     - context-engine module object handle
2950981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTxnQ        - TxnQueue module object handle
2951981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fInitHwCb    - Init HW callback called when init HW phase is done
2952981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fInitFwCb    - Init FW callback called when init FW phase is done
2953981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fConfigFwCb  - Configuration FW callback called when configuring FW phase is done
2954981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fStopCb      - Stop callback called when TWD is stopped
2955981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fInitFailCb  - Fail callback called when TWD is Failed
2956981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
2957981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2958981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2959981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Start hardware Init and Config process.
2960981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This is the first function that must be called after TWD_Create.
2961981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2962981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa     TWD_Create, TWD_Stop
2963981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2964981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_Init (TI_HANDLE    hTWD,
2965981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt			   TI_HANDLE 	hReport,
2966981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt               TI_HANDLE 	hUser,
2967981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt			   TI_HANDLE 	hTimer,
2968981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt			   TI_HANDLE 	hContext,
2969981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt			   TI_HANDLE 	hTxnQ,
2970981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt               TTwdCallback fInitHwCb,
2971981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt               TTwdCallback fInitFwCb,
2972981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt               TTwdCallback fConfigFwCb,
2973981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt			   TTwdCallback	fStopCb,
2974981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt			   TTwdCallback fInitFailCb);
2975981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2976981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Init HW module
2977981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2978981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
2979981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pbuf         - Pointer to Input NVS Buffer
2980981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  length       - Length of NVS Buffer
2981981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
2982981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2983981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2984981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Performs the HW init process.
2985981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2986981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2987981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
2988981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_InitHw (TI_HANDLE hTWD, TI_UINT8 *pbuf, TI_UINT32 length);
2989981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
2990981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Set Defults to TWD Init Params
2991981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2992981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
2993981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pInitParams  - Pointer to Input init default parameters
2994981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
2995981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2996981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
2997981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
2998981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
2999981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3000981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_SetDefaults (TI_HANDLE hTWD, TTwdInitParams *pInitParams);
3001981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3002981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Init FW
3003981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3004981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3005981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pFileInfo    - Pointer to Input Buffer contains part of FW Image to Download
3006981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							The Following Field should be filled:
3007981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							pFileInfo->pBuffer
3008981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							pFileInfo->uLength
3009981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							pFileInfo->uAddress
3010981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							pFileInfo->bLast
3011981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3012981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3013981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3014981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Performs FW Download, and Run FW
3015981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3016981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3017981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3018981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_InitFw (TI_HANDLE hTWD, TFileInfo *pFileInfo);
3019981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3020981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Open UART Bus Txn
3021981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3022981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3023981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pParams      - Pointer to Input parameters
3024981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3025981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3026981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3027981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3028981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3029981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3030981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_BusOpen (TI_HANDLE hTWD, void* pParams);
3031981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3032981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Close UART Bus Txn
3033981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3034981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3035981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3036981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3037981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3038981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3039981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3040981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3041981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_BusClose (TI_HANDLE hTWD);
3042981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3043981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Halt firmware
3044981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3045981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3046981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3047981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3048981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3049981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3050981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3051981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3052981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_Stop (TI_HANDLE hTWD);
3053981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3054981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Enable external events from FW
3055981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3056981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3057981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
3058981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3059981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3060981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Enable external events from FW upon driver start or recovery completion
3061981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3062981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3063981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3064981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_EnableExternalEvents (TI_HANDLE hTWD);
3065981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3066981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Registers TWD internal callback function
3067981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3068981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3069981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  event        - event on which the registrated CB will be called
3070981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb 	        - Pointer to Registered CB function
3071981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pData 	    - Pointer to Registered CB data
3072981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3073981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3074981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3075981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This CB enables user to register TWD Internal CB functions of different Modules,
3076981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * with their data.
3077981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The function identifies which TWD Module owns the Registered CB, and what the specific Registered CB
3078981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * according to event input parameter.
3079981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Once the Module and specific CB function are identified, the CB is registerd in the TWD Module
3080981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * by calling suitable registration CB function
3081981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3082981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3083981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3084981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_RegisterCb (TI_HANDLE hTWD, TI_UINT32 event, TTwdCB *fCb, void *pData);
3085981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3086981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Exit from init mode
3087981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3088981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3089981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3090981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3091981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3092981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Exit From Init Mode enable sending command to the MboxQueue (which store a command),
3093981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * while the interrupts are masked.
3094981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The interrupt would be enable at the end of the init process
3095981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3096981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3097981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3098981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_ExitFromInitMode (TI_HANDLE hTWD);
3099981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3100981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Finalize FW init and download
3101981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3102981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3103981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
3104981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3105981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3106981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Init all the remaining initialization after the FW download has finished
3107981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3108981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3109981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3110981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_FinalizeDownload (TI_HANDLE hTWD);
3111981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3112981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Finalize of faulty FW init and download
3113981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3114981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3115981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
3116981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3117981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3118981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Call the upper layer failure callback after Init or FW download has finished with failure.
3119981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3120981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3121981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3122981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_FinalizeOnFailure (TI_HANDLE hTWD);
3123981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3124981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Perform FW Configuration
3125981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3126981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3127981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3128981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3129981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3130981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configure the FW from the TWD DB - after configuring all HW objects
3131981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3132981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3133981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3134981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_ConfigFw (TI_HANDLE hTWD);
3135981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3136981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Handle FW interrupt from ISR context
3137981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3138981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3139981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3140981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3141981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3142981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This is the FW-interrupt ISR context. The driver task is scheduled to hadnle FW-Events
3143981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3144981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3145981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3146981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_InterruptRequest (TI_HANDLE hTWD);
3147981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3148981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Enable Recovery
3149981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3150981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3151981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TRUE if recovery Enables, FALSE otherwise
3152981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3153981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3154981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Return Recovery E/D status
3155981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3156981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3157981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3158981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_BOOL TWD_RecoveryEnabled (TI_HANDLE hTWD);
3159981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3160981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Starts a measurement
3161981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3162981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         			- TWD module object handle
3163981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pMsrRequest         		- Pointer to Input structure which contains the measurement parameters
3164981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uTimeToRequestExpiryMs   - The time (in milliseconds) the measurement SRV has to start the request
3165981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fResponseCb         		- The Command response CB Function
3166981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hResponseCb         		- Handle to Command response CB Function Obj
3167981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCompleteCb         		- The Command Complete CB Function
3168981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCompleteCb         		- Handle to Command Complete CB Function Obj
3169981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3170981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3171981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3172981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Starts a measurement operation
3173981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3174981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3175981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3176981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_StartMeasurement (TI_HANDLE hTWD,
3177981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TMeasurementRequest *pMsrRequest,
3178981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TI_UINT32 uTimeToRequestExpiryMs,
3179981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TCmdResponseCb fResponseCb,
3180981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TI_HANDLE hResponseCb,
3181981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TMeasurementSrvCompleteCb fCompleteCb,
3182981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TI_HANDLE hCompleteCb);
3183981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3184981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Stops a measurement
3185981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3186981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         			- TWD module object handle
3187981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  bSendNullData         	- Indicates whether to send NULL data when exiting driver mode
3188981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fResponseCb         		- Pointer to Command response CB function
3189981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hResponseCb         		- Handle to Command response CB parameters
3190981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3191981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3192981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3193981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Stops a measurement operation in progress
3194981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3195981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3196981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3197981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_StopMeasurement (TI_HANDLE hTWD,
3198981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							   TI_BOOL bSendNullData,
3199981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							   TCmdResponseCb fResponseCb,
3200981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							   TI_HANDLE hResponseCb);
3201981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3202981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Start scan
3203981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3204981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD                		- TWD module object handle
3205981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param pScanParams            	- Pointer to Input Scan specific parameters
3206981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param eScanTag               	- Scan tag, used for result and scan complete tracking
3207981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param bHighPriority          	- Indicates whether to perform a high priority (overlaps DTIM) scan
3208981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param bDriverMode            	- Indicates whether to try to enter driver mode (with PS on) before issuing the scan command
3209981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param bScanOnDriverModeError 	- Indicates whether to proceed with the scan if requested to enter driver mode and failed
3210981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param ePsRequest             	- Parameter sent to PowerSaveServer.
3211981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 										Should indicates PS ON or "keep current" only when driver mode is requested,
3212981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 										Otherwise should indicate OFF
3213981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param bSendNullData          	- Indicates whether to send Null data when exiting driver mode on scan complete
3214981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param fResponseCb            	- The Response CB Function which called after downloading the command
3215981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hResponseCb            	- Handle to the Response CB Function Obj (Notice : last 2 params are NULL in Legacy run)
3216981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3217981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3218981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3219981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Start scan. enter driver mode (PS) only if station is connected
3220981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3221981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3222981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3223981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_Scan (TI_HANDLE hTWD,
3224981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					TScanParams *pScanParams,
3225981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					EScanResultTag eScanTag,
3226981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					TI_BOOL bHighPriority,
3227981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					TI_BOOL bDriverMode,
3228981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					TI_BOOL bScanOnDriverModeError,
3229981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					E80211PsMode ePsRequest,
3230981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					TI_BOOL bSendNullData,
3231981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					TCmdResponseCb fResponseCb,
3232981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					TI_HANDLE hResponseCb);
3233981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3234981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Stop scan
3235981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3236981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD                		- TWD module object handle
3237981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param eScanTag               	- Scan tag, used to track scan complete and result
3238981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param bSendNullData          	- Indicates whether to send Null data when exiting driver mode
3239981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param fScanCommandResponseCb 	- The Response CB Function which called after downloading the command
3240981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hCb                    	- Handle to the Response CB Function Obj (Notice : last 2 params are NULL in Legacy run)
3241981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3242981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3243981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3244981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Sends a Stop Scan command to FW, no matter if we are in scan progress or not
3245981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3246981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3247981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3248981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_StopScan (TI_HANDLE hTWD,
3249981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt						EScanResultTag eScanTag,
3250981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt						TI_BOOL bSendNullData,
3251981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt						TCmdResponseCb fScanCommandResponseCb,
3252981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt						TI_HANDLE hCb);
3253981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3254981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Stop Scan on FW Reset
3255981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3256981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD		- TWD module object handle
3257981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3258981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3259981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3260981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Stop scan operation when a FW reset (recovery) situation is detected (by all processes
3261981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * other than scan)
3262981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3263981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3264981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3265981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_StopScanOnFWReset (TI_HANDLE hTWD);
3266981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3267981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Start Connection Periodic Scan operation
3268981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3269981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD                			- TWD module object handle
3270981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pPeriodicScanParams    		- Pointer to Input Parameters Structures for the Periodic Scan operation
3271981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eScanTag               		- Scan tag, used for scan complete and result tracking
3272981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uPassiveScanDfsDwellTimeMs 	- Passive dwell time for DFS channels (in milli-secs)
3273981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fResponseCb            		- Response CB Function which is called after downloading the command
3274981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hResponseCb            		- Handle to Response CB Function Obj (Notice : last 2 params are NULL in Legacy run)
3275981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3276981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3277981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3278981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Perform Connection Scan periodically
3279981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3280981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3281981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3282981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_StartConnectionScan (TI_HANDLE hTWD,
3283981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 TPeriodicScanParams *pPeriodicScanParams,
3284981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 EScanResultTag eScanTag,
3285981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 TI_UINT32 uPassiveScanDfsDwellTimeMs,
3286981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 TCmdResponseCb fResponseCb,
3287981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 TI_HANDLE hResponseCb);
3288981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3289981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Stop Periodic Scan operation
3290981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3291981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 					- TWD module object handle
3292981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param eScanTag              - scan tag, used for scan complete and result tracking
3293981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fResponseCb          - Response CB Function which is called after downloading the command
3294981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hResponseCb          - Handle to Response CB Function Obj (Notice : last 2 params are NULL in Legacy run)
3295981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3296981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3297981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3298981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Stop Periodic Connection Scan
3299981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3300981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3301981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3302981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_StopPeriodicScan (TI_HANDLE hTWD,
3303981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								EScanResultTag eScanTag,
3304981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TCmdResponseCb fResponseCb,
3305981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TI_HANDLE hResponseCb);
3306981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3307981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Register CB for Scan Complete
3308981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3309981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         		- TWD module object handle
3310981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fScanCompleteCb     	- The Complete CB Function
3311981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hScanCompleteCb   	- Handle to the Complete CB Function Obj
3312981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3313981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3314981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3315981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Registers a Complete CB Function for Scan Complete notifications
3316981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3317981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3318981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3319981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_RegisterScanCompleteCb (TI_HANDLE hTWD,
3320981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt									  TScanSrvCompleteCb fScanCompleteCb,
3321981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt									  TI_HANDLE hScanCompleteCb);
3322981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Misc
3323981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Set Parameters in FW
3324981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3325981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3326981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pParamInfo   - Pointer to Input TWD Parameters Information Structure
3327981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3328981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3329981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3330981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  Set/Configure Parameters Information in FW via Mail BOX
3331981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3332981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TTwdParamInfo
3333981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3334981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_SetParam (TI_HANDLE hTWD, TTwdParamInfo *pParamInfo);
3335981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Misc
3336981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Get Parameters from FW
3337981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3338981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3339981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pParamInfo   - Pointer to Input TWD Parameters Information Structure
3340981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3341981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3342981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3343981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  Get Parameters Information from FW  via Mail BOX
3344981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3345981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3346981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3347981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_GetParam (TI_HANDLE hTWD, TTwdParamInfo *pParamInfo);
3348981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3349981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Callback which Checks MBOX
3350981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3351981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3352981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uMboxStatus  - Mailbox status
3353981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pItrParamBuf - Pointer to Interrogate parameters buffer
3354981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3355981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3356981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3357981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Perform FW validation by calling CB function which is used for handling MBOX error.
3358981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * If command MBOX queue identify MBOX error or timeout, it will call
3359981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * a failure-callback with MBOX_FAILURE type (FW failed)
3360981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3361981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3362981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3363981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CheckMailboxCb (TI_HANDLE hTWD, TI_UINT16 uMboxStatus, void *pItrParamBuf);
3364981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3365981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Write MIB
3366981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3367981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 		- TWD module object handle
3368981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param pMib      - Pointer to Input MIB Structure
3369981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3370981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3371981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3372981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Write configuration information to FW
3373981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3374981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_ReadMib
3375981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3376981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS   TWD_WriteMib (TI_HANDLE hTWD, TMib* pMib);
3377981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3378981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Read MIB
3379981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3380981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3381981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb          - Handle to Request MIB CB Function Obj
3382981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb          - Pinter to Request MIB CB Function
3383981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pCb          - Pointer to read parameters
3384981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3385981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3386981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3387981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Read configuration information from FW
3388981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3389981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_WriteMib
3390981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3391981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS   TWD_ReadMib                 (TI_HANDLE hTWD, TI_HANDLE hCb, void* fCb, void* pCb);
3392981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3393981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Debug
3394981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3395981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3396981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  funcType    	- TWD Function Debuged
3397981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pParam     	- Pointer to Input parameters of Debug function
3398981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3399981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3400981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3401981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Use for Debug TWD
3402981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3403981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3404981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3405981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_Debug (TI_HANDLE hTWD, TI_UINT32 funcType, void *pParam);
3406981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3407981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Register event
3408981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3409981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3410981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  event        - Event ID
3411981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb          - Event Callback function pointer
3412981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb          - Event Callback object handle
3413981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3414981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3415981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3416981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Register FW event callback function
3417981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3418981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3419981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3420981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_RegisterEvent (TI_HANDLE hTWD, TI_UINT32 event, void *fCb, TI_HANDLE hCb);
3421981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3422981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Disable event
3423981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3424981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3425981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  event        - Event ID
3426981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3427981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3428981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3429981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Disable specific FW event
3430981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Note: Currently not in use
3431981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3432981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3433981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3434981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_DisableEvent (TI_HANDLE hTWD, TI_UINT32 event);
3435981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3436981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Enable event
3437981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3438981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3439981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  event        - Event ID
3440981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3441981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3442981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3443981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Enable specific FW event
3444981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3445981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3446981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3447981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_EnableEvent (TI_HANDLE hTWD, TI_UINT32 event);
3448981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3449981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Convert RSSI to RX Level
3450981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3451981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3452981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  iRssiVal     - RSSI Input Value
3453981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3454981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3455981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3456981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Note: Currently not in use!
3457981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3458981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3459981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3460981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_INT8 TWD_ConvertRSSIToRxLevel (TI_HANDLE hTWD, TI_INT32 iRssiVal);
3461981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3462981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Complete TWD Stop
3463981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3464981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD	- TWD module object handle
3465981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
3466981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3467981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3468981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3469981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_Stop, TWD_Init
3470981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3471981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_StopComplete (TI_HANDLE hTWD);
3472981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3473981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Disable Interrupts
3474981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3475981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD	- TWD module object handle
3476981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
3477981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3478981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3479981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Disable the FW Event client of the context thread handler
3480981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3481981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3482981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3483981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_DisableInterrupts (TI_HANDLE hTWD);
3484981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3485981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Enable Interrupts
3486981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3487981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 		- TWD module object handle
3488981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
3489981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3490981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3491981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Enable the FW Event client of the context thread handler
3492981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3493981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3494981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3495981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_EnableInterrupts (TI_HANDLE hTWD);
3496981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3497981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Translate host to FW time (Usec)
3498981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3499981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD 	 - TWD module object handle
3500981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uHostTime - The host time in MS to translate
3501981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3502981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return FW Time in Usec
3503981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3504981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3505981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3506981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3507981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3508981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_UINT32 TWD_TranslateToFwTime (TI_HANDLE hTWD, TI_UINT32 uHostTime);
3509981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup BSS
3510981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Get TWD HT Capabilities
3511981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3512981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 					- TWD module object handle
3513981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pTwdHtCapabilities  	- Pointer read structure Output
3514981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK
3515981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3516981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3517981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3518981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3519981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3520981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3521981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_GetTwdHtCapabilities (TI_HANDLE hTWD, TTwdHtCapabilities **pTwdHtCapabilities);
3522981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#ifdef TI_DBG
3523981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3524981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Prints Scan Server Debug status
3525981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3526981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3527981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3528981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3529981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3530981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3531981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3532981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3533981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_PrintMacServDebugStatus (TI_HANDLE hTWD);
3534981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3535981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Test
3536981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Prints Tx Info
3537981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3538981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3539981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  ePrintInfo   - Information type
3540981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3541981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3542981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3543981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Call the requested print function - used for Debug Test
3544981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3545981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3546981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3547981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_PrintTxInfo (TI_HANDLE hTWD, ETwdPrintInfoType ePrintInfo);
3548981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif
3549981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3550981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*-----*/
3551981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Get */
3552981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*-----*/
3553981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3554981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3555981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Get number of Commands in CMD Queue
3556981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3557981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3558981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return Maximum Number of Commands currently in CMD Queue
3559981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3560981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3561981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3562981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3563981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3564981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_UINT32 TWD_GetMaxNumberOfCommandsInQueue (TI_HANDLE hTWD);
3565981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Power_Management
3566981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Get Power Save Status
3567981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3568981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         		- TWD module object handle
3569981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3570981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3571981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3572981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3573981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3574981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3575981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_BOOL TWD_GetPsStatus (TI_HANDLE hTWD);
3576981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3577981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3578981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3579981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Get FW Information
3580981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3581981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    	- TWD module object handle
3582981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TFwInfo 	- Pointer to Output FW Information Structure
3583981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3584981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3585981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Gets the TFwInfo pointer
3586981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3587981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TFwInfo
3588981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3589981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTFwInfo* TWD_GetFWInfo (TI_HANDLE hTWD);
3590981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup BSS
3591981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Get Group Address Table
3592981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3593981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    			- TWD module object handle
3594981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pEnabled  		- Pointer to Output Indicatore if MAC Address Filter is Enabled
3595981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pNumGroupAddrs   - Pointer to Output Number of Group Address
3596981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pGroupAddr   	- Pointer to Output Group Address Table
3597981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3598981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3599981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3600981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3601981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_WriteMib, TMacAddr
3602981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3603981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_GetGroupAddressTable (TI_HANDLE hTWD, TI_UINT8* pEnabled, TI_UINT8* pNumGroupAddrs, TMacAddr *pGroupAddr);
3604981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3605981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Read Memory
3606981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3607981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3608981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param pMemDebug     - Pointer to read Output
3609981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param fCb			- Pointer to function Callback
3610981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hCb			- Handle to function Callback Parameters
3611981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3612981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3613981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3614981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3615981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3616981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3617981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_readMem (TI_HANDLE hTWD, TFwDebugParams* pMemDebug, void* fCb, TI_HANDLE hCb);
3618981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3619981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Write Memory
3620981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3621981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3622981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param pMemDebug     - Pointer to write Input
3623981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param fCb			- Pointer to function Callback
3624981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hCb			- Handle to function Callback Parameters
3625981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3626981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3627981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3628981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3629981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3630981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3631981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_writeMem (TI_HANDLE hTWD, TFwDebugParams* pMemDebug, void* fCb, TI_HANDLE hCb);
3632981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3633981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3634981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Check if addr is a valid memory address
3635981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3636981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3637981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param pMemDebug     - Pointer to addr & length
3638981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_TRUE on success or TI_FALSE on failure
3639981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3640981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3641981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3642981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3643981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3644981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_BOOL TWD_isValidMemoryAddr (TI_HANDLE hTWD, TFwDebugParams* pMemDebug);
3645981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3646981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3647981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Check if addr is a valid register address
3648981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3649981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3650981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param pMemDebug     - Pointer to addr & length
3651981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_TRUE on success or TI_FALSE on failure
3652981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3653981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3654981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3655981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3656981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3657981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_BOOL TWD_isValidRegAddr (TI_HANDLE hTWD, TFwDebugParams* pMemDebug);
3658981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3659981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*-----*/
3660981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Set */
3661981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*-----*/
3662981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3663981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Power_Management
3664981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Set Power Save Mode
3665981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3666981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         		- TWD module object handle
3667981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  ePsMode       		- Power Save Mode
3668981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  bSendNullDataOnExit  - Indicates whether to send NULL data when exiting driver mode
3669981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hPowerSaveCompleteCb - Handle to PS Complete CB Parameters Obj
3670981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fPowerSaveCompleteCb - The PS Complete CB function
3671981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fPowerSaveResponseCb - The PS Response CB function
3672981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3673981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3674981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3675981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3676981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3677981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3678981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_SetPsMode (TI_HANDLE hTWD,
3679981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt						 E80211PsMode ePsMode,
3680981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt						 TI_BOOL bSendNullDataOnExit,
3681981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt						 TI_HANDLE hPowerSaveCompleteCb,
3682981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt						 TPowerSaveCompleteCb fPowerSaveCompleteCb,
3683981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt						 TPowerSaveResponseCb fPowerSaveResponseCb);
3684981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Radio
3685981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Set Rate Modulation
3686981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3687981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         - TWD module object handle
3688981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  rate         - Rate Modulation Value
3689981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TRUE if Power Service State is Pwer Save, FALSE otherwise
3690981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3691981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3692981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3693981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3694981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3695981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_SetNullRateModulation (TI_HANDLE hTWD, TI_UINT16 rate);
3696981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Radio
3697981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Set Radio Band
3698981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3699981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    			- TWD module object handle
3700981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eRadioBand  		- Radio Band Type
3701981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3702981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3703981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3704981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3705981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3706981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3707981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_SetRadioBand (TI_HANDLE hTWD, ERadioBand eRadioBand);
3708981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
3709981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Set Security Sequance Number
3710981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3711981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
3712981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  securitySeqNumLsByte - LS Byte of Security Sequance Number
3713981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3714981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3715981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3716981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Update the TKIP/AES sequence-number according to the Tx data packet security-sequance-number
3717981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Note: The FW always provides the last used sequance-number so no need to check if the current
3718981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * packet is data and WEP is on
3719981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3720981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3721981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3722981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_SetSecuritySeqNum (TI_HANDLE hTWD, TI_UINT8 securitySeqNumLsByte);
3723981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup BSS
3724981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Update DTIM & TBTT
3725981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3726981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD         	- TWD module object handle
3727981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uDtimPeriod     	- DTIM period in number of beacons
3728981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uBeaconInterval 	- Beacon perios in TUs (1024 msec)
3729981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
3730981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3731981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3732981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Update DTIM and Beacon periods for scan timeout calculations
3733981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3734981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3735981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3736981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_UpdateDtimTbtt (TI_HANDLE hTWD, TI_UINT8 uDtimPeriod, TI_UINT16 uBeaconInterval);
3737981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3738981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*---------*/
3739981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Command */
3740981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*---------*/
3741981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3742981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3743981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3744981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Set Split scan time out
3745981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3746981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3747981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uTimeOut   	- Scan Time Out
3748981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3749981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3750981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3751981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Set Triggered scan time out per channel
3752981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3753981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3754981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3755981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdSetSplitScanTimeOut (TI_HANDLE hTWD, TI_UINT32 uTimeOut);
3756981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup BSS
3757981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Join BSS
3758981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3759981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 				- TWD module object handle
3760981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pJoinBssParams   - Pointer to Join BSS Input parameters structure
3761981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3762981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3763981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3764981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3765981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3766981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3767981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdJoinBss (TI_HANDLE hTWD, TJoinBss *pJoinBssParams);
3768981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3769981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Command Template
3770981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3771981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 				- TWD module object handle
3772981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pTemplateParams  - Pointer to Input Template Parameters Structure
3773981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb  			- Pointer to Command Callback Function
3774981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb  			- Handle to Command Callback Function Obj. Parameters
3775981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3776981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3777981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3778981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Sets a template to the FW
3779981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3780981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3781981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3782981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* 6.1.08 - for future WHA measurement command */
3783981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdTemplate (TI_HANDLE hTWD, TSetTemplate *pTemplateParams, void *fCb, TI_HANDLE hCb);
3784981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
3785981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Enable Tx path
3786981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3787981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD     	- TWD module object handle
3788981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  channel     	- Channel Number
3789981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3790981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3791981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3792981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Enable tx path on the hardware
3793981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3794981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3795981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3796981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdEnableTx (TI_HANDLE hTWD, TI_UINT8 channel);
3797981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
3798981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Disable Tx path
3799981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3800981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD     	- TWD module object handle
3801981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3802981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3803981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3804981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3805981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3806981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3807981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdDisableTx (TI_HANDLE hTWD);
3808981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3809981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Command Noise Histogram
3810981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3811981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD     		- TWD module object handle
3812981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pNoiseHistParams - Pointer Input Noise Histogram Parameters:
3813981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							  holds Start/Stop Noise Histogram Measure Indication,
3814981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							  Sample Interval & Sample Ranges
3815981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3816981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3817981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3818981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Send a Start/Stop Noise Histogram Measure Command to the FW with measure parameters
3819981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3820981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TNoiseHistogram
3821981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3822981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdNoiseHistogram (TI_HANDLE hTWD, TNoiseHistogram *pNoiseHistParams);
3823981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3824981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Radio
3825981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Command Switch Channel
3826981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3827981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
3828981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pSwitchChannelCmd    - Pointer to Switch Channel Parameters Structure
3829981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3830981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3831981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3832981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3833981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TSwitchChannelParams
3834981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3835981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdSwitchChannel (TI_HANDLE hTWD, TSwitchChannelParams *pSwitchChannelCmd);
3836981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Radio
3837981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Command Switch Channel Cancel
3838981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3839981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    		- TWD module object handle
3840981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  channel    	- Channek Number
3841981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3842981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3843981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3844981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3845981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3846981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3847981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdSwitchChannelCancel (TI_HANDLE hTWD, TI_UINT8 channel);
3848981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3849981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  FW Disconnect
3850981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3851981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    	- TWD module object handle
3852981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3853981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3854981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3855981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3856981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3857981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3858981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdFwDisconnect (TI_HANDLE hTWD, DisconnectType_e uDisconType, TI_UINT16 uDisconReason);
3859981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3860981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Start Measurement Command
3861981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3862981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
3863981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uDisconReason		- 2 bytes of disconnect reason to be use in deauth/disassoc frmaes
3864981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uDisconType    		- Immediate (dont send frames) or send Deauth or send Disassoc frmae
3865981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3866981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3867981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3868981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * send Command for start measurement to FW
3869981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3870981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TMeasurementParams
3871981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3872981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdMeasurement (TI_HANDLE hTWD,
3873981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							  TMeasurementParams *pMeasurementParams,
3874981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							  void *fCommandResponseCb,
3875981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							  TI_HANDLE hCb);
3876981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Measurement
3877981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Stop Measurement Command
3878981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3879981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    	- TWD module object handle
3880981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb  	- Pointer to Callback Function
3881981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb    	- Handle to Callback Function Object Parameters
3882981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3883981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3884981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3885981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * send Command for stop measurement to FW
3886981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3887981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3888981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3889981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdMeasurementStop (TI_HANDLE hTWD, void* fCb, TI_HANDLE hCb);
3890981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup UnKnown
3891981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  AP Discovery
3892981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3893981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
3894981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pApDiscoveryParams  	- Pointer to Input AP Discovery Parameters Structure
3895981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3896981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3897981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3898981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3899981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3900981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3901981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdApDiscovery (TI_HANDLE hTWD, TApDiscoveryParams *pApDiscoveryParams);
3902981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup UnKnown
3903981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	AP Discovery Stop
3904981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3905981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
3906981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3907981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3908981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3909981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3910981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3911981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3912981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdApDiscoveryStop (TI_HANDLE hTWD);
3913981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3914981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
3915981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Helth Check
3916981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3917981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    			- TWD module object handle
3918981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3919981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3920981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3921981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Trigger the FW health test command and wait for results
3922981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3923981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3924981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3925981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdHealthCheck (TI_HANDLE hTWD);
3926981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup UnKnown
3927981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  AP Discovery
3928981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3929981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    		- TWD module object handle
3930981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  staState  	- stat of the station (CONNECTED)
3931981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3932981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3933981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3934981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3935981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3936981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3937981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CmdSetStaState (TI_HANDLE hTWD, TI_UINT8 staState, void *fCb, TI_HANDLE hCb);
3938981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3939981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*-----------*/
3940981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Configure */
3941981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*-----------*/
3942981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
3943981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup UnKnown
3944981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure ARP table
3945981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3946981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3947981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  tIpAddr   	- IP Address Input Buffer
3948981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  bEnabled   	- Indicates if ARP filtering is Enabled (1) or Disabled (0)
3949981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eIpVer   	- IP Version
3950981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3951981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3952981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3953981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configure ARP IP Address table
3954981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3955981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
3956981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3957981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgArpIpAddrTable (TI_HANDLE hTWD,
3958981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 TIpAddr tIpAddr,
3959981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 TI_BOOL bEnabled,
3960981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 EIpVer eIpVer);
3961981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup BSS
3962981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure Group Address Table
3963981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3964981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    			- TWD module object handle
3965981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uNumGroupAddrs  	- Number of Group Address
3966981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pGroupAddr   	- Pointer to Input Group Address Table
3967981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  bEnabled    		- Indicates if MAC Address Filter is Enabled
3968981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3969981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3970981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3971981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3972981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TWD_WriteMib
3973981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3974981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgGroupAddressTable (TI_HANDLE hTWD,
3975981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt									TI_UINT8 uNumGroupAddrs,
3976981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt									TMacAddr *pGroupAddr,
3977981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt									TI_BOOL bEnabled);
3978981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
3979981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure RX Filters
3980981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3981981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 				- TWD module object handle
3982981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uRxConfigOption  - RX Configuration Option
3983981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uRxFilterOption 	- RX Filter Option
3984981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3985981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3986981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3987981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3988981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWD_WriteMib
3989981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
3990981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgRx (TI_HANDLE hTWD, TI_UINT32 uRxConfigOption, TI_UINT32 uRxFilterOption);
3991981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup UnKnown
3992981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure Packet Detection Threshold
3993981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3994981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
3995981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  threshold 	- Threshold Value
3996981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
3997981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
3998981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
3999981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4000981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa ERate
4001981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4002981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgPacketDetectionThreshold (TI_HANDLE hTWD, TI_UINT32 threshold);
4003981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Radio
4004981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure Slot Time
4005981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4006981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 				- TWD module object handle
4007981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eSlotTimeVal 	- Slot Time Value
4008981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4009981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4010981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4011981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4012981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4013981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4014981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgSlotTime (TI_HANDLE hTWD, ESlotTime eSlotTimeVal);
4015981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Radio
4016981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure Preamble
4017981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4018981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
4019981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  ePreamble 	- Preamble Value
4020981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4021981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4022981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4023981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4024981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4025981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4026981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgPreamble (TI_HANDLE hTWD, EPreamble ePreamble);
4027981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Power_Management
4028981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure Beacon Filter State
4029981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4030981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD     				- TWD module object handle
4031981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uBeaconFilteringStatus   - Beacon Filtering Status. Indicates whether the filter is enabled:
4032981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 									  1 - enabled, 0 - disabled
4033981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uNumOfBeaconsToBuffer 	- Determines the number of beacons without the unicast TIM bit set,
4034981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 									  that the firmware buffers before signaling the host about ready frames.
4035981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *									  When thi snumber is set to 0 and the filter is enabled, beacons without
4036981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *									  the unicast TIM bit set are dropped.
4037981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4038981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4039981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4040981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configure Beacon Filter State to the FW
4041981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4042981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4043981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4044981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgBeaconFilterOpt (TI_HANDLE hTWD, TI_UINT8 uBeaconFilteringStatus, TI_UINT8 uNumOfBeaconsToBuffer);
4045981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Power_Management
4046981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure Beacon Filter Table
4047981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4048981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD     	- TWD module object handle
4049981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uNumOfIe   	- The number of IE's in the table
4050981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pIeTable 	- Pointer to Input IE Table
4051981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uIeTableSize - Size of Input IE Table
4052981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4053981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4054981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4055981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configure Beacon Filter Table to the FW
4056981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4057981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4058981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4059981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgBeaconFilterTable (TI_HANDLE hTWD, TI_UINT8 uNumOfIe, TI_UINT8 *pIeTable, TI_UINT8 uIeTableSize);
4060981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Power_Management
4061981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure Wake Up Condition
4062981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4063981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD     		- TWD module object handle
4064981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pPowerMgmtConfig	- Pointer to Input Power Management Configuration Parameters
4065981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4066981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4067981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4068981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configure Power Manager's Wake Up Condition
4069981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4070981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4071981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4072981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgWakeUpCondition (TI_HANDLE hTWD, TPowerMgmtConfig *pPowerMgmtConfig);
4073981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup UnKnown
4074981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure Beacon Broadcast Options
4075981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4076981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD     		- TWD module object handle
4077981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pPowerMgmtConfig	- Pointer to Input Power Management Configuration Parameters Structure
4078981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							  The Following Field should be filled:
4079981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							  pPowerMgmtConfig->BcnBrcOptions.BeaconRxTimeout
4080981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							  pPowerMgmtConfig->BcnBrcOptions.BroadcastRxTimeout
4081981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							  pPowerMgmtConfig->BcnBrcOptions.RxBroadcastInPs - if set, enables receive of broadcast packets in Power-Save mode
4082981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							  pPowerMgmtConfig->ConsecutivePsPollDeliveryFailureThreshold - No answer after Ps-Poll work-around
4083981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4084981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4085981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4086981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configure Power Manager's Beacon Broadcast Options:
4087981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Beacon RX time Out, Broadcast RX Timeout, RX Broadcast In Power Save,
4088981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Consecutive Power Save Poll Delivery Failure Threshold
4089981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4090981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4091981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TPowerMgmtConfig, TBcnBrcOptions
4092981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4093981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgBcnBrcOptions (TI_HANDLE hTWD, TPowerMgmtConfig *pPowerMgmtConfig);
4094981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4095981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup BSS
4096981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure Max TX Retry
4097981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4098981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
4099981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pRoamingTriggerCmd   - Pointer to Input Configuration Parameters Structure
4100981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							  	  The Following Field should be filled:
4101981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								  pRoamingTriggerCmd->maxTxRetry
4102981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4103981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4104981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4105981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configure the Max Tx Retry parameters
4106981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4107981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4108981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4109981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgMaxTxRetry (TI_HANDLE hTWD, TRroamingTriggerParams *pRoamingTriggerCmd);
4110981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup BSS
4111981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure Connection Monitoring
4112981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4113981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
4114981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pRoamingTriggerCmd   - Pointer to Input Configuration Parameters Structure
4115981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							  	  The Following Field should be filled:
4116981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								  pRoamingTriggerCmd->BssLossTimeout
4117981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								  pRoamingTriggerCmd->TsfMissThreshold
4118981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4119981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4120981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4121981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configure the Bss Lost Timeout & TSF miss threshold Parameters
4122981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4123981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4124981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4125981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgConnMonitParams (TI_HANDLE hTWD, TRroamingTriggerParams *pRoamingTriggerCmd);
4126981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Power_Management
4127981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure Sleep Auth
4128981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4129981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    			- TWD module object handle
4130981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eMinPowerPolicy  - Minimum Power Policy Type
4131981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4132981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4133981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4134981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configure the minimum power policy to the FW
4135981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4136981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa EPowerPolicy
4137981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4138981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgSleepAuth (TI_HANDLE hTWD, EPowerPolicy eMinPowerPolicy);
4139981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
4140981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure MAC Clock
4141981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4142981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    		- TWD module object handle
4143981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uMacClock    - MAC Clock value
4144981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4145981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4146981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4147981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4148981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4149981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4150981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgMacClock (TI_HANDLE hTWD, TI_UINT32 uMacClock);
4151981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
4152981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure ARM Clock
4153981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4154981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    		- TWD module object handle
4155981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uArmClock    - ARM Clock value
4156981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4157981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4158981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4159981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4160981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4161981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4162981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgArmClock (TI_HANDLE hTWD, TI_UINT32 uArmClock);
4163981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4164981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure RX Data Filter
4165981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4166981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
4167981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  index    			- Index of the Rx Data filter
4168981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  command    			- Command: Add/remove the filter
4169981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eAction    			- Action to take when packets match the pattern
4170981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uNumFieldPatterns   	- Number of field patterns in the filter
4171981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uLenFieldPatterns    - Length of the field pattern series
4172981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pFieldPatterns    	- Series of field patterns
4173981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4174981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4175981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4176981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Add/remove Rx Data filter information element
4177981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4178981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4179981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4180981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgRxDataFilter (TI_HANDLE hTWD,
4181981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							   TI_UINT8 index,
4182981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							   TI_UINT8 command,
4183981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							   filter_e eAction,
4184981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							   TI_UINT8 uNumFieldPatterns,
4185981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							   TI_UINT8 uLenFieldPatterns,
4186981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt							   TI_UINT8 *pFieldPatterns);
4187981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4188981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure Enable RX Data Filter
4189981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4190981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    			- TWD module object handle
4191981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  bEnabled      	- Indicates if Rx data filtering is enabled or Disabled
4192981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 							  (0: data filtering disabled, Otherwise: enabled)
4193981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eDefaultAction   - The default action taken on non-matching packets
4194981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4195981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4196981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4197981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configure Enable/Disable RX Data Filter, and which default action to perform if it is enabled
4198981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4199981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4200981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4201981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgEnableRxDataFilter (TI_HANDLE hTWD, TI_BOOL bEnabled, filter_e eDefaultAction);
4202981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup BSS
4203981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure RRSSI/SNR Trigger parameters
4204981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4205981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    			- TWD module object handle
4206981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pRssiSnrTrigger  - Pointer to RRSSI/SNR Input parameter Structure
4207981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4208981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4209981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4210981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4211981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4212981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4213981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgRssiSnrTrigger (TI_HANDLE hTWD, RssiSnrTriggerCfg_t* pRssiSnrTrigger);
4214981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup QoS
4215981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure AC parameters
4216981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4217981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    			- TWD module object handle
4218981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pAcQosParams  	- Pointer to Input AC Quality Of Service Parameters Structure
4219981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								Fields that should be filled:
4220981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								pAcQosParams->ac
4221981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								pAcQosParams->aifsn
4222981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								pAcQosParams->cwMax
4223981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								pAcQosParams->cwMin
4224981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								pAcQosParams->txopLimit
4225981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb      		- Pointer to Command CB Function
4226981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb      		- Handle to Command CB Function Obj Parameters
4227981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4228981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4229981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4230981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4231981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4232981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4233981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgAcParams (TI_HANDLE hTWD, TAcQosParams *pAcQosParams, void *fCb, TI_HANDLE hCb);
4234981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup QoS
4235981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure Power Save RX Streaming
4236981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4237981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    			- TWD module object handle
4238981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pPsRxStreaming  	- Pointer to Input Power Save RX Straeming Parameters Structure
4239981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								Fields that should be filled:
4240981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								pPsRxStreaming->uTid
4241981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								pPsRxStreaming->bEnabled
4242981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								pPsRxStreaming->uStreamPeriod
4243981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * 								pPsRxStreaming->uTxTimeout
4244981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb      		- Pointer to Command CB Function
4245981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb      		- Handle to Command CB Function Obj Parameters
4246981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4247981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4248981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4249981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4250981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa TPsRxStreaming
4251981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4252981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgPsRxStreaming (TI_HANDLE hTWD, TPsRxStreaming *pPsRxStreaming, void *fCb, TI_HANDLE hCb);
4253981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Power_Management
4254981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure BET
4255981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4256981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
4257981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  Enable    			- 0: disable BET, Otherwirs: Enable BET
4258981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  MaximumConsecutiveET - Max number of consecutive beacons that may be early terminated
4259981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4260981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4261981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4262981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4263981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4264981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4265981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgBet (TI_HANDLE hTWD, TI_UINT8 Enable, TI_UINT8 MaximumConsecutiveET);
4266981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup UnKnown
4267981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure Keep Alive
4268981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4269981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 				- TWD module object handle
4270981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pKeepAliveParams - Pointer to Keep Alive parameters structure
4271981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4272981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4273981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4274981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configures the keep-alive paramters
4275981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4276981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4277981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4278981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgKeepAlive (TI_HANDLE hTWD, TKeepAliveParams *pKeepAliveParams);
4279981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Power_Management
4280981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure Keep Alive Enable/Disable flag
4281981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4282981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param hTWD 			- TWD module object handle
4283981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  enaDisFlag  	- Indicates whether to Enable (TI_TRUE) or Disable Keep Alive
4284981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4285981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4286981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4287981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4288981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4289981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4290981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgKeepAliveEnaDis (TI_HANDLE hTWD, TI_UINT8 enaDisFlag);
4291981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4292981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure Set BA Initiator
4293981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4294981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
4295981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uTid 				- TID number
4296981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uState 				- Policy : Enable / Disable
4297981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  tRa 					- Mac address of: SA as receiver / RA as initiator
4298981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uWinSize 			- windows size in number of packet
4299981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uInactivityTimeout 	- as initiator inactivity timeout in time units(TU) of 1024us / as receiver reserved
4300981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4301981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4302981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4303981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * configure BA session initiator parameters setting in the FW
4304981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * called after join in order to init the parameters for negotiating BA sessions as initiator.
4305981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Parameters initialized: RA, TID, WinSize, Inactivity Timeout and state = Enable/Disable.
4306981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * In case the host sends a broadcast address as RA the FW is allowed to Set or Deleted BA sessions
4307981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * to any receiver for that TID.
4308981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * In case of disassociate the FW allowed to establish BA session just after get that command.
4309981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * That command will not need any respond from the FW. In case DELBA send to STA or from the
4310981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * STA as initiator the FW doesn't send event to the host
4311981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4312981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4313981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4314981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgSetBaInitiator (TI_HANDLE hTWD,
4315981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 TI_UINT8 uTid,
4316981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 TI_UINT8 uState,
4317981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 TMacAddr tRa,
4318981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 TI_UINT16 uWinSize,
4319981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								 TI_UINT16 uInactivityTimeout);
4320981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4321981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Configure Set BA Receiver
4322981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4323981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
4324981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uTid 				- TID number
4325981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uState 				- Policy : Enable / Disable
4326981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  tRa 					- Mac address of: SA as receiver / RA as initiator
4327981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  uWinSize 			- windows size in number of packet
4328981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4329981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4330981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4331981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * configure BA session receiver parameters setting in the FW
4332981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * called after join in order to init the parameters for incoming BA session, as a responder.
4333981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Parameters initialized: SA, TID, winSize and state = Enable/Disable.
4334981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * In case the host sends a broadcast address as SA the FW is allowed to Set/Deleted BA sessions
4335981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * to any sender for that TID.
4336981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * In case of disassociate the FW allowed to establish BA session just after get that command.
4337981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The events of that command will respond via the RX path from the FW: ADDBA, DELBA, BAR packets.
4338981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4339981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4340981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4341981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgSetBaReceiver (TI_HANDLE hTWD,
4342981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TI_UINT8 uTid,
4343981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TI_UINT8 uState,
4344981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TMacAddr tRa,
4345981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt								TI_UINT16 uWinSize);
4346981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4347981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4348981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Close all BA receiver sessions
4349981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4350981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
4351981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return None
4352981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4353981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4354981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Close all BA receiver sessions and pass all packets in the TID queue to upper layer.
4355981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4356981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4357981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4358981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_CloseAllBaSessions(TI_HANDLE hTWD);
4359981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4360981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup BSS
4361981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Set FW HT Capabilities
4362981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4363981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
4364981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pHtCapabilitiesIe 	- Pointer to string of HT capability IE unparsed
4365981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  bAllowHtOperation 	- TI_TRUE: HT operation allowed, Otherwise: HT operation NOT allowed
4366981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4367981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4368981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4369981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Parse HT capability IE and set the current AP HT Capabilities to the FW
4370981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4371981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4372981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4373981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgSetFwHtCapabilities (TI_HANDLE hTWD,
4374981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt									  Tdot11HtCapabilitiesUnparse *pHtCapabilitiesIe,
4375981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt									  TI_BOOL bAllowHtOperation);
4376981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup BSS
4377981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief Set FW HT Information
4378981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4379981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    				- TWD module object handle
4380981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pHtInformationIe 	- Pointer to string of HT information IE unparsed
4381981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4382981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4383981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4384981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Parse HT Information IE and set the current AP HT Information to the FW
4385981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4386981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4387981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4388981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgSetFwHtInformation (TI_HANDLE hTWD, Tdot11HtInformationUnparse *pHtInformationIe);
4389981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4390653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
4391653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt/** @ingroup UnKnown
4392653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * \brief Enable/Disabel burst mode
4393653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt *
4394653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * \param  hTWD    				- TWD module object handle
4395653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * \param  bEnabled 	        - burst mode: Enable/Disable
4396653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * \return TI_OK
4397653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt *
4398653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * \par Description
4399653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt *
4400653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt * \sa
4401653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt */
4402653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry ShmidtTI_STATUS TWD_CfgBurstMode (TI_HANDLE hTWD, TI_BOOL bEnabled);
4403653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry Shmidt
4404981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*-------------*/
4405981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/* Interrogate */
4406981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*-------------*/
4407981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4408981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup UnKnown
4409981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Interrogate Roamming Statistics
4410981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4411981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD     	- TWD module object handle
4412981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb          - Pointer to Command CB Function
4413981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb          - Handle to Command CB Function Obj Parameters
4414981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pCb          - Pointer to read parameters
4415981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4416981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4417981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4418981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Interrogate ACX Roamming Statistics
4419981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4420981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4421981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4422981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_ItrRoammingStatisitics (TI_HANDLE hTWD, void *fCb, TI_HANDLE hCb, void *pCb);
4423981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup UnKnown
4424981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Configure/Interrogate RSSI
4425981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4426981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    	- TWD module object handle
4427981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb      - Pointer to Command CB Function
4428981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb      - Handle to Command CB Function Obj Parameters
4429981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pCb      - Pointer to read parameters
4430981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4431981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4432981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4433981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Configure/Interrogate StationId information element to/from FW
4434981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This information element specifies the MAC Address assigned to the STATION or AP.
4435981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The RSSI is Configed to default value which is the permanent MAC address which
4436981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * is stored in the adaptor's non-volatile memory.
4437981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4438981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4439981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4440981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_ItrRSSI (TI_HANDLE hTWD, void *fCb, TI_HANDLE hCb, void *pCb);
4441981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup UnKnown
4442981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Interrogate Memory Map
4443981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4444981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    	- TWD module object handle
4445981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pMap    	- Pointer to Output Memory Map
4446981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb    	- Pointer to Callback Function
4447981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb    	- Handle to Callback Function Parameters Object
4448981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4449981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4450981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4451981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Interrogate Memory Map from FW
4452981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4453981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa MemoryMap_t
4454981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */TI_STATUS TWD_ItrMemoryMap (TI_HANDLE hTWD, MemoryMap_t *pMap, void *fCb, TI_HANDLE hCb);
4455981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup UnKnown
4456981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Interrogate Statistics
4457981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4458981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    	- TWD module object handle
4459981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb      - Pointer to Command CB Function
4460981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb      - Handle to Command CB Function Obj Parameters
4461981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pCb      - Pointer to read parameters
4462981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4463981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4464981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4465981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4466981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4467981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4468981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_ItrStatistics (TI_HANDLE hTWD, void *fCb, TI_HANDLE hCb, void *pCb);
4469981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4470981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief	Interrogate Data Filter Statistics
4471981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4472981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD    	- TWD module object handle
4473981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb      - Pointer to Command CB Function
4474981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb      - Handle to Command CB Function Obj Parameters
4475981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pCb      - Pointer to read parameters
4476981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4477981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4478981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4479981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4480981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4481981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */TI_STATUS TWD_ItrDataFilterStatistics (TI_HANDLE hTWD, void *fCb, TI_HANDLE hCb, void *pCb);
4482981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4483981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
4484981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
4485981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *	TNETW-Driver  Tx  API  Functions
4486981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
4487981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4488981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4489981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4490981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  TWD TX Control Block Allocation
4491981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4492981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD   	- TWD module object handle
4493981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return Pointer to Control Block Entry on success or NULL on failure
4494981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4495981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4496981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Use this function for Allocate a Control-Block for the packet Tx parameters and descriptor
4497981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4498981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4499981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4500981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTTxCtrlBlk *TWD_txCtrlBlk_Alloc (TI_HANDLE hTWD);
4501981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4502981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  TWD TX Control Block Free
4503981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4504981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD   			- TWD module object handle
4505981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pCurrentEntry   	- Pointer to TX Control Block Entry to Free
4506981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
4507981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4508981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4509981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Use this function for Free a Control-Block of packet Tx parameters and descriptor
4510981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4511981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4512981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4513981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_txCtrlBlk_Free (TI_HANDLE hTWD, TTxCtrlBlk *pCurrentEntry);
4514981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4515981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  TWD TX Control Get Pointer
4516981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4517981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD   	- TWD module object handle
4518981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  descId  	- Id of TX Control Block Descriptor
4519981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return Pointer to Control Block Entry on success or NULL on failure
4520981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4521981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4522981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Use this function for Get a Pointer to a Control-Block of packet Tx parameters and descriptor
4523981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4524981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4525981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4526981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTTxCtrlBlk *TWD_txCtrlBlk_GetPointer (TI_HANDLE hTWD, TI_UINT8 descId);
4527981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4528981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4529981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Allocate Resources for TX HW Queue
4530981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4531981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD   			- TWD module object handle
4532981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pTxCtrlBlk  		- The Tx packet control block
4533981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return see - ETxHwQueStatus
4534981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4535981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4536981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Allocates Resources (HW-blocks number required) for TX HW Queue
4537981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4538981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4539981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4540981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtETxHwQueStatus TWD_txHwQueue_AllocResources (TI_HANDLE hTWD, TTxCtrlBlk *pTxCtrlBlk);
4541981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4542981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4543981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  TX Xfer Send Packet
4544981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4545981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD   			- TWD module object handle
4546981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pPktCtrlBlk   	- Pointer to TX Control Block Entry to Free
4547981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return see ETxnStatus
4548981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4549981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4550981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Send Packet via TX Xfer
4551981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4552981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4553981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4554981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtETxnStatus TWD_txXfer_SendPacket (TI_HANDLE hTWD, TTxCtrlBlk *pPktCtrlBlk);
4555981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
4556981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  Watch Dog Expire Event
4557981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4558981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD   			- TWD module object handle
4559981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4560981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4561981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4562981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * This function handles the Event of Watch Dog Expire (FW stopped)
4563981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4564981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4565981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4566981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_WdExpireEvent (TI_HANDLE hTWD);
4567981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/*
4568981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
4569981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *	BIT API Functions
4570981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * --------------------------------------------------------------
4571981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4572981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
4573981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Test Command Complete CB
4574981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4575981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  Handle        	- handle to object
4576981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eStatus			- Status of Driver Test Performed
4577981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pTestCmdParams  	- Pointer to Output of Test Command Parameters
4578981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
4579981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4580981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4581981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The function prototype for the BIT Test Command Complete CB
4582981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Enables user to implement and use its own BIT Test Command Complete CB
4583981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * which will be called when Driver Test end
4584981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4585981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa	TWDriverTest
4586981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4587981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidttypedef void (*TTestCmdCB)(TI_HANDLE Handle,
4588981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt						   TI_STATUS eStatus,
4589981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt						   TI_HANDLE pTestCmdParams);
4590981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
4591981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Test Command Complete CB
4592981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4593981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  Handle        	- handle to object
4594981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eStatus			- Status of Driver Test Performed (Complete/Pending/Error)
4595981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pTestCmdParams  	- Pointer to Output of Test Command Parameters
4596981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
4597981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4598981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4599981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The function implementation for the BIT Test Command Complete CB
4600981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4601981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4602981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4603981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWDriverTestCB(TI_HANDLE Handle,
4604981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					TI_STATUS eStatus,
4605981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					TI_HANDLE pTestCmdParams);
4606981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Control
4607981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief TWD Driver Test
4608981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4609981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD        		- handle to TWD object
4610981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  eTestCmd			- Identifier of test Command to Perform
4611981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  pTestCmdParams  	- Pointer to Input/Output Test Command Parameters
4612981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  fCb  			- Test Command Complete CB
4613981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hCb	  			- Handle to Test Command Complete CB Parameters
4614981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK on success or TI_NOK on failure
4615981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4616981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4617981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The implementation of the BIT Test Command
4618981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4619981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4620981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4621981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWDriverTest(TI_HANDLE hTWD,
4622981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					   TestCmdID_enum eTestCmd,
4623981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					   void* pTestCmdParams,
4624981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					   TTestCmdCB fCb,
4625981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt					   TI_HANDLE hCb);
4626981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4627981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4628981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4629981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**
4630981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  \brief TWD get FEM type
4631981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  *
4632981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  Handle        	- handle to object
4633981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return uint8
4634981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4635981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4636981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The function return the Front end module that was read frm FW register *
4637981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4638981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4639981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4640981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_UINT8 TWD_GetFEMType (TI_HANDLE hTWD);
4641981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4642981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4643981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/**
4644981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  \brief TWD end function of read radio state machine
4645981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *  *  *
4646981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  Handle        	- handle to object
4647981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return void
4648981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4649981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4650981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * The function calling to HwInit call back function, after finish reading FEM registers *
4651981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4652981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4653981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4654981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_FinalizeFEMRead(TI_HANDLE hTWD);
4655981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidtvoid TWD_FinalizePolarityRead(TI_HANDLE hTWD);
4656981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4657981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt/** @ingroup Data_Path
4658981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \brief  TWD_CfgBurstMode
4659981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4660981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  hTWD   	- TWD module object handle
4661981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \param  bEnabled  - is Burst mode enabled
4662981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \return TI_OK
4663981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4664981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \par Description
4665981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * Use this function to enable/disbale the burst mode
4666981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt *
4667981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt * \sa
4668981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt */
4669981801b95b81e6d1c7a2085967406e86af0f08fcDmitry ShmidtTI_STATUS TWD_CfgBurstMode (TI_HANDLE hTWD, TI_BOOL bEnabled);
4670653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry ShmidtTI_STATUS TWD_SetRateMngDebug(TI_HANDLE hTWD, RateMangeParams_t *pRateMngParams);
4671653850f71f9caaa41af19cadbab24bb5e655daf4Dmitry ShmidtTI_STATUS TWD_GetRateMngDebug(TI_HANDLE hTWD, RateMangeReadParams_t  *pParamInfo);
4672981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt
4673981801b95b81e6d1c7a2085967406e86af0f08fcDmitry Shmidt#endif  /* TWDRIVER_H */
4674