| OLD | NEW |
| 1 //------------------------------------------------------------------------------ | 1 //------------------------------------------------------------------------------ |
| 2 // <copyright file="wmi_api.h" company="Atheros"> | 2 // <copyright file="wmi_api.h" company="Atheros"> |
| 3 // Copyright (c) 2004-2008 Atheros Corporation. All rights reserved. | 3 // Copyright (c) 2004-2010 Atheros Corporation. All rights reserved. |
| 4 // | 4 // |
| 5 // This program is free software; you can redistribute it and/or modify | |
| 6 // it under the terms of the GNU General Public License version 2 as | |
| 7 // published by the Free Software Foundation; | |
| 8 // | 5 // |
| 9 // Software distributed under the License is distributed on an "AS | 6 // Permission to use, copy, modify, and/or distribute this software for any |
| 10 // IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or | 7 // purpose with or without fee is hereby granted, provided that the above |
| 11 // implied. See the License for the specific language governing | 8 // copyright notice and this permission notice appear in all copies. |
| 12 // rights and limitations under the License. | 9 // |
| 10 // THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
| 11 // WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
| 12 // MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
| 13 // ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
| 14 // WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
| 15 // ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
| 16 // OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
| 13 // | 17 // |
| 14 // | 18 // |
| 15 //------------------------------------------------------------------------------ | 19 //------------------------------------------------------------------------------ |
| 16 //============================================================================== | 20 //============================================================================== |
| 17 // This file contains the definitions for the Wireless Module Interface (WMI). | 21 // This file contains the definitions for the Wireless Module Interface (WMI). |
| 18 // | 22 // |
| 19 // Author(s): ="Atheros" | 23 // Author(s): ="Atheros" |
| 20 //============================================================================== | 24 //============================================================================== |
| 21 #ifndef _WMI_API_H_ | 25 #ifndef _WMI_API_H_ |
| 22 #define _WMI_API_H_ | 26 #define _WMI_API_H_ |
| 23 | 27 |
| 24 #ifdef __cplusplus | 28 #ifdef __cplusplus |
| 25 extern "C" { | 29 extern "C" { |
| 26 #endif | 30 #endif |
| 27 | 31 |
| 28 /* WMI converts a dix frame with an ethernet payload (up to 1500 bytes) | 32 /* WMI converts a dix frame with an ethernet payload (up to 1500 bytes) |
| 29 * to an 802.3 frame (adds SNAP header) and adds on a WMI data header */ | 33 * to an 802.3 frame (adds SNAP header) and adds on a WMI data header */ |
| 30 #define WMI_MAX_TX_DATA_FRAME_LENGTH (1500 + sizeof(WMI_DATA_HDR) + sizeof(ATH_M
AC_HDR) + sizeof(ATH_LLC_SNAP_HDR)) | 34 #define WMI_MAX_TX_DATA_FRAME_LENGTH (1500 + sizeof(WMI_DATA_HDR) + sizeof(ATH_M
AC_HDR) + sizeof(ATH_LLC_SNAP_HDR)) |
| 31 | 35 |
| 32 /* A normal WMI data frame */ | 36 /* A normal WMI data frame */ |
| 33 #define WMI_MAX_NORMAL_RX_DATA_FRAME_LENGTH (1500 + sizeof(WMI_DATA_HDR) + sizeo
f(ATH_MAC_HDR) + sizeof(ATH_LLC_SNAP_HDR)) | 37 #define WMI_MAX_NORMAL_RX_DATA_FRAME_LENGTH (1500 + sizeof(WMI_DATA_HDR) + sizeo
f(ATH_MAC_HDR) + sizeof(ATH_LLC_SNAP_HDR)) |
| 34 | 38 |
| 35 /* An AMSDU frame */ | 39 /* An AMSDU frame */ /* The MAX AMSDU length of AR6003 is 3839 */ |
| 36 #define WMI_MAX_AMSDU_RX_DATA_FRAME_LENGTH (4096 + sizeof(WMI_DATA_HDR) + sizeo
f(ATH_MAC_HDR) + sizeof(ATH_LLC_SNAP_HDR)) | 40 #define WMI_MAX_AMSDU_RX_DATA_FRAME_LENGTH (3840 + sizeof(WMI_DATA_HDR) + sizeo
f(ATH_MAC_HDR) + sizeof(ATH_LLC_SNAP_HDR)) |
| 37 | 41 |
| 38 /* | 42 /* |
| 39 * IP QoS Field definitions according to 802.1p | 43 * IP QoS Field definitions according to 802.1p |
| 40 */ | 44 */ |
| 41 #define BEST_EFFORT_PRI 0 | 45 #define BEST_EFFORT_PRI 0 |
| 42 #define BACKGROUND_PRI 1 | 46 #define BACKGROUND_PRI 1 |
| 43 #define EXCELLENT_EFFORT_PRI 3 | 47 #define EXCELLENT_EFFORT_PRI 3 |
| 44 #define CONTROLLED_LOAD_PRI 4 | 48 #define CONTROLLED_LOAD_PRI 4 |
| 45 #define VIDEO_PRI 5 | 49 #define VIDEO_PRI 5 |
| 46 #define VOICE_PRI 6 | 50 #define VOICE_PRI 6 |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 144 A_UINT16 psPollNum, A_UINT16 dtimPolicy, | 148 A_UINT16 psPollNum, A_UINT16 dtimPolicy, |
| 145 A_UINT16 wakup_tx_policy, A_UINT16 num_tx_to_wakeup, | 149 A_UINT16 wakup_tx_policy, A_UINT16 num_tx_to_wakeup, |
| 146 A_UINT16 ps_fail_event_policy); | 150 A_UINT16 ps_fail_event_policy); |
| 147 A_STATUS wmi_disctimeout_cmd(struct wmi_t *wmip, A_UINT8 timeout); | 151 A_STATUS wmi_disctimeout_cmd(struct wmi_t *wmip, A_UINT8 timeout); |
| 148 A_STATUS wmi_sync_cmd(struct wmi_t *wmip, A_UINT8 syncNumber); | 152 A_STATUS wmi_sync_cmd(struct wmi_t *wmip, A_UINT8 syncNumber); |
| 149 A_STATUS wmi_create_pstream_cmd(struct wmi_t *wmip, WMI_CREATE_PSTREAM_CMD *pstr
eam); | 153 A_STATUS wmi_create_pstream_cmd(struct wmi_t *wmip, WMI_CREATE_PSTREAM_CMD *pstr
eam); |
| 150 A_STATUS wmi_delete_pstream_cmd(struct wmi_t *wmip, A_UINT8 trafficClass, A_UINT
8 streamID); | 154 A_STATUS wmi_delete_pstream_cmd(struct wmi_t *wmip, A_UINT8 trafficClass, A_UINT
8 streamID); |
| 151 A_STATUS wmi_set_framerate_cmd(struct wmi_t *wmip, A_UINT8 bEnable, A_UINT8 type
, A_UINT8 subType, A_UINT16 rateMask); | 155 A_STATUS wmi_set_framerate_cmd(struct wmi_t *wmip, A_UINT8 bEnable, A_UINT8 type
, A_UINT8 subType, A_UINT16 rateMask); |
| 152 A_STATUS wmi_set_bitrate_cmd(struct wmi_t *wmip, A_INT32 dataRate, A_INT32 mgmtR
ate, A_INT32 ctlRate); | 156 A_STATUS wmi_set_bitrate_cmd(struct wmi_t *wmip, A_INT32 dataRate, A_INT32 mgmtR
ate, A_INT32 ctlRate); |
| 153 A_STATUS wmi_get_bitrate_cmd(struct wmi_t *wmip); | 157 A_STATUS wmi_get_bitrate_cmd(struct wmi_t *wmip); |
| 154 A_INT8 wmi_validate_bitrate(struct wmi_t *wmip, A_INT32 rate); | 158 A_INT8 wmi_validate_bitrate(struct wmi_t *wmip, A_INT32 rate, A_INT8 *rate_idx
); |
| 155 A_STATUS wmi_get_regDomain_cmd(struct wmi_t *wmip); | 159 A_STATUS wmi_get_regDomain_cmd(struct wmi_t *wmip); |
| 156 A_STATUS wmi_get_channelList_cmd(struct wmi_t *wmip); | 160 A_STATUS wmi_get_channelList_cmd(struct wmi_t *wmip); |
| 157 A_STATUS wmi_set_channelParams_cmd(struct wmi_t *wmip, A_UINT8 scanParam, | 161 A_STATUS wmi_set_channelParams_cmd(struct wmi_t *wmip, A_UINT8 scanParam, |
| 158 WMI_PHY_MODE mode, A_INT8 numChan, | 162 WMI_PHY_MODE mode, A_INT8 numChan, |
| 159 A_UINT16 *channelList); | 163 A_UINT16 *channelList); |
| 160 | 164 |
| 161 A_STATUS wmi_set_snr_threshold_params(struct wmi_t *wmip, | 165 A_STATUS wmi_set_snr_threshold_params(struct wmi_t *wmip, |
| 162 WMI_SNR_THRESHOLD_PARAMS_CMD *snrCmd); | 166 WMI_SNR_THRESHOLD_PARAMS_CMD *snrCmd); |
| 163 A_STATUS wmi_set_rssi_threshold_params(struct wmi_t *wmip, | 167 A_STATUS wmi_set_rssi_threshold_params(struct wmi_t *wmip, |
| 164 WMI_RSSI_THRESHOLD_PARAMS_CMD *rssiCmd); | 168 WMI_RSSI_THRESHOLD_PARAMS_CMD *rssiCmd); |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 258 | 262 |
| 259 A_STATUS wmi_set_btcoex_debug_cmd(struct wmi_t *wmip, WMI_SET_BTCOEX_DEBUG_CMD *
cmd); | 263 A_STATUS wmi_set_btcoex_debug_cmd(struct wmi_t *wmip, WMI_SET_BTCOEX_DEBUG_CMD *
cmd); |
| 260 | 264 |
| 261 A_STATUS wmi_set_btcoex_bt_operating_status_cmd(struct wmi_t * wmip, | 265 A_STATUS wmi_set_btcoex_bt_operating_status_cmd(struct wmi_t * wmip, |
| 262 WMI_SET_BTCOEX_BT_OPERAT
ING_STATUS_CMD * cmd); | 266 WMI_SET_BTCOEX_BT_OPERAT
ING_STATUS_CMD * cmd); |
| 263 | 267 |
| 264 A_STATUS wmi_get_btcoex_config_cmd(struct wmi_t * wmip, WMI_GET_BTCOEX_CONFIG_CM
D * cmd); | 268 A_STATUS wmi_get_btcoex_config_cmd(struct wmi_t * wmip, WMI_GET_BTCOEX_CONFIG_CM
D * cmd); |
| 265 | 269 |
| 266 A_STATUS wmi_get_btcoex_stats_cmd(struct wmi_t * wmip); | 270 A_STATUS wmi_get_btcoex_stats_cmd(struct wmi_t * wmip); |
| 267 | 271 |
| 272 A_STATUS wmi_SGI_cmd(struct wmi_t *wmip, A_UINT32 sgiMask, A_UINT8 sgiPERThresho
ld); |
| 273 |
| 268 /* | 274 /* |
| 269 * This function is used to configure the fix rates mask to the target. | 275 * This function is used to configure the fix rates mask to the target. |
| 270 */ | 276 */ |
| 271 A_STATUS wmi_set_fixrates_cmd(struct wmi_t *wmip, A_UINT32 fixRatesMask); | 277 A_STATUS wmi_set_fixrates_cmd(struct wmi_t *wmip, A_UINT32 fixRatesMask); |
| 272 A_STATUS wmi_get_ratemask_cmd(struct wmi_t *wmip); | 278 A_STATUS wmi_get_ratemask_cmd(struct wmi_t *wmip); |
| 273 | 279 |
| 274 A_STATUS wmi_set_authmode_cmd(struct wmi_t *wmip, A_UINT8 mode); | 280 A_STATUS wmi_set_authmode_cmd(struct wmi_t *wmip, A_UINT8 mode); |
| 275 | 281 |
| 276 A_STATUS wmi_set_reassocmode_cmd(struct wmi_t *wmip, A_UINT8 mode); | 282 A_STATUS wmi_set_reassocmode_cmd(struct wmi_t *wmip, A_UINT8 mode); |
| 277 | 283 |
| (...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 426 wmi_find_matching_Ssidnode (struct wmi_t *wmip, A_UCHAR *pSsid, | 432 wmi_find_matching_Ssidnode (struct wmi_t *wmip, A_UCHAR *pSsid, |
| 427 A_UINT32 ssidLength, | 433 A_UINT32 ssidLength, |
| 428 A_UINT32 dot11AuthMode, A_UINT32 authMode, | 434 A_UINT32 dot11AuthMode, A_UINT32 authMode, |
| 429 A_UINT32 pairwiseCryptoType, A_UINT32 grpwiseCryptoTyp); | 435 A_UINT32 pairwiseCryptoType, A_UINT32 grpwiseCryptoTyp); |
| 430 | 436 |
| 431 #ifdef __cplusplus | 437 #ifdef __cplusplus |
| 432 } | 438 } |
| 433 #endif | 439 #endif |
| 434 | 440 |
| 435 #endif /* _WMI_API_H_ */ | 441 #endif /* _WMI_API_H_ */ |
| OLD | NEW |