[s3c24xx] bump to 2.6.30-rc6
[openwrt/svn-archive/archive.git] / target / linux / s3c24xx / files-2.6.30 / drivers / ar6000 / wmi / wmi_host.h
1 #ifndef _WMI_HOST_H_
2 #define _WMI_HOST_H_
3 /*
4 * Copyright (c) 2004-2006 Atheros Communications Inc.
5 * All rights reserved.
6 *
7 * This file contains local definitios for the wmi host module.
8 *
9 * $Id: //depot/sw/releases/olca2.0-GPL/host/wmi/wmi_host.h#1 $
10 *
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License version 2 as
14 * published by the Free Software Foundation;
15 *
16 * Software distributed under the License is distributed on an "AS
17 * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
18 * implied. See the License for the specific language governing
19 * rights and limitations under the License.
20 *
21 *
22 *
23 */
24
25 #ifdef __cplusplus
26 extern "C" {
27 #endif
28
29 struct wmi_stats {
30 A_UINT32 cmd_len_err;
31 A_UINT32 cmd_id_err;
32 };
33
34 struct wmi_t {
35 A_BOOL wmi_ready;
36 A_BOOL wmi_numQoSStream;
37 A_UINT8 wmi_wmiStream2AcMapping[WMI_PRI_MAX_COUNT];
38 WMI_PRI_STREAM_ID wmi_ac2WmiStreamMapping[WMM_NUM_AC];
39 A_UINT16 wmi_streamExistsForAC[WMM_NUM_AC];
40 A_UINT8 wmi_fatPipeExists;
41 void *wmi_devt;
42 struct wmi_stats wmi_stats;
43 struct ieee80211_node_table wmi_scan_table;
44 A_UINT8 wmi_bssid[ATH_MAC_LEN];
45 A_UINT8 wmi_powerMode;
46 A_UINT8 wmi_phyMode;
47 A_UINT8 wmi_keepaliveInterval;
48 A_MUTEX_T wmi_lock;
49 };
50
51 #define WMI_INIT_WMISTREAM_AC_MAP(w) \
52 { (w)->wmi_wmiStream2AcMapping[WMI_BEST_EFFORT_PRI] = WMM_AC_BE; \
53 (w)->wmi_wmiStream2AcMapping[WMI_LOW_PRI] = WMM_AC_BK; \
54 (w)->wmi_wmiStream2AcMapping[WMI_HIGH_PRI] = WMM_AC_VI; \
55 (w)->wmi_wmiStream2AcMapping[WMI_HIGHEST_PRI] = WMM_AC_VO; \
56 (w)->wmi_ac2WmiStreamMapping[WMM_AC_BE] = WMI_BEST_EFFORT_PRI; \
57 (w)->wmi_ac2WmiStreamMapping[WMM_AC_BK] = WMI_LOW_PRI; \
58 (w)->wmi_ac2WmiStreamMapping[WMM_AC_VI] = WMI_HIGH_PRI; \
59 (w)->wmi_ac2WmiStreamMapping[WMM_AC_VO] = WMI_HIGHEST_PRI; }
60
61 #define WMI_WMISTREAM_ACCESSCATEGORY(w,s) (w)->wmi_wmiStream2AcMapping[s]
62 #define WMI_ACCESSCATEGORY_WMISTREAM(w,ac) (w)->wmi_ac2WmiStreamMapping[ac]
63
64 #define LOCK_WMI(w) A_MUTEX_LOCK(&(w)->wmi_lock);
65 #define UNLOCK_WMI(w) A_MUTEX_UNLOCK(&(w)->wmi_lock);
66
67 #ifdef __cplusplus
68 }
69 #endif
70
71 #endif /* _WMI_HOST_H_ */