1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- //------------------------------------------------------------------------------
- // <copyright file="wmi_host.h" company="Atheros">
- // Copyright (c) 2004-2008 Atheros Corporation. All rights reserved.
- //
- // This program is free software; you can redistribute it and/or modify
- // it under the terms of the GNU General Public License version 2 as
- // published by the Free Software Foundation;
- //
- // Software distributed under the License is distributed on an "AS
- // IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
- // implied. See the License for the specific language governing
- // rights and limitations under the License.
- //
- //
- //------------------------------------------------------------------------------
- //==============================================================================
- // This file contains local definitios for the wmi host module.
- //
- // Author(s): ="Atheros"
- //==============================================================================
- #ifndef _WMI_HOST_H_
- #define _WMI_HOST_H_
- #include "roaming.h"
- #ifdef __cplusplus
- extern "C" {
- #endif
- struct wmi_stats {
- A_UINT32 cmd_len_err;
- A_UINT32 cmd_id_err;
- };
- #define SSID_IE_LEN_INDEX 13
- /* Host side link management data structures */
- #define SIGNAL_QUALITY_THRESHOLD_LEVELS 6
- #define SIGNAL_QUALITY_UPPER_THRESHOLD_LEVELS SIGNAL_QUALITY_THRESHOLD_LEVELS
- #define SIGNAL_QUALITY_LOWER_THRESHOLD_LEVELS SIGNAL_QUALITY_THRESHOLD_LEVELS
- typedef struct sq_threshold_params_s {
- A_INT16 upper_threshold[SIGNAL_QUALITY_UPPER_THRESHOLD_LEVELS];
- A_INT16 lower_threshold[SIGNAL_QUALITY_LOWER_THRESHOLD_LEVELS];
- A_UINT32 upper_threshold_valid_count;
- A_UINT32 lower_threshold_valid_count;
- A_UINT32 polling_interval;
- A_UINT8 weight;
- A_UINT8 last_rssi; //normally you would expect this to be bss specific but we keep only one instance because its only valid when the device is in a connected state. Not sure if it belongs to host or target.
- A_UINT8 last_rssi_poll_event; //Not sure if it belongs to host or target
- } SQ_THRESHOLD_PARAMS;
- struct wmi_t {
- A_BOOL wmi_ready;
- A_BOOL wmi_numQoSStream;
- A_UINT16 wmi_streamExistsForAC[WMM_NUM_AC];
- A_UINT8 wmi_fatPipeExists;
- void *wmi_devt;
- struct wmi_stats wmi_stats;
- struct ieee80211_node_table wmi_scan_table;
- A_UINT8 wmi_bssid[ATH_MAC_LEN];
- A_UINT8 wmi_powerMode;
- A_UINT8 wmi_phyMode;
- A_UINT8 wmi_keepaliveInterval;
- A_MUTEX_T wmi_lock;
- HTC_ENDPOINT_ID wmi_endpoint_id;
- SQ_THRESHOLD_PARAMS wmi_SqThresholdParams[SIGNAL_QUALITY_METRICS_NUM_MAX];
- CRYPTO_TYPE wmi_pair_crypto_type;
- CRYPTO_TYPE wmi_grp_crypto_type;
- A_BOOL wmi_is_wmm_enabled;
- A_UINT8 wmi_traffic_class;
- };
- #define LOCK_WMI(w) A_MUTEX_LOCK(&(w)->wmi_lock);
- #define UNLOCK_WMI(w) A_MUTEX_UNLOCK(&(w)->wmi_lock);
- #ifdef __cplusplus
- }
- #endif
- #endif /* _WMI_HOST_H_ */
|