OLD | NEW |
(Empty) | |
| 1 //------------------------------------------------------------------------------ |
| 2 // <copyright file="wmi_api.h" company="Atheros"> |
| 3 // Copyright (c) 2004-2008 Atheros Corporation. All rights reserved. |
| 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 // |
| 9 // Software distributed under the License is distributed on an "AS |
| 10 // IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or |
| 11 // implied. See the License for the specific language governing |
| 12 // rights and limitations under the License. |
| 13 // |
| 14 // |
| 15 //------------------------------------------------------------------------------ |
| 16 //============================================================================== |
| 17 // This file contains the definitions for the Wireless Module Interface (WMI). |
| 18 // |
| 19 // Author(s): ="Atheros" |
| 20 //============================================================================== |
| 21 #ifndef _WMI_API_H_ |
| 22 #define _WMI_API_H_ |
| 23 |
| 24 #ifdef __cplusplus |
| 25 extern "C" { |
| 26 #endif |
| 27 |
| 28 /* 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 */ |
| 30 #define WMI_MAX_TX_DATA_FRAME_LENGTH (1500 + sizeof(WMI_DATA_HDR) + sizeof(ATH_M
AC_HDR) + sizeof(ATH_LLC_SNAP_HDR)) |
| 31 |
| 32 /* 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)) |
| 34 |
| 35 /* An AMSDU frame */ |
| 36 #define WMI_MAX_AMSDU_RX_DATA_FRAME_LENGTH (4096 + sizeof(WMI_DATA_HDR) + sizeo
f(ATH_MAC_HDR) + sizeof(ATH_LLC_SNAP_HDR)) |
| 37 |
| 38 /* |
| 39 * IP QoS Field definitions according to 802.1p |
| 40 */ |
| 41 #define BEST_EFFORT_PRI 0 |
| 42 #define BACKGROUND_PRI 1 |
| 43 #define EXCELLENT_EFFORT_PRI 3 |
| 44 #define CONTROLLED_LOAD_PRI 4 |
| 45 #define VIDEO_PRI 5 |
| 46 #define VOICE_PRI 6 |
| 47 #define NETWORK_CONTROL_PRI 7 |
| 48 #define MAX_NUM_PRI 8 |
| 49 |
| 50 #define UNDEFINED_PRI (0xff) |
| 51 |
| 52 #define WMI_IMPLICIT_PSTREAM_INACTIVITY_INT 5000 /* 5 seconds */ |
| 53 |
| 54 #define A_ROUND_UP(x, y) ((((x) + ((y) - 1)) / (y)) * (y)) |
| 55 |
| 56 typedef enum { |
| 57 ATHEROS_COMPLIANCE = 0x1, |
| 58 }TSPEC_PARAM_COMPLIANCE; |
| 59 |
| 60 struct wmi_t; |
| 61 |
| 62 void *wmi_init(void *devt); |
| 63 |
| 64 void wmi_qos_state_init(struct wmi_t *wmip); |
| 65 void wmi_shutdown(struct wmi_t *wmip); |
| 66 HTC_ENDPOINT_ID wmi_get_control_ep(struct wmi_t * wmip); |
| 67 void wmi_set_control_ep(struct wmi_t * wmip, HTC_ENDPOINT_ID eid); |
| 68 A_UINT16 wmi_get_mapped_qos_queue(struct wmi_t *, A_UINT8); |
| 69 A_STATUS wmi_dix_2_dot3(struct wmi_t *wmip, void *osbuf); |
| 70 A_STATUS wmi_data_hdr_add(struct wmi_t *wmip, void *osbuf, A_UINT8 msgType, A_BO
OL bMoreData, WMI_DATA_HDR_DATA_TYPE data_type,A_UINT8 metaVersion, void *pTxMet
aS); |
| 71 A_STATUS wmi_dot3_2_dix(void *osbuf); |
| 72 |
| 73 A_STATUS wmi_dot11_hdr_remove (struct wmi_t *wmip, void *osbuf); |
| 74 A_STATUS wmi_dot11_hdr_add(struct wmi_t *wmip, void *osbuf, NETWORK_TYPE mode); |
| 75 |
| 76 A_STATUS wmi_data_hdr_remove(struct wmi_t *wmip, void *osbuf); |
| 77 A_STATUS wmi_syncpoint(struct wmi_t *wmip); |
| 78 A_STATUS wmi_syncpoint_reset(struct wmi_t *wmip); |
| 79 A_UINT8 wmi_implicit_create_pstream(struct wmi_t *wmip, void *osbuf, A_UINT32 la
yer2Priority, A_BOOL wmmEnabled); |
| 80 |
| 81 A_UINT8 wmi_determine_userPriority (A_UINT8 *pkt, A_UINT32 layer2Pri); |
| 82 |
| 83 A_STATUS wmi_control_rx(struct wmi_t *wmip, void *osbuf); |
| 84 void wmi_iterate_nodes(struct wmi_t *wmip, wlan_node_iter_func *f, void *arg); |
| 85 void wmi_free_allnodes(struct wmi_t *wmip); |
| 86 bss_t *wmi_find_node(struct wmi_t *wmip, const A_UINT8 *macaddr); |
| 87 void wmi_free_node(struct wmi_t *wmip, const A_UINT8 *macaddr); |
| 88 |
| 89 |
| 90 typedef enum { |
| 91 NO_SYNC_WMIFLAG = 0, |
| 92 SYNC_BEFORE_WMIFLAG, /* transmit all queued data before cmd */ |
| 93 SYNC_AFTER_WMIFLAG, /* any new data waits until cmd execs */ |
| 94 SYNC_BOTH_WMIFLAG, |
| 95 END_WMIFLAG /* end marker */ |
| 96 } WMI_SYNC_FLAG; |
| 97 |
| 98 A_STATUS wmi_cmd_send(struct wmi_t *wmip, void *osbuf, WMI_COMMAND_ID cmdId, |
| 99 WMI_SYNC_FLAG flag); |
| 100 |
| 101 A_STATUS wmi_connect_cmd(struct wmi_t *wmip, |
| 102 NETWORK_TYPE netType, |
| 103 DOT11_AUTH_MODE dot11AuthMode, |
| 104 AUTH_MODE authMode, |
| 105 CRYPTO_TYPE pairwiseCrypto, |
| 106 A_UINT8 pairwiseCryptoLen, |
| 107 CRYPTO_TYPE groupCrypto, |
| 108 A_UINT8 groupCryptoLen, |
| 109 int ssidLength, |
| 110 A_UCHAR *ssid, |
| 111 A_UINT8 *bssid, |
| 112 A_UINT16 channel, |
| 113 A_UINT32 ctrl_flags); |
| 114 |
| 115 A_STATUS wmi_reconnect_cmd(struct wmi_t *wmip, |
| 116 A_UINT8 *bssid, |
| 117 A_UINT16 channel); |
| 118 A_STATUS wmi_disconnect_cmd(struct wmi_t *wmip); |
| 119 A_STATUS wmi_getrev_cmd(struct wmi_t *wmip); |
| 120 A_STATUS wmi_startscan_cmd(struct wmi_t *wmip, WMI_SCAN_TYPE scanType, |
| 121 A_BOOL forceFgScan, A_BOOL isLegacy, |
| 122 A_UINT32 homeDwellTime, A_UINT32 forceScanInterval, |
| 123 A_INT8 numChan, A_UINT16 *channelList); |
| 124 A_STATUS wmi_scanparams_cmd(struct wmi_t *wmip, A_UINT16 fg_start_sec, |
| 125 A_UINT16 fg_end_sec, A_UINT16 bg_sec, |
| 126 A_UINT16 minact_chdw_msec, |
| 127 A_UINT16 maxact_chdw_msec, A_UINT16 pas_chdw_msec, |
| 128 A_UINT8 shScanRatio, A_UINT8 scanCtrlFlags, |
| 129 A_UINT32 max_dfsch_act_time, |
| 130 A_UINT16 maxact_scan_per_ssid); |
| 131 A_STATUS wmi_bssfilter_cmd(struct wmi_t *wmip, A_UINT8 filter, A_UINT32 ieMask); |
| 132 A_STATUS wmi_probedSsid_cmd(struct wmi_t *wmip, A_UINT8 index, A_UINT8 flag, |
| 133 A_UINT8 ssidLength, A_UCHAR *ssid); |
| 134 A_STATUS wmi_listeninterval_cmd(struct wmi_t *wmip, A_UINT16 listenInterval, A_U
INT16 listenBeacons); |
| 135 A_STATUS wmi_bmisstime_cmd(struct wmi_t *wmip, A_UINT16 bmisstime, A_UINT16 bmis
sbeacons); |
| 136 A_STATUS wmi_associnfo_cmd(struct wmi_t *wmip, A_UINT8 ieType, |
| 137 A_UINT8 ieLen, A_UINT8 *ieInfo); |
| 138 A_STATUS wmi_powermode_cmd(struct wmi_t *wmip, A_UINT8 powerMode); |
| 139 A_STATUS wmi_ibsspmcaps_cmd(struct wmi_t *wmip, A_UINT8 pmEnable, A_UINT8 ttl, |
| 140 A_UINT16 atim_windows, A_UINT16 timeout_value); |
| 141 A_STATUS wmi_apps_cmd(struct wmi_t *wmip, A_UINT8 psType, A_UINT32 idle_time, |
| 142 A_UINT32 ps_period, A_UINT8 sleep_period); |
| 143 A_STATUS wmi_pmparams_cmd(struct wmi_t *wmip, A_UINT16 idlePeriod, |
| 144 A_UINT16 psPollNum, A_UINT16 dtimPolicy, |
| 145 A_UINT16 wakup_tx_policy, A_UINT16 num_tx_to_wakeup, |
| 146 A_UINT16 ps_fail_event_policy); |
| 147 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); |
| 149 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); |
| 151 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); |
| 153 A_STATUS wmi_get_bitrate_cmd(struct wmi_t *wmip); |
| 154 A_INT8 wmi_validate_bitrate(struct wmi_t *wmip, A_INT32 rate); |
| 155 A_STATUS wmi_get_regDomain_cmd(struct wmi_t *wmip); |
| 156 A_STATUS wmi_get_channelList_cmd(struct wmi_t *wmip); |
| 157 A_STATUS wmi_set_channelParams_cmd(struct wmi_t *wmip, A_UINT8 scanParam, |
| 158 WMI_PHY_MODE mode, A_INT8 numChan, |
| 159 A_UINT16 *channelList); |
| 160 |
| 161 A_STATUS wmi_set_snr_threshold_params(struct wmi_t *wmip, |
| 162 WMI_SNR_THRESHOLD_PARAMS_CMD *snrCmd); |
| 163 A_STATUS wmi_set_rssi_threshold_params(struct wmi_t *wmip, |
| 164 WMI_RSSI_THRESHOLD_PARAMS_CMD *rssiCmd); |
| 165 A_STATUS wmi_clr_rssi_snr(struct wmi_t *wmip); |
| 166 A_STATUS wmi_set_lq_threshold_params(struct wmi_t *wmip, |
| 167 WMI_LQ_THRESHOLD_PARAMS_CMD *lqCmd); |
| 168 A_STATUS wmi_set_rts_cmd(struct wmi_t *wmip, A_UINT16 threshold); |
| 169 A_STATUS wmi_set_lpreamble_cmd(struct wmi_t *wmip, A_UINT8 status, A_UINT8 pream
blePolicy); |
| 170 |
| 171 A_STATUS wmi_set_error_report_bitmask(struct wmi_t *wmip, A_UINT32 bitmask); |
| 172 |
| 173 A_STATUS wmi_get_challenge_resp_cmd(struct wmi_t *wmip, A_UINT32 cookie, |
| 174 A_UINT32 source); |
| 175 |
| 176 A_STATUS wmi_config_debug_module_cmd(struct wmi_t *wmip, A_UINT16 mmask, |
| 177 A_UINT16 tsr, A_BOOL rep, A_UINT16 size, |
| 178 A_UINT32 valid); |
| 179 |
| 180 A_STATUS wmi_get_stats_cmd(struct wmi_t *wmip); |
| 181 |
| 182 A_STATUS wmi_addKey_cmd(struct wmi_t *wmip, A_UINT8 keyIndex, |
| 183 CRYPTO_TYPE keyType, A_UINT8 keyUsage, |
| 184 A_UINT8 keyLength,A_UINT8 *keyRSC, |
| 185 A_UINT8 *keyMaterial, A_UINT8 key_op_ctrl, A_UINT8 *mac, |
| 186 WMI_SYNC_FLAG sync_flag); |
| 187 A_STATUS wmi_add_krk_cmd(struct wmi_t *wmip, A_UINT8 *krk); |
| 188 A_STATUS wmi_delete_krk_cmd(struct wmi_t *wmip); |
| 189 A_STATUS wmi_deleteKey_cmd(struct wmi_t *wmip, A_UINT8 keyIndex); |
| 190 A_STATUS wmi_set_akmp_params_cmd(struct wmi_t *wmip, |
| 191 WMI_SET_AKMP_PARAMS_CMD *akmpParams); |
| 192 A_STATUS wmi_get_pmkid_list_cmd(struct wmi_t *wmip); |
| 193 A_STATUS wmi_set_pmkid_list_cmd(struct wmi_t *wmip, |
| 194 WMI_SET_PMKID_LIST_CMD *pmkInfo); |
| 195 A_STATUS wmi_abort_scan_cmd(struct wmi_t *wmip); |
| 196 A_STATUS wmi_set_txPwr_cmd(struct wmi_t *wmip, A_UINT8 dbM); |
| 197 A_STATUS wmi_get_txPwr_cmd(struct wmi_t *wmip); |
| 198 A_STATUS wmi_addBadAp_cmd(struct wmi_t *wmip, A_UINT8 apIndex, A_UINT8 *bssid); |
| 199 A_STATUS wmi_deleteBadAp_cmd(struct wmi_t *wmip, A_UINT8 apIndex); |
| 200 A_STATUS wmi_set_tkip_countermeasures_cmd(struct wmi_t *wmip, A_BOOL en); |
| 201 A_STATUS wmi_setPmkid_cmd(struct wmi_t *wmip, A_UINT8 *bssid, A_UINT8 *pmkId, |
| 202 A_BOOL set); |
| 203 A_STATUS wmi_set_access_params_cmd(struct wmi_t *wmip, A_UINT16 txop, |
| 204 A_UINT8 eCWmin, A_UINT8 eCWmax, |
| 205 A_UINT8 aifsn); |
| 206 A_STATUS wmi_set_retry_limits_cmd(struct wmi_t *wmip, A_UINT8 frameType, |
| 207 A_UINT8 trafficClass, A_UINT8 maxRetries, |
| 208 A_UINT8 enableNotify); |
| 209 |
| 210 void wmi_get_current_bssid(struct wmi_t *wmip, A_UINT8 *bssid); |
| 211 |
| 212 A_STATUS wmi_get_roam_tbl_cmd(struct wmi_t *wmip); |
| 213 A_STATUS wmi_get_roam_data_cmd(struct wmi_t *wmip, A_UINT8 roamDataType); |
| 214 A_STATUS wmi_set_roam_ctrl_cmd(struct wmi_t *wmip, WMI_SET_ROAM_CTRL_CMD *p, |
| 215 A_UINT8 size); |
| 216 A_STATUS wmi_set_powersave_timers_cmd(struct wmi_t *wmip, |
| 217 WMI_POWERSAVE_TIMERS_POLICY_CMD *pCmd, |
| 218 A_UINT8 size); |
| 219 |
| 220 A_STATUS wmi_set_opt_mode_cmd(struct wmi_t *wmip, A_UINT8 optMode); |
| 221 A_STATUS wmi_opt_tx_frame_cmd(struct wmi_t *wmip, |
| 222 A_UINT8 frmType, |
| 223 A_UINT8 *dstMacAddr, |
| 224 A_UINT8 *bssid, |
| 225 A_UINT16 optIEDataLen, |
| 226 A_UINT8 *optIEData); |
| 227 |
| 228 A_STATUS wmi_set_adhoc_bconIntvl_cmd(struct wmi_t *wmip, A_UINT16 intvl); |
| 229 A_STATUS wmi_set_voice_pkt_size_cmd(struct wmi_t *wmip, A_UINT16 voicePktSize); |
| 230 A_STATUS wmi_set_max_sp_len_cmd(struct wmi_t *wmip, A_UINT8 maxSpLen); |
| 231 A_UINT8 convert_userPriority_to_trafficClass(A_UINT8 userPriority); |
| 232 A_UINT8 wmi_get_power_mode_cmd(struct wmi_t *wmip); |
| 233 A_STATUS wmi_verify_tspec_params(WMI_CREATE_PSTREAM_CMD *pCmd, A_BOOL tspecCompl
iance); |
| 234 |
| 235 #ifdef CONFIG_HOST_TCMD_SUPPORT |
| 236 A_STATUS wmi_test_cmd(struct wmi_t *wmip, A_UINT8 *buf, A_UINT32 len); |
| 237 #endif |
| 238 |
| 239 A_STATUS wmi_set_bt_status_cmd(struct wmi_t *wmip, A_UINT8 streamType, A_UINT8 s
tatus); |
| 240 A_STATUS wmi_set_bt_params_cmd(struct wmi_t *wmip, WMI_SET_BT_PARAMS_CMD* cmd); |
| 241 |
| 242 A_STATUS wmi_set_btcoex_fe_ant_cmd(struct wmi_t *wmip, WMI_SET_BTCOEX_FE_ANT_CMD
* cmd); |
| 243 |
| 244 A_STATUS wmi_set_btcoex_colocated_bt_dev_cmd(struct wmi_t *wmip, |
| 245 WMI_SET_BTCOEX_COLOCATED_BT_DEV_
CMD * cmd); |
| 246 |
| 247 A_STATUS wmi_set_btcoex_btinquiry_page_config_cmd(struct wmi_t *wmip, |
| 248 WMI_SET_BTCOEX_BTINQUIRY_PAGE_CO
NFIG_CMD *cmd); |
| 249 |
| 250 A_STATUS wmi_set_btcoex_sco_config_cmd(struct wmi_t *wmip, |
| 251 WMI_SET_BTCOEX_SCO_CONFIG_CMD * cm
d); |
| 252 |
| 253 A_STATUS wmi_set_btcoex_a2dp_config_cmd(struct wmi_t *wmip, |
| 254 WMI_SET_BTCOEX_A2DP_CONFIG_CMD*
cmd); |
| 255 |
| 256 |
| 257 A_STATUS wmi_set_btcoex_aclcoex_config_cmd(struct wmi_t *wmip, WMI_SET_BTCOEX_AC
LCOEX_CONFIG_CMD* cmd); |
| 258 |
| 259 A_STATUS wmi_set_btcoex_debug_cmd(struct wmi_t *wmip, WMI_SET_BTCOEX_DEBUG_CMD *
cmd); |
| 260 |
| 261 A_STATUS wmi_set_btcoex_bt_operating_status_cmd(struct wmi_t * wmip, |
| 262 WMI_SET_BTCOEX_BT_OPERAT
ING_STATUS_CMD * cmd); |
| 263 |
| 264 A_STATUS wmi_get_btcoex_config_cmd(struct wmi_t * wmip, WMI_GET_BTCOEX_CONFIG_CM
D * cmd); |
| 265 |
| 266 A_STATUS wmi_get_btcoex_stats_cmd(struct wmi_t * wmip); |
| 267 |
| 268 /* |
| 269 * This function is used to configure the fix rates mask to the target. |
| 270 */ |
| 271 A_STATUS wmi_set_fixrates_cmd(struct wmi_t *wmip, A_UINT32 fixRatesMask); |
| 272 A_STATUS wmi_get_ratemask_cmd(struct wmi_t *wmip); |
| 273 |
| 274 A_STATUS wmi_set_authmode_cmd(struct wmi_t *wmip, A_UINT8 mode); |
| 275 |
| 276 A_STATUS wmi_set_reassocmode_cmd(struct wmi_t *wmip, A_UINT8 mode); |
| 277 |
| 278 A_STATUS wmi_set_qos_supp_cmd(struct wmi_t *wmip,A_UINT8 status); |
| 279 A_STATUS wmi_set_wmm_cmd(struct wmi_t *wmip, WMI_WMM_STATUS status); |
| 280 A_STATUS wmi_set_wmm_txop(struct wmi_t *wmip, WMI_TXOP_CFG txEnable); |
| 281 A_STATUS wmi_set_country(struct wmi_t *wmip, A_UCHAR *countryCode); |
| 282 |
| 283 A_STATUS wmi_get_keepalive_configured(struct wmi_t *wmip); |
| 284 A_UINT8 wmi_get_keepalive_cmd(struct wmi_t *wmip); |
| 285 A_STATUS wmi_set_keepalive_cmd(struct wmi_t *wmip, A_UINT8 keepaliveInterval); |
| 286 |
| 287 A_STATUS wmi_set_appie_cmd(struct wmi_t *wmip, A_UINT8 mgmtFrmType, |
| 288 A_UINT8 ieLen,A_UINT8 *ieInfo); |
| 289 |
| 290 A_STATUS wmi_set_halparam_cmd(struct wmi_t *wmip, A_UINT8 *cmd, A_UINT16 dataLen
); |
| 291 |
| 292 A_INT32 wmi_get_rate(A_INT8 rateindex); |
| 293 |
| 294 A_STATUS wmi_set_ip_cmd(struct wmi_t *wmip, WMI_SET_IP_CMD *cmd); |
| 295 |
| 296 /*Wake on Wireless WMI commands*/ |
| 297 A_STATUS wmi_set_host_sleep_mode_cmd(struct wmi_t *wmip, WMI_SET_HOST_SLEEP_MODE
_CMD *cmd); |
| 298 A_STATUS wmi_set_wow_mode_cmd(struct wmi_t *wmip, WMI_SET_WOW_MODE_CMD *cmd); |
| 299 A_STATUS wmi_get_wow_list_cmd(struct wmi_t *wmip, WMI_GET_WOW_LIST_CMD *cmd); |
| 300 A_STATUS wmi_add_wow_pattern_cmd(struct wmi_t *wmip, |
| 301 WMI_ADD_WOW_PATTERN_CMD *cmd, A_UINT8* pattern,
A_UINT8* mask, A_UINT8 pattern_size); |
| 302 A_STATUS wmi_del_wow_pattern_cmd(struct wmi_t *wmip, |
| 303 WMI_DEL_WOW_PATTERN_CMD *cmd); |
| 304 A_STATUS wmi_set_wsc_status_cmd(struct wmi_t *wmip, A_UINT32 status); |
| 305 |
| 306 A_STATUS |
| 307 wmi_set_params_cmd(struct wmi_t *wmip, A_UINT32 opcode, A_UINT32 length, A_CHAR*
buffer); |
| 308 |
| 309 A_STATUS |
| 310 wmi_set_mcast_filter_cmd(struct wmi_t *wmip, A_UINT8 dot1, A_UINT8 dot2, A_UINT8
dot3, A_UINT8 dot4); |
| 311 |
| 312 A_STATUS |
| 313 wmi_del_mcast_filter_cmd(struct wmi_t *wmip, A_UINT8 dot1, A_UINT8 dot2, A_UINT8
dot3, A_UINT8 dot4); |
| 314 |
| 315 A_STATUS |
| 316 wmi_mcast_filter_cmd(struct wmi_t *wmip, A_UINT8 enable); |
| 317 |
| 318 bss_t * |
| 319 wmi_find_Ssidnode (struct wmi_t *wmip, A_UCHAR *pSsid, |
| 320 A_UINT32 ssidLength, A_BOOL bIsWPA2, A_BOOL bMatchSSID); |
| 321 |
| 322 |
| 323 void |
| 324 wmi_node_return (struct wmi_t *wmip, bss_t *bss); |
| 325 |
| 326 void |
| 327 wmi_set_nodeage(struct wmi_t *wmip, A_UINT32 nodeAge); |
| 328 |
| 329 #if defined(CONFIG_TARGET_PROFILE_SUPPORT) |
| 330 A_STATUS wmi_prof_cfg_cmd(struct wmi_t *wmip, A_UINT32 period, A_UINT32 nbins); |
| 331 A_STATUS wmi_prof_addr_set_cmd(struct wmi_t *wmip, A_UINT32 addr); |
| 332 A_STATUS wmi_prof_start_cmd(struct wmi_t *wmip); |
| 333 A_STATUS wmi_prof_stop_cmd(struct wmi_t *wmip); |
| 334 A_STATUS wmi_prof_count_get_cmd(struct wmi_t *wmip); |
| 335 #endif /* CONFIG_TARGET_PROFILE_SUPPORT */ |
| 336 #ifdef OS_ROAM_MANAGEMENT |
| 337 void wmi_scan_indication (struct wmi_t *wmip); |
| 338 #endif |
| 339 |
| 340 A_STATUS |
| 341 wmi_set_target_event_report_cmd(struct wmi_t *wmip, WMI_SET_TARGET_EVENT_REPORT_
CMD* cmd); |
| 342 |
| 343 bss_t *wmi_rm_current_bss (struct wmi_t *wmip, A_UINT8 *id); |
| 344 A_STATUS wmi_add_current_bss (struct wmi_t *wmip, A_UINT8 *id, bss_t *bss); |
| 345 |
| 346 |
| 347 /* |
| 348 * AP mode |
| 349 */ |
| 350 A_STATUS |
| 351 wmi_ap_profile_commit(struct wmi_t *wmip, WMI_CONNECT_CMD *p); |
| 352 |
| 353 A_STATUS |
| 354 wmi_ap_set_hidden_ssid(struct wmi_t *wmip, A_UINT8 hidden_ssid); |
| 355 |
| 356 A_STATUS |
| 357 wmi_ap_set_num_sta(struct wmi_t *wmip, A_UINT8 num_sta); |
| 358 |
| 359 A_STATUS |
| 360 wmi_ap_set_acl_policy(struct wmi_t *wmip, A_UINT8 policy); |
| 361 |
| 362 A_STATUS |
| 363 wmi_ap_acl_mac_list(struct wmi_t *wmip, WMI_AP_ACL_MAC_CMD *a); |
| 364 |
| 365 A_UINT8 |
| 366 acl_add_del_mac(WMI_AP_ACL *a, WMI_AP_ACL_MAC_CMD *acl); |
| 367 |
| 368 A_STATUS |
| 369 wmi_ap_set_mlme(struct wmi_t *wmip, A_UINT8 cmd, A_UINT8 *mac, A_UINT16 reason); |
| 370 |
| 371 A_STATUS |
| 372 wmi_set_pvb_cmd(struct wmi_t *wmip, A_UINT16 aid, A_BOOL flag); |
| 373 |
| 374 A_STATUS |
| 375 wmi_ap_conn_inact_time(struct wmi_t *wmip, A_UINT32 period); |
| 376 |
| 377 A_STATUS |
| 378 wmi_ap_bgscan_time(struct wmi_t *wmip, A_UINT32 period, A_UINT32 dwell); |
| 379 |
| 380 A_STATUS |
| 381 wmi_ap_set_dtim(struct wmi_t *wmip, A_UINT8 dtim); |
| 382 |
| 383 A_STATUS |
| 384 wmi_ap_set_rateset(struct wmi_t *wmip, A_UINT8 rateset); |
| 385 |
| 386 A_STATUS |
| 387 wmi_set_ht_cap_cmd(struct wmi_t *wmip, A_UINT8 chan_width_40M_supported, |
| 388 A_UINT8 short_GI_20MHz, A_UINT8 short_GI_40MHz, |
| 389 A_UINT8 intolerance_40MHz, A_UINT8 max_ampdu_len_exp); |
| 390 |
| 391 A_STATUS |
| 392 wmi_set_ht_op_cmd(struct wmi_t *wmip, A_UINT8 sta_chan_width); |
| 393 |
| 394 A_STATUS |
| 395 wmi_send_hci_cmd(struct wmi_t *wmip, A_UINT8 *buf, A_UINT16 sz); |
| 396 |
| 397 A_STATUS |
| 398 wmi_set_tx_select_rates_cmd(struct wmi_t *wmip, A_UINT32 *pMaskArray); |
| 399 |
| 400 A_STATUS |
| 401 wmi_setup_aggr_cmd(struct wmi_t *wmip, A_UINT8 tid); |
| 402 |
| 403 A_STATUS |
| 404 wmi_delete_aggr_cmd(struct wmi_t *wmip, A_UINT8 tid, A_BOOL uplink); |
| 405 |
| 406 A_STATUS |
| 407 wmi_allow_aggr_cmd(struct wmi_t *wmip, A_UINT16 tx_tidmask, A_UINT16 rx_tidmask)
; |
| 408 |
| 409 A_STATUS |
| 410 wmi_set_rx_frame_format_cmd(struct wmi_t *wmip, A_UINT8 rxMetaVersion, A_BOOL rx
Dot11Hdr, A_BOOL defragOnHost); |
| 411 |
| 412 A_STATUS |
| 413 wmi_set_thin_mode_cmd(struct wmi_t *wmip, A_BOOL bThinMode); |
| 414 |
| 415 A_STATUS |
| 416 wmi_set_wlan_conn_precedence_cmd(struct wmi_t *wmip, BT_WLAN_CONN_PRECEDENCE pre
cedence); |
| 417 |
| 418 A_STATUS |
| 419 wmi_set_pmk_cmd(struct wmi_t *wmip, A_UINT8 *pmk); |
| 420 |
| 421 #ifdef __cplusplus |
| 422 } |
| 423 #endif |
| 424 |
| 425 #endif /* _WMI_API_H_ */ |
OLD | NEW |