Strip CR+LF line endings; fix missing final LF
This commit is contained in:
parent
305d682ae8
commit
a7e0de2f2f
5032
core/rtw_chplan.c
5032
core/rtw_chplan.c
File diff suppressed because it is too large
Load Diff
@ -1,95 +1,95 @@
|
|||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* Copyright(c) 2007 - 2018 Realtek Corporation.
|
* Copyright(c) 2007 - 2018 Realtek Corporation.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
* under the terms of version 2 of the GNU General Public License as
|
* under the terms of version 2 of the GNU General Public License as
|
||||||
* published by the Free Software Foundation.
|
* published by the Free Software Foundation.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||||
* more details.
|
* more details.
|
||||||
*
|
*
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
#ifndef __RTW_CHPLAN_H__
|
#ifndef __RTW_CHPLAN_H__
|
||||||
#define __RTW_CHPLAN_H__
|
#define __RTW_CHPLAN_H__
|
||||||
|
|
||||||
#define RTW_CHPLAN_UNSPECIFIED 0xFF
|
#define RTW_CHPLAN_UNSPECIFIED 0xFF
|
||||||
|
|
||||||
u8 rtw_chplan_get_default_regd(u8 id);
|
u8 rtw_chplan_get_default_regd(u8 id);
|
||||||
bool rtw_chplan_is_empty(u8 id);
|
bool rtw_chplan_is_empty(u8 id);
|
||||||
bool rtw_is_channel_plan_valid(u8 id);
|
bool rtw_is_channel_plan_valid(u8 id);
|
||||||
bool rtw_regsty_is_excl_chs(struct registry_priv *regsty, u8 ch);
|
bool rtw_regsty_is_excl_chs(struct registry_priv *regsty, u8 ch);
|
||||||
|
|
||||||
enum regd_src_t {
|
enum regd_src_t {
|
||||||
REGD_SRC_RTK_PRIV = 0, /* Regulatory settings from Realtek framework (Realtek defined or customized) */
|
REGD_SRC_RTK_PRIV = 0, /* Regulatory settings from Realtek framework (Realtek defined or customized) */
|
||||||
REGD_SRC_OS = 1, /* Regulatory settings from OS */
|
REGD_SRC_OS = 1, /* Regulatory settings from OS */
|
||||||
REGD_SRC_NUM,
|
REGD_SRC_NUM,
|
||||||
};
|
};
|
||||||
|
|
||||||
#define regd_src_is_valid(src) ((src) < REGD_SRC_NUM)
|
#define regd_src_is_valid(src) ((src) < REGD_SRC_NUM)
|
||||||
|
|
||||||
extern const char *_regd_src_str[];
|
extern const char *_regd_src_str[];
|
||||||
#define regd_src_str(src) ((src) >= REGD_SRC_NUM ? _regd_src_str[REGD_SRC_NUM] : _regd_src_str[src])
|
#define regd_src_str(src) ((src) >= REGD_SRC_NUM ? _regd_src_str[REGD_SRC_NUM] : _regd_src_str[src])
|
||||||
|
|
||||||
struct _RT_CHANNEL_INFO;
|
struct _RT_CHANNEL_INFO;
|
||||||
u8 init_channel_set(_adapter *adapter);
|
u8 init_channel_set(_adapter *adapter);
|
||||||
bool rtw_chset_is_dfs_range(struct _RT_CHANNEL_INFO *chset, u32 hi, u32 lo);
|
bool rtw_chset_is_dfs_range(struct _RT_CHANNEL_INFO *chset, u32 hi, u32 lo);
|
||||||
bool rtw_chset_is_dfs_ch(struct _RT_CHANNEL_INFO *chset, u8 ch);
|
bool rtw_chset_is_dfs_ch(struct _RT_CHANNEL_INFO *chset, u8 ch);
|
||||||
bool rtw_chset_is_dfs_chbw(struct _RT_CHANNEL_INFO *chset, u8 ch, u8 bw, u8 offset);
|
bool rtw_chset_is_dfs_chbw(struct _RT_CHANNEL_INFO *chset, u8 ch, u8 bw, u8 offset);
|
||||||
u8 rtw_process_beacon_hint(_adapter *adapter, WLAN_BSSID_EX *bss);
|
u8 rtw_process_beacon_hint(_adapter *adapter, WLAN_BSSID_EX *bss);
|
||||||
|
|
||||||
#define IS_ALPHA2_NO_SPECIFIED(_alpha2) ((*((u16 *)(_alpha2))) == 0xFFFF)
|
#define IS_ALPHA2_NO_SPECIFIED(_alpha2) ((*((u16 *)(_alpha2))) == 0xFFFF)
|
||||||
#define IS_ALPHA2_WORLDWIDE(_alpha2) (strncmp(_alpha2, "00", 2) == 0)
|
#define IS_ALPHA2_WORLDWIDE(_alpha2) (strncmp(_alpha2, "00", 2) == 0)
|
||||||
|
|
||||||
#define RTW_MODULE_RTL8821AE_HMC_M2 BIT0 /* RTL8821AE(HMC + M.2) */
|
#define RTW_MODULE_RTL8821AE_HMC_M2 BIT0 /* RTL8821AE(HMC + M.2) */
|
||||||
#define RTW_MODULE_RTL8821AU BIT1 /* RTL8821AU */
|
#define RTW_MODULE_RTL8821AU BIT1 /* RTL8821AU */
|
||||||
#define RTW_MODULE_RTL8812AENF_NGFF BIT2 /* RTL8812AENF(8812AE+8761)_NGFF */
|
#define RTW_MODULE_RTL8812AENF_NGFF BIT2 /* RTL8812AENF(8812AE+8761)_NGFF */
|
||||||
#define RTW_MODULE_RTL8812AEBT_HMC BIT3 /* RTL8812AEBT(8812AE+8761)_HMC */
|
#define RTW_MODULE_RTL8812AEBT_HMC BIT3 /* RTL8812AEBT(8812AE+8761)_HMC */
|
||||||
#define RTW_MODULE_RTL8188EE_HMC_M2 BIT4 /* RTL8188EE(HMC + M.2) */
|
#define RTW_MODULE_RTL8188EE_HMC_M2 BIT4 /* RTL8188EE(HMC + M.2) */
|
||||||
#define RTW_MODULE_RTL8723BE_HMC_M2 BIT5 /* RTL8723BE(HMC + M.2) */
|
#define RTW_MODULE_RTL8723BE_HMC_M2 BIT5 /* RTL8723BE(HMC + M.2) */
|
||||||
#define RTW_MODULE_RTL8723BS_NGFF1216 BIT6 /* RTL8723BS(NGFF1216) */
|
#define RTW_MODULE_RTL8723BS_NGFF1216 BIT6 /* RTL8723BS(NGFF1216) */
|
||||||
#define RTW_MODULE_RTL8192EEBT_HMC_M2 BIT7 /* RTL8192EEBT(8192EE+8761AU)_(HMC + M.2) */
|
#define RTW_MODULE_RTL8192EEBT_HMC_M2 BIT7 /* RTL8192EEBT(8192EE+8761AU)_(HMC + M.2) */
|
||||||
#define RTW_MODULE_RTL8723DE_NGFF1630 BIT8 /* RTL8723DE(NGFF1630) */
|
#define RTW_MODULE_RTL8723DE_NGFF1630 BIT8 /* RTL8723DE(NGFF1630) */
|
||||||
#define RTW_MODULE_RTL8822BE BIT9 /* RTL8822BE */
|
#define RTW_MODULE_RTL8822BE BIT9 /* RTL8822BE */
|
||||||
#define RTW_MODULE_RTL8821CE BIT10 /* RTL8821CE */
|
#define RTW_MODULE_RTL8821CE BIT10 /* RTL8821CE */
|
||||||
#define RTW_MODULE_RTL8822CE BIT11 /* RTL8822CE */
|
#define RTW_MODULE_RTL8822CE BIT11 /* RTL8822CE */
|
||||||
|
|
||||||
enum rtw_dfs_regd {
|
enum rtw_dfs_regd {
|
||||||
RTW_DFS_REGD_NONE = 0,
|
RTW_DFS_REGD_NONE = 0,
|
||||||
RTW_DFS_REGD_FCC = 1,
|
RTW_DFS_REGD_FCC = 1,
|
||||||
RTW_DFS_REGD_MKK = 2,
|
RTW_DFS_REGD_MKK = 2,
|
||||||
RTW_DFS_REGD_ETSI = 3,
|
RTW_DFS_REGD_ETSI = 3,
|
||||||
RTW_DFS_REGD_NUM,
|
RTW_DFS_REGD_NUM,
|
||||||
RTW_DFS_REGD_AUTO = 0xFF, /* follow channel plan */
|
RTW_DFS_REGD_AUTO = 0xFF, /* follow channel plan */
|
||||||
};
|
};
|
||||||
|
|
||||||
extern const char *_rtw_dfs_regd_str[];
|
extern const char *_rtw_dfs_regd_str[];
|
||||||
#define rtw_dfs_regd_str(region) (((region) >= RTW_DFS_REGD_NUM) ? _rtw_dfs_regd_str[RTW_DFS_REGD_NONE] : _rtw_dfs_regd_str[(region)])
|
#define rtw_dfs_regd_str(region) (((region) >= RTW_DFS_REGD_NUM) ? _rtw_dfs_regd_str[RTW_DFS_REGD_NONE] : _rtw_dfs_regd_str[(region)])
|
||||||
|
|
||||||
struct country_chplan {
|
struct country_chplan {
|
||||||
char alpha2[2]; /* "00" means worldwide */
|
char alpha2[2]; /* "00" means worldwide */
|
||||||
u8 chplan;
|
u8 chplan;
|
||||||
#ifdef CONFIG_80211AC_VHT
|
#ifdef CONFIG_80211AC_VHT
|
||||||
u8 en_11ac;
|
u8 en_11ac;
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef CONFIG_80211AC_VHT
|
#ifdef CONFIG_80211AC_VHT
|
||||||
#define COUNTRY_CHPLAN_EN_11AC(_ent) ((_ent)->en_11ac)
|
#define COUNTRY_CHPLAN_EN_11AC(_ent) ((_ent)->en_11ac)
|
||||||
#else
|
#else
|
||||||
#define COUNTRY_CHPLAN_EN_11AC(_ent) 0
|
#define COUNTRY_CHPLAN_EN_11AC(_ent) 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
const struct country_chplan *rtw_get_chplan_from_country(const char *country_code);
|
const struct country_chplan *rtw_get_chplan_from_country(const char *country_code);
|
||||||
|
|
||||||
void dump_country_chplan(void *sel, const struct country_chplan *ent);
|
void dump_country_chplan(void *sel, const struct country_chplan *ent);
|
||||||
void dump_country_chplan_map(void *sel);
|
void dump_country_chplan_map(void *sel);
|
||||||
void dump_chplan_id_list(void *sel);
|
void dump_chplan_id_list(void *sel);
|
||||||
#ifdef CONFIG_RTW_DEBUG
|
#ifdef CONFIG_RTW_DEBUG
|
||||||
void dump_chplan_test(void *sel);
|
void dump_chplan_test(void *sel);
|
||||||
#endif
|
#endif
|
||||||
void dump_chplan_ver(void *sel);
|
void dump_chplan_ver(void *sel);
|
||||||
|
|
||||||
#endif /* __RTW_CHPLAN_H__ */
|
#endif /* __RTW_CHPLAN_H__ */
|
||||||
|
|||||||
1182
core/rtw_roch.c
1182
core/rtw_roch.c
File diff suppressed because it is too large
Load Diff
@ -1,41 +1,41 @@
|
|||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* Copyright(c) 2013 Realtek Corporation. All rights reserved.
|
* Copyright(c) 2013 Realtek Corporation. All rights reserved.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
* under the terms of version 2 of the GNU General Public License as
|
* under the terms of version 2 of the GNU General Public License as
|
||||||
* published by the Free Software Foundation.
|
* published by the Free Software Foundation.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||||
* more details.
|
* more details.
|
||||||
*
|
*
|
||||||
* You should have received a copy of the GNU General Public License along with
|
* You should have received a copy of the GNU General Public License along with
|
||||||
* this program; if not, write to the Free Software Foundation, Inc.,
|
* this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
#ifndef __HAL_SDIO_COEX_H__
|
#ifndef __HAL_SDIO_COEX_H__
|
||||||
#define __HAL_SDIO_COEX_H__
|
#define __HAL_SDIO_COEX_H__
|
||||||
|
|
||||||
#include <drv_types.h>
|
#include <drv_types.h>
|
||||||
|
|
||||||
#ifdef CONFIG_SDIO_MULTI_FUNCTION_COEX
|
#ifdef CONFIG_SDIO_MULTI_FUNCTION_COEX
|
||||||
|
|
||||||
enum { /* for sdio multi-func. coex */
|
enum { /* for sdio multi-func. coex */
|
||||||
SDIO_MULTI_WIFI = 0,
|
SDIO_MULTI_WIFI = 0,
|
||||||
SDIO_MULTI_BT,
|
SDIO_MULTI_BT,
|
||||||
SDIO_MULTI_NUM
|
SDIO_MULTI_NUM
|
||||||
};
|
};
|
||||||
|
|
||||||
bool ex_hal_sdio_multi_if_bus_available(PADAPTER adapter);
|
bool ex_hal_sdio_multi_if_bus_available(PADAPTER adapter);
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
#define ex_hal_sdio_multi_if_bus_available(adapter) TRUE
|
#define ex_hal_sdio_multi_if_bus_available(adapter) TRUE
|
||||||
|
|
||||||
#endif /* CONFIG_SDIO_MULTI_FUNCTION_COEX */
|
#endif /* CONFIG_SDIO_MULTI_FUNCTION_COEX */
|
||||||
#endif /* !__HAL_SDIO_COEX_H__ */
|
#endif /* !__HAL_SDIO_COEX_H__ */
|
||||||
|
|
||||||
|
|||||||
286
include/rtw_ap.h
286
include/rtw_ap.h
@ -1,143 +1,143 @@
|
|||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* Copyright(c) 2007 - 2017 Realtek Corporation.
|
* Copyright(c) 2007 - 2017 Realtek Corporation.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
* under the terms of version 2 of the GNU General Public License as
|
* under the terms of version 2 of the GNU General Public License as
|
||||||
* published by the Free Software Foundation.
|
* published by the Free Software Foundation.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||||
* more details.
|
* more details.
|
||||||
*
|
*
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
#ifndef __RTW_AP_H_
|
#ifndef __RTW_AP_H_
|
||||||
#define __RTW_AP_H_
|
#define __RTW_AP_H_
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_AP_MODE
|
#ifdef CONFIG_AP_MODE
|
||||||
|
|
||||||
/* external function */
|
/* external function */
|
||||||
extern void rtw_indicate_sta_assoc_event(_adapter *padapter, struct sta_info *psta);
|
extern void rtw_indicate_sta_assoc_event(_adapter *padapter, struct sta_info *psta);
|
||||||
extern void rtw_indicate_sta_disassoc_event(_adapter *padapter, struct sta_info *psta);
|
extern void rtw_indicate_sta_disassoc_event(_adapter *padapter, struct sta_info *psta);
|
||||||
|
|
||||||
|
|
||||||
void init_mlme_ap_info(_adapter *padapter);
|
void init_mlme_ap_info(_adapter *padapter);
|
||||||
void free_mlme_ap_info(_adapter *padapter);
|
void free_mlme_ap_info(_adapter *padapter);
|
||||||
u8 rtw_set_tim_ie(u8 dtim_cnt, u8 dtim_period
|
u8 rtw_set_tim_ie(u8 dtim_cnt, u8 dtim_period
|
||||||
, const u8 *tim_bmp, u8 tim_bmp_len, u8 *tim_ie);
|
, const u8 *tim_bmp, u8 tim_bmp_len, u8 *tim_ie);
|
||||||
/* void update_BCNTIM(_adapter *padapter); */
|
/* void update_BCNTIM(_adapter *padapter); */
|
||||||
void rtw_add_bcn_ie(_adapter *padapter, WLAN_BSSID_EX *pnetwork, u8 index, u8 *data, u8 len);
|
void rtw_add_bcn_ie(_adapter *padapter, WLAN_BSSID_EX *pnetwork, u8 index, u8 *data, u8 len);
|
||||||
void rtw_remove_bcn_ie(_adapter *padapter, WLAN_BSSID_EX *pnetwork, u8 index);
|
void rtw_remove_bcn_ie(_adapter *padapter, WLAN_BSSID_EX *pnetwork, u8 index);
|
||||||
void _update_beacon(_adapter *padapter, u8 ie_id, u8 *oui, u8 tx, u8 flags, const char *tag);
|
void _update_beacon(_adapter *padapter, u8 ie_id, u8 *oui, u8 tx, u8 flags, const char *tag);
|
||||||
#define update_beacon(adapter, ie_id, oui, tx, flags) _update_beacon((adapter), (ie_id), (oui), (tx), (flags), __func__)
|
#define update_beacon(adapter, ie_id, oui, tx, flags) _update_beacon((adapter), (ie_id), (oui), (tx), (flags), __func__)
|
||||||
/*update_beacon - (flags) can set to normal enqueue (0) and RTW_CMDF_WAIT_ACK enqueue.
|
/*update_beacon - (flags) can set to normal enqueue (0) and RTW_CMDF_WAIT_ACK enqueue.
|
||||||
(flags) = RTW_CMDF_DIRECTLY is not currently implemented, it will do normal enqueue.*/
|
(flags) = RTW_CMDF_DIRECTLY is not currently implemented, it will do normal enqueue.*/
|
||||||
|
|
||||||
void rtw_ap_update_sta_ra_info(_adapter *padapter, struct sta_info *psta);
|
void rtw_ap_update_sta_ra_info(_adapter *padapter, struct sta_info *psta);
|
||||||
|
|
||||||
void expire_timeout_chk(_adapter *padapter);
|
void expire_timeout_chk(_adapter *padapter);
|
||||||
void update_sta_info_apmode(_adapter *padapter, struct sta_info *psta);
|
void update_sta_info_apmode(_adapter *padapter, struct sta_info *psta);
|
||||||
void rtw_start_bss_hdl_after_chbw_decided(_adapter *adapter);
|
void rtw_start_bss_hdl_after_chbw_decided(_adapter *adapter);
|
||||||
void start_bss_network(_adapter *padapter, struct createbss_parm *parm);
|
void start_bss_network(_adapter *padapter, struct createbss_parm *parm);
|
||||||
int rtw_check_beacon_data(_adapter *padapter, u8 *pbuf, int len);
|
int rtw_check_beacon_data(_adapter *padapter, u8 *pbuf, int len);
|
||||||
void rtw_ap_restore_network(_adapter *padapter);
|
void rtw_ap_restore_network(_adapter *padapter);
|
||||||
|
|
||||||
#if CONFIG_RTW_MACADDR_ACL
|
#if CONFIG_RTW_MACADDR_ACL
|
||||||
void rtw_macaddr_acl_init(_adapter *adapter, u8 period);
|
void rtw_macaddr_acl_init(_adapter *adapter, u8 period);
|
||||||
void rtw_macaddr_acl_deinit(_adapter *adapter, u8 period);
|
void rtw_macaddr_acl_deinit(_adapter *adapter, u8 period);
|
||||||
void rtw_macaddr_acl_clear(_adapter *adapter, u8 period);
|
void rtw_macaddr_acl_clear(_adapter *adapter, u8 period);
|
||||||
void rtw_set_macaddr_acl(_adapter *adapter, u8 period, int mode);
|
void rtw_set_macaddr_acl(_adapter *adapter, u8 period, int mode);
|
||||||
int rtw_acl_add_sta(_adapter *adapter, u8 period, const u8 *addr);
|
int rtw_acl_add_sta(_adapter *adapter, u8 period, const u8 *addr);
|
||||||
int rtw_acl_remove_sta(_adapter *adapter, u8 period, const u8 *addr);
|
int rtw_acl_remove_sta(_adapter *adapter, u8 period, const u8 *addr);
|
||||||
#endif /* CONFIG_RTW_MACADDR_ACL */
|
#endif /* CONFIG_RTW_MACADDR_ACL */
|
||||||
|
|
||||||
u8 rtw_ap_set_sta_key(_adapter *adapter, const u8 *addr, u8 alg, const u8 *key, u8 keyid, u8 gk);
|
u8 rtw_ap_set_sta_key(_adapter *adapter, const u8 *addr, u8 alg, const u8 *key, u8 keyid, u8 gk);
|
||||||
u8 rtw_ap_set_pairwise_key(_adapter *padapter, struct sta_info *psta);
|
u8 rtw_ap_set_pairwise_key(_adapter *padapter, struct sta_info *psta);
|
||||||
int rtw_ap_set_group_key(_adapter *padapter, u8 *key, u8 alg, int keyid);
|
int rtw_ap_set_group_key(_adapter *padapter, u8 *key, u8 alg, int keyid);
|
||||||
int rtw_ap_set_wep_key(_adapter *padapter, u8 *key, u8 keylen, int keyid, u8 set_tx);
|
int rtw_ap_set_wep_key(_adapter *padapter, u8 *key, u8 keylen, int keyid, u8 set_tx);
|
||||||
|
|
||||||
#ifdef CONFIG_NATIVEAP_MLME
|
#ifdef CONFIG_NATIVEAP_MLME
|
||||||
void associated_clients_update(_adapter *padapter, u8 updated, u32 sta_info_type);
|
void associated_clients_update(_adapter *padapter, u8 updated, u32 sta_info_type);
|
||||||
void bss_cap_update_on_sta_join(_adapter *padapter, struct sta_info *psta);
|
void bss_cap_update_on_sta_join(_adapter *padapter, struct sta_info *psta);
|
||||||
u8 bss_cap_update_on_sta_leave(_adapter *padapter, struct sta_info *psta);
|
u8 bss_cap_update_on_sta_leave(_adapter *padapter, struct sta_info *psta);
|
||||||
void sta_info_update(_adapter *padapter, struct sta_info *psta);
|
void sta_info_update(_adapter *padapter, struct sta_info *psta);
|
||||||
void ap_sta_info_defer_update(_adapter *padapter, struct sta_info *psta);
|
void ap_sta_info_defer_update(_adapter *padapter, struct sta_info *psta);
|
||||||
u8 ap_free_sta(_adapter *padapter, struct sta_info *psta, bool active, u16 reason, bool enqueue);
|
u8 ap_free_sta(_adapter *padapter, struct sta_info *psta, bool active, u16 reason, bool enqueue);
|
||||||
int rtw_sta_flush(_adapter *padapter, bool enqueue);
|
int rtw_sta_flush(_adapter *padapter, bool enqueue);
|
||||||
int rtw_ap_inform_ch_switch(_adapter *padapter, u8 new_ch, u8 ch_offset);
|
int rtw_ap_inform_ch_switch(_adapter *padapter, u8 new_ch, u8 ch_offset);
|
||||||
void start_ap_mode(_adapter *padapter);
|
void start_ap_mode(_adapter *padapter);
|
||||||
void stop_ap_mode(_adapter *padapter);
|
void stop_ap_mode(_adapter *padapter);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void rtw_ap_update_bss_chbw(_adapter *adapter, WLAN_BSSID_EX *bss, u8 ch, u8 bw, u8 offset);
|
void rtw_ap_update_bss_chbw(_adapter *adapter, WLAN_BSSID_EX *bss, u8 ch, u8 bw, u8 offset);
|
||||||
u8 rtw_ap_chbw_decision(_adapter *adapter, u8 ifbmp, u8 excl_ifbmp
|
u8 rtw_ap_chbw_decision(_adapter *adapter, u8 ifbmp, u8 excl_ifbmp
|
||||||
, s16 req_ch, s8 req_bw, s8 req_offset, u8 *ch, u8 *bw, u8 *offset, u8 *chbw_allow, bool *set_u_ch);
|
, s16 req_ch, s8 req_bw, s8 req_offset, u8 *ch, u8 *bw, u8 *offset, u8 *chbw_allow, bool *set_u_ch);
|
||||||
|
|
||||||
#ifdef CONFIG_AUTO_AP_MODE
|
#ifdef CONFIG_AUTO_AP_MODE
|
||||||
void rtw_auto_ap_rx_msg_dump(_adapter *padapter, union recv_frame *precv_frame, u8 *ehdr_pos);
|
void rtw_auto_ap_rx_msg_dump(_adapter *padapter, union recv_frame *precv_frame, u8 *ehdr_pos);
|
||||||
extern void rtw_start_auto_ap(_adapter *adapter);
|
extern void rtw_start_auto_ap(_adapter *adapter);
|
||||||
#endif /* CONFIG_AUTO_AP_MODE */
|
#endif /* CONFIG_AUTO_AP_MODE */
|
||||||
|
|
||||||
void rtw_ap_parse_sta_capability(_adapter *adapter, struct sta_info *sta, u8 *cap);
|
void rtw_ap_parse_sta_capability(_adapter *adapter, struct sta_info *sta, u8 *cap);
|
||||||
u16 rtw_ap_parse_sta_supported_rates(_adapter *adapter, struct sta_info *sta, u8 *tlv_ies, u16 tlv_ies_len);
|
u16 rtw_ap_parse_sta_supported_rates(_adapter *adapter, struct sta_info *sta, u8 *tlv_ies, u16 tlv_ies_len);
|
||||||
u16 rtw_ap_parse_sta_security_ie(_adapter *adapter, struct sta_info *sta, struct rtw_ieee802_11_elems *elems);
|
u16 rtw_ap_parse_sta_security_ie(_adapter *adapter, struct sta_info *sta, struct rtw_ieee802_11_elems *elems);
|
||||||
void rtw_ap_parse_sta_wmm_ie(_adapter *adapter, struct sta_info *sta, u8 *tlv_ies, u16 tlv_ies_len);
|
void rtw_ap_parse_sta_wmm_ie(_adapter *adapter, struct sta_info *sta, u8 *tlv_ies, u16 tlv_ies_len);
|
||||||
void rtw_ap_parse_sta_ht_ie(_adapter *adapter, struct sta_info *sta, struct rtw_ieee802_11_elems *elems);
|
void rtw_ap_parse_sta_ht_ie(_adapter *adapter, struct sta_info *sta, struct rtw_ieee802_11_elems *elems);
|
||||||
void rtw_ap_parse_sta_vht_ie(_adapter *adapter, struct sta_info *sta, struct rtw_ieee802_11_elems *elems);
|
void rtw_ap_parse_sta_vht_ie(_adapter *adapter, struct sta_info *sta, struct rtw_ieee802_11_elems *elems);
|
||||||
void rtw_ap_parse_sta_multi_ap_ie(_adapter *adapter, struct sta_info *sta, u8 *ies, int ies_len);
|
void rtw_ap_parse_sta_multi_ap_ie(_adapter *adapter, struct sta_info *sta, u8 *ies, int ies_len);
|
||||||
|
|
||||||
/* b2u flags */
|
/* b2u flags */
|
||||||
#define RTW_AP_B2U_ALL BIT0
|
#define RTW_AP_B2U_ALL BIT0
|
||||||
#define RTW_AP_B2U_GA_UCAST BIT1 /* WDS group addressed unicast frame, forward only */
|
#define RTW_AP_B2U_GA_UCAST BIT1 /* WDS group addressed unicast frame, forward only */
|
||||||
#define RTW_AP_B2U_BCAST BIT2
|
#define RTW_AP_B2U_BCAST BIT2
|
||||||
#define RTW_AP_B2U_IP_MCAST BIT3
|
#define RTW_AP_B2U_IP_MCAST BIT3
|
||||||
|
|
||||||
#define rtw_ap_src_b2u_policy_chk(flags, da) ( \
|
#define rtw_ap_src_b2u_policy_chk(flags, da) ( \
|
||||||
(flags & RTW_AP_B2U_ALL) \
|
(flags & RTW_AP_B2U_ALL) \
|
||||||
|| ((flags & RTW_AP_B2U_BCAST) && is_broadcast_mac_addr(da)) \
|
|| ((flags & RTW_AP_B2U_BCAST) && is_broadcast_mac_addr(da)) \
|
||||||
|| ((flags & RTW_AP_B2U_IP_MCAST) && (IP_MCAST_MAC(da) || ICMPV6_MCAST_MAC(da))) \
|
|| ((flags & RTW_AP_B2U_IP_MCAST) && (IP_MCAST_MAC(da) || ICMPV6_MCAST_MAC(da))) \
|
||||||
)
|
)
|
||||||
|
|
||||||
#define rtw_ap_fwd_b2u_policy_chk(flags, da, gaucst) ( \
|
#define rtw_ap_fwd_b2u_policy_chk(flags, da, gaucst) ( \
|
||||||
(flags & RTW_AP_B2U_ALL) \
|
(flags & RTW_AP_B2U_ALL) \
|
||||||
|| ((flags & RTW_AP_B2U_GA_UCAST) && gaucst) \
|
|| ((flags & RTW_AP_B2U_GA_UCAST) && gaucst) \
|
||||||
|| ((flags & RTW_AP_B2U_BCAST) && is_broadcast_mac_addr(da)) \
|
|| ((flags & RTW_AP_B2U_BCAST) && is_broadcast_mac_addr(da)) \
|
||||||
|| ((flags & RTW_AP_B2U_IP_MCAST) && (IP_MCAST_MAC(da) || ICMPV6_MCAST_MAC(da))) \
|
|| ((flags & RTW_AP_B2U_IP_MCAST) && (IP_MCAST_MAC(da) || ICMPV6_MCAST_MAC(da))) \
|
||||||
)
|
)
|
||||||
|
|
||||||
void dump_ap_b2u_flags(void *sel, _adapter *adapter);
|
void dump_ap_b2u_flags(void *sel, _adapter *adapter);
|
||||||
|
|
||||||
int rtw_ap_addr_resolve(_adapter *adapter, u16 os_qid, struct xmit_frame *xframe, _pkt *pkt, _list *b2u_list);
|
int rtw_ap_addr_resolve(_adapter *adapter, u16 os_qid, struct xmit_frame *xframe, _pkt *pkt, _list *b2u_list);
|
||||||
int rtw_ap_rx_data_validate_hdr(_adapter *adapter, union recv_frame *rframe, struct sta_info **sta);
|
int rtw_ap_rx_data_validate_hdr(_adapter *adapter, union recv_frame *rframe, struct sta_info **sta);
|
||||||
int rtw_ap_rx_msdu_act_check(union recv_frame *rframe
|
int rtw_ap_rx_msdu_act_check(union recv_frame *rframe
|
||||||
, const u8 *da, const u8 *sa
|
, const u8 *da, const u8 *sa
|
||||||
, u8 *msdu, enum rtw_rx_llc_hdl llc_hdl
|
, u8 *msdu, enum rtw_rx_llc_hdl llc_hdl
|
||||||
, struct xmit_frame **fwd_frame, _list *b2u_list);
|
, struct xmit_frame **fwd_frame, _list *b2u_list);
|
||||||
|
|
||||||
void update_bmc_sta(_adapter *padapter);
|
void update_bmc_sta(_adapter *padapter);
|
||||||
|
|
||||||
#ifdef CONFIG_BMC_TX_RATE_SELECT
|
#ifdef CONFIG_BMC_TX_RATE_SELECT
|
||||||
void rtw_update_bmc_sta_tx_rate(_adapter *adapter);
|
void rtw_update_bmc_sta_tx_rate(_adapter *adapter);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void rtw_process_ht_action_smps(_adapter *padapter, u8 *ta, u8 ctrl_field);
|
void rtw_process_ht_action_smps(_adapter *padapter, u8 *ta, u8 ctrl_field);
|
||||||
void rtw_process_public_act_bsscoex(_adapter *padapter, u8 *pframe, uint frame_len);
|
void rtw_process_public_act_bsscoex(_adapter *padapter, u8 *pframe, uint frame_len);
|
||||||
#ifdef CONFIG_80211N_HT
|
#ifdef CONFIG_80211N_HT
|
||||||
int rtw_ht_operation_update(_adapter *padapter);
|
int rtw_ht_operation_update(_adapter *padapter);
|
||||||
#endif /* CONFIG_80211N_HT */
|
#endif /* CONFIG_80211N_HT */
|
||||||
u8 rtw_ap_sta_states_check(_adapter *adapter);
|
u8 rtw_ap_sta_states_check(_adapter *adapter);
|
||||||
|
|
||||||
#ifdef CONFIG_FW_HANDLE_TXBCN
|
#ifdef CONFIG_FW_HANDLE_TXBCN
|
||||||
#define rtw_ap_get_nums(adapter) (adapter_to_dvobj(adapter)->nr_ap_if)
|
#define rtw_ap_get_nums(adapter) (adapter_to_dvobj(adapter)->nr_ap_if)
|
||||||
bool rtw_ap_nums_check(_adapter *adapter);
|
bool rtw_ap_nums_check(_adapter *adapter);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_SWTIMER_BASED_TXBCN
|
#ifdef CONFIG_SWTIMER_BASED_TXBCN
|
||||||
void tx_beacon_handlder(struct dvobj_priv *pdvobj);
|
void tx_beacon_handlder(struct dvobj_priv *pdvobj);
|
||||||
void tx_beacon_timer_handlder(void *ctx);
|
void tx_beacon_timer_handlder(void *ctx);
|
||||||
#endif /*CONFIG_SWTIMER_BASED_TXBCN*/
|
#endif /*CONFIG_SWTIMER_BASED_TXBCN*/
|
||||||
|
|
||||||
#endif /* end of CONFIG_AP_MODE */
|
#endif /* end of CONFIG_AP_MODE */
|
||||||
#endif /*__RTW_AP_H_*/
|
#endif /*__RTW_AP_H_*/
|
||||||
|
|||||||
@ -1,61 +1,61 @@
|
|||||||
/******************************************************************************
|
/******************************************************************************
|
||||||
*
|
*
|
||||||
* Copyright(c) 2007 - 2020 Realtek Corporation.
|
* Copyright(c) 2007 - 2020 Realtek Corporation.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
* under the terms of version 2 of the GNU General Public License as
|
* under the terms of version 2 of the GNU General Public License as
|
||||||
* published by the Free Software Foundation.
|
* published by the Free Software Foundation.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful, but WITHOUT
|
* This program is distributed in the hope that it will be useful, but WITHOUT
|
||||||
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||||
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
||||||
* more details.
|
* more details.
|
||||||
*
|
*
|
||||||
*****************************************************************************/
|
*****************************************************************************/
|
||||||
#ifndef __RTW_ROCH_H__
|
#ifndef __RTW_ROCH_H__
|
||||||
#define __RTW_ROCH_H__
|
#define __RTW_ROCH_H__
|
||||||
|
|
||||||
#include <drv_types.h>
|
#include <drv_types.h>
|
||||||
|
|
||||||
struct rtw_roch_parm;
|
struct rtw_roch_parm;
|
||||||
|
|
||||||
#if (defined(CONFIG_P2P) && defined(CONFIG_CONCURRENT_MODE)) || defined(CONFIG_IOCTL_CFG80211)
|
#if (defined(CONFIG_P2P) && defined(CONFIG_CONCURRENT_MODE)) || defined(CONFIG_IOCTL_CFG80211)
|
||||||
struct roch_info {
|
struct roch_info {
|
||||||
#ifdef CONFIG_CONCURRENT_MODE
|
#ifdef CONFIG_CONCURRENT_MODE
|
||||||
_timer ap_roch_ch_switch_timer; /* Used to switch the channel between legacy AP and listen state. */
|
_timer ap_roch_ch_switch_timer; /* Used to switch the channel between legacy AP and listen state. */
|
||||||
#ifdef CONFIG_IOCTL_CFG80211
|
#ifdef CONFIG_IOCTL_CFG80211
|
||||||
u32 min_home_dur; /* min duration for traffic, home_time */
|
u32 min_home_dur; /* min duration for traffic, home_time */
|
||||||
u32 max_away_dur; /* max acceptable away duration, home_away_time */
|
u32 max_away_dur; /* max acceptable away duration, home_away_time */
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_IOCTL_CFG80211
|
#ifdef CONFIG_IOCTL_CFG80211
|
||||||
_timer remain_on_ch_timer;
|
_timer remain_on_ch_timer;
|
||||||
u8 restore_channel;
|
u8 restore_channel;
|
||||||
struct ieee80211_channel remain_on_ch_channel;
|
struct ieee80211_channel remain_on_ch_channel;
|
||||||
enum nl80211_channel_type remain_on_ch_type;
|
enum nl80211_channel_type remain_on_ch_type;
|
||||||
ATOMIC_T ro_ch_cookie_gen;
|
ATOMIC_T ro_ch_cookie_gen;
|
||||||
u64 remain_on_ch_cookie;
|
u64 remain_on_ch_cookie;
|
||||||
bool is_ro_ch;
|
bool is_ro_ch;
|
||||||
struct wireless_dev *ro_ch_wdev;
|
struct wireless_dev *ro_ch_wdev;
|
||||||
systime last_ro_ch_time; /* this will be updated at the beginning and end of ro_ch */
|
systime last_ro_ch_time; /* this will be updated at the beginning and end of ro_ch */
|
||||||
#endif
|
#endif
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef CONFIG_IOCTL_CFG80211
|
#ifdef CONFIG_IOCTL_CFG80211
|
||||||
u8 rtw_roch_stay_in_cur_chan(_adapter *padapter);
|
u8 rtw_roch_stay_in_cur_chan(_adapter *padapter);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if (defined(CONFIG_P2P) && defined(CONFIG_CONCURRENT_MODE)) || defined(CONFIG_IOCTL_CFG80211)
|
#if (defined(CONFIG_P2P) && defined(CONFIG_CONCURRENT_MODE)) || defined(CONFIG_IOCTL_CFG80211)
|
||||||
s32 rtw_roch_wk_hdl(_adapter *padapter, int intCmdType, u8 *buf);
|
s32 rtw_roch_wk_hdl(_adapter *padapter, int intCmdType, u8 *buf);
|
||||||
u8 rtw_roch_wk_cmd(_adapter *padapter, int intCmdType, struct rtw_roch_parm *roch_parm, u8 flags);
|
u8 rtw_roch_wk_cmd(_adapter *padapter, int intCmdType, struct rtw_roch_parm *roch_parm, u8 flags);
|
||||||
|
|
||||||
#ifdef CONFIG_CONCURRENT_MODE
|
#ifdef CONFIG_CONCURRENT_MODE
|
||||||
void rtw_concurrent_handler(_adapter *padapter);
|
void rtw_concurrent_handler(_adapter *padapter);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void rtw_init_roch_info(_adapter *padapter);
|
void rtw_init_roch_info(_adapter *padapter);
|
||||||
#endif /* (defined(CONFIG_P2P) && defined(CONFIG_CONCURRENT_MODE)) || defined(CONFIG_IOCTL_CFG80211) */
|
#endif /* (defined(CONFIG_P2P) && defined(CONFIG_CONCURRENT_MODE)) || defined(CONFIG_IOCTL_CFG80211) */
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user