1277b024eSKalle Valo /*
2277b024eSKalle Valo  * Marvell Wireless LAN device driver: 802.11ac
3277b024eSKalle Valo  *
4277b024eSKalle Valo  * Copyright (C) 2013-2014, Marvell International Ltd.
5277b024eSKalle Valo  *
6277b024eSKalle Valo  * This software file (the "File") is distributed by Marvell International
7277b024eSKalle Valo  * Ltd. under the terms of the GNU General Public License Version 2, June 1991
8277b024eSKalle Valo  * (the "License").  You may use, redistribute and/or modify this File in
9277b024eSKalle Valo  * accordance with the terms and conditions of the License, a copy of which
10277b024eSKalle Valo  * is available by writing to the Free Software Foundation, Inc.,
11277b024eSKalle Valo  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or on the
12277b024eSKalle Valo  * worldwide web at http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
13277b024eSKalle Valo  *
14277b024eSKalle Valo  * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE
15277b024eSKalle Valo  * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE
16277b024eSKalle Valo  * ARE EXPRESSLY DISCLAIMED.  The License provides additional details about
17277b024eSKalle Valo  * this warranty disclaimer.
18277b024eSKalle Valo  */
19277b024eSKalle Valo 
20277b024eSKalle Valo #ifndef _MWIFIEX_11AC_H_
21277b024eSKalle Valo #define _MWIFIEX_11AC_H_
22277b024eSKalle Valo 
23277b024eSKalle Valo #define VHT_CFG_2GHZ BIT(0)
24277b024eSKalle Valo #define VHT_CFG_5GHZ BIT(1)
25277b024eSKalle Valo 
26277b024eSKalle Valo enum vht_cfg_misc_config {
27277b024eSKalle Valo 	VHT_CAP_TX_OPERATION = 1,
28277b024eSKalle Valo 	VHT_CAP_ASSOCIATION,
29277b024eSKalle Valo 	VHT_CAP_UAP_ONLY
30277b024eSKalle Valo };
31277b024eSKalle Valo 
32277b024eSKalle Valo #define DEFAULT_VHT_MCS_SET 0xfffa
33277b024eSKalle Valo #define DISABLE_VHT_MCS_SET 0xffff
34277b024eSKalle Valo 
35277b024eSKalle Valo #define VHT_BW_80_160_80P80 BIT(2)
36277b024eSKalle Valo 
37277b024eSKalle Valo int mwifiex_cmd_append_11ac_tlv(struct mwifiex_private *priv,
38277b024eSKalle Valo 				struct mwifiex_bssdescriptor *bss_desc,
39277b024eSKalle Valo 				u8 **buffer);
40277b024eSKalle Valo int mwifiex_cmd_11ac_cfg(struct mwifiex_private *priv,
41277b024eSKalle Valo 			 struct host_cmd_ds_command *cmd, u16 cmd_action,
42277b024eSKalle Valo 			 struct mwifiex_11ac_vht_cfg *cfg);
43277b024eSKalle Valo void mwifiex_fill_vht_cap_tlv(struct mwifiex_private *priv,
44277b024eSKalle Valo 			      struct ieee80211_vht_cap *vht_cap, u8 bands);
45277b024eSKalle Valo #endif /* _MWIFIEX_11AC_H_ */
46