1*4882a593Smuzhiyun /** @file mlan_11ac.h 2*4882a593Smuzhiyun * 3*4882a593Smuzhiyun * @brief This file contains the functions for station ioctl. 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * 6*4882a593Smuzhiyun * Copyright 2011-2021 NXP 7*4882a593Smuzhiyun * 8*4882a593Smuzhiyun * This software file (the File) is distributed by NXP 9*4882a593Smuzhiyun * under the terms of the GNU General Public License Version 2, June 1991 10*4882a593Smuzhiyun * (the License). You may use, redistribute and/or modify the File in 11*4882a593Smuzhiyun * accordance with the terms and conditions of the License, a copy of which 12*4882a593Smuzhiyun * is available by writing to the Free Software Foundation, Inc., 13*4882a593Smuzhiyun * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or on the 14*4882a593Smuzhiyun * worldwide web at http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt. 15*4882a593Smuzhiyun * 16*4882a593Smuzhiyun * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE 17*4882a593Smuzhiyun * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE 18*4882a593Smuzhiyun * ARE EXPRESSLY DISCLAIMED. The License provides additional details about 19*4882a593Smuzhiyun * this warranty disclaimer. 20*4882a593Smuzhiyun * 21*4882a593Smuzhiyun */ 22*4882a593Smuzhiyun 23*4882a593Smuzhiyun #ifndef _MLAN_11AC_H_ 24*4882a593Smuzhiyun #define _MLAN_11AC_H_ 25*4882a593Smuzhiyun 26*4882a593Smuzhiyun #include "mlan_11n_aggr.h" 27*4882a593Smuzhiyun #include "mlan_11n_rxreorder.h" 28*4882a593Smuzhiyun #include "mlan_wmm.h" 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun void wlan_show_dot11acdevcap(pmlan_adapter pmadapter, t_u32 cap); 31*4882a593Smuzhiyun void wlan_show_dot11acmcssupport(pmlan_adapter pmadapter, t_u32 support); 32*4882a593Smuzhiyun t_u16 wlan_convert_mcsmap_to_maxrate(mlan_private *priv, t_u16 bands, 33*4882a593Smuzhiyun t_u16 mcs_map); 34*4882a593Smuzhiyun void wlan_fill_vht_cap_tlv(mlan_private *priv, MrvlIETypes_VHTCap_t *pvht_cap, 35*4882a593Smuzhiyun t_u16 bands, t_u8 flag, t_u8 bw_80p80); 36*4882a593Smuzhiyun void wlan_fill_vht_cap_ie(mlan_private *priv, IEEEtypes_VHTCap_t *pvht_cap, 37*4882a593Smuzhiyun t_u16 bands); 38*4882a593Smuzhiyun void wlan_fill_tdls_vht_oprat_ie(mlan_private *priv, 39*4882a593Smuzhiyun IEEEtypes_VHTOprat_t *vht_oprat, 40*4882a593Smuzhiyun sta_node *sta_ptr); 41*4882a593Smuzhiyun t_u8 wlan_is_ap_in_11ac_mode(mlan_private *priv); 42*4882a593Smuzhiyun int wlan_cmd_append_11ac_tlv(mlan_private *pmpriv, BSSDescriptor_t *pbss_desc, 43*4882a593Smuzhiyun t_u8 **ppbuffer); 44*4882a593Smuzhiyun mlan_status wlan_11ac_cfg_ioctl(pmlan_adapter pmadapter, 45*4882a593Smuzhiyun pmlan_ioctl_req pioctl_req); 46*4882a593Smuzhiyun void wlan_update_11ac_cap(mlan_private *pmpriv); 47*4882a593Smuzhiyun t_u8 wlan_11ac_bandconfig_allowed(mlan_private *pmpriv, t_u16 bss_band); 48*4882a593Smuzhiyun t_u8 wlan_is_80_80_support(mlan_private *pmpriv, BSSDescriptor_t *pbss_desc); 49*4882a593Smuzhiyun 50*4882a593Smuzhiyun mlan_status wlan_cmd_11ac_cfg(pmlan_private pmpriv, HostCmd_DS_COMMAND *cmd, 51*4882a593Smuzhiyun t_u16 cmd_action, t_void *pdata_buf); 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun mlan_status wlan_ret_11ac_cfg(pmlan_private pmpriv, HostCmd_DS_COMMAND *resp, 54*4882a593Smuzhiyun mlan_ioctl_req *pioctl_buf); 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun #endif /* _MLAN_11AC_H_ */ 57