Commit 40d7412b authored by Aniket Nagarnaik's avatar Aniket Nagarnaik Committed by Kalle Valo

mwifiex: add bss mode TLV to extended scan command

We are setting BSS mode as ANY so that firmware will provide
all types of scan entries.
Signed-off-by: default avatarAniket Nagarnaik <aniketn@marvell.com>
Signed-off-by: default avatarAmitkumar Karwar <akarwar@marvell.com>
Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
parent 8358491d
...@@ -179,6 +179,7 @@ enum MWIFIEX_802_11_PRIVACY_FILTER { ...@@ -179,6 +179,7 @@ enum MWIFIEX_802_11_PRIVACY_FILTER {
#define TLV_TYPE_CHANNEL_STATS (PROPRIETARY_TLV_BASE_ID + 198) #define TLV_TYPE_CHANNEL_STATS (PROPRIETARY_TLV_BASE_ID + 198)
#define TLV_BTCOEX_WL_AGGR_WINSIZE (PROPRIETARY_TLV_BASE_ID + 202) #define TLV_BTCOEX_WL_AGGR_WINSIZE (PROPRIETARY_TLV_BASE_ID + 202)
#define TLV_BTCOEX_WL_SCANTIME (PROPRIETARY_TLV_BASE_ID + 203) #define TLV_BTCOEX_WL_SCANTIME (PROPRIETARY_TLV_BASE_ID + 203)
#define TLV_TYPE_BSS_MODE (PROPRIETARY_TLV_BASE_ID + 206)
#define MWIFIEX_TX_DATA_BUF_SIZE_2K 2048 #define MWIFIEX_TX_DATA_BUF_SIZE_2K 2048
...@@ -1434,6 +1435,11 @@ struct host_cmd_ds_802_11_scan_ext { ...@@ -1434,6 +1435,11 @@ struct host_cmd_ds_802_11_scan_ext {
u8 tlv_buffer[1]; u8 tlv_buffer[1];
} __packed; } __packed;
struct mwifiex_ie_types_bss_mode {
struct mwifiex_ie_types_header header;
u8 bss_mode;
} __packed;
struct mwifiex_ie_types_bss_scan_rsp { struct mwifiex_ie_types_bss_scan_rsp {
struct mwifiex_ie_types_header header; struct mwifiex_ie_types_header header;
u8 bssid[ETH_ALEN]; u8 bssid[ETH_ALEN];
......
...@@ -823,6 +823,7 @@ mwifiex_config_scan(struct mwifiex_private *priv, ...@@ -823,6 +823,7 @@ mwifiex_config_scan(struct mwifiex_private *priv,
int i; int i;
u8 ssid_filter; u8 ssid_filter;
struct mwifiex_ie_types_htcap *ht_cap; struct mwifiex_ie_types_htcap *ht_cap;
struct mwifiex_ie_types_bss_mode *bss_mode;
/* The tlv_buf_len is calculated for each scan command. The TLVs added /* The tlv_buf_len is calculated for each scan command. The TLVs added
in this routine will be preserved since the routine that sends the in this routine will be preserved since the routine that sends the
...@@ -968,6 +969,15 @@ mwifiex_config_scan(struct mwifiex_private *priv, ...@@ -968,6 +969,15 @@ mwifiex_config_scan(struct mwifiex_private *priv,
else else
*max_chan_per_scan = MWIFIEX_DEF_CHANNELS_PER_SCAN_CMD; *max_chan_per_scan = MWIFIEX_DEF_CHANNELS_PER_SCAN_CMD;
if (adapter->ext_scan) {
bss_mode = (struct mwifiex_ie_types_bss_mode *)tlv_pos;
bss_mode->header.type = cpu_to_le16(TLV_TYPE_BSS_MODE);
bss_mode->header.len = cpu_to_le16(sizeof(bss_mode->bss_mode));
bss_mode->bss_mode = scan_cfg_out->bss_mode;
tlv_pos += sizeof(bss_mode->header) +
le16_to_cpu(bss_mode->header.len);
}
/* If the input config or adapter has the number of Probes set, /* If the input config or adapter has the number of Probes set,
add tlv */ add tlv */
if (num_probes) { if (num_probes) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment