summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/mac/src/pe/lim/lim_send_messages.c4
-rw-r--r--core/wma/inc/wma_if.h5
-rw-r--r--core/wma/src/wma_dev_if.c21
-rw-r--r--core/wma/src/wma_scan_roam.c3
4 files changed, 21 insertions, 12 deletions
diff --git a/core/mac/src/pe/lim/lim_send_messages.c b/core/mac/src/pe/lim/lim_send_messages.c
index 665a30a72c76..129903eb137e 100644
--- a/core/mac/src/pe/lim/lim_send_messages.c
+++ b/core/mac/src/pe/lim/lim_send_messages.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2011-2018 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2011-2019 The Linux Foundation. All rights reserved.
*
* Permission to use, copy, modify, and/or distribute this software for
* any purpose with or without fee is hereby granted, provided that the
@@ -197,6 +197,8 @@ tSirRetStatus lim_send_switch_chnl_params(tpAniSirGlobal pMac,
pChnlParams->reduced_beacon_interval =
pMac->sap.SapDfsInfo.reduced_beacon_interval;
+ pChnlParams->ssid_hidden = pSessionEntry->ssidHidden;
+ pChnlParams->ssid = pSessionEntry->ssId;
if (cds_is_5_mhz_enabled())
pChnlParams->ch_width = CH_WIDTH_5MHZ;
else if (cds_is_10_mhz_enabled())
diff --git a/core/wma/inc/wma_if.h b/core/wma/inc/wma_if.h
index 1afe63540d11..d0b8607d4963 100644
--- a/core/wma/inc/wma_if.h
+++ b/core/wma/inc/wma_if.h
@@ -872,6 +872,9 @@ typedef struct {
* @isDfsChannel: is DFS channel
* @vhtCapable: VHT capable
* @dot11_mode: 802.11 mode
+ * @reduced_beacon_interval: reduced beacon interval value
+ * @ssid_hidden: the sap ssid is hidden
+ * @ssid: sap ssid
*/
typedef struct {
uint8_t channelNumber;
@@ -904,6 +907,8 @@ typedef struct {
uint8_t nss;
bool rx_ldpc;
uint16_t reduced_beacon_interval;
+ uint8_t ssid_hidden;
+ tSirMacSSid ssid;
} tSwitchChannelParams, *tpSwitchChannelParams;
typedef void (*tpSetLinkStateCallback)(tpAniSirGlobal pMac, void *msgParam,
diff --git a/core/wma/src/wma_dev_if.c b/core/wma/src/wma_dev_if.c
index baaf7fd68a0b..21fe8e3ea403 100644
--- a/core/wma/src/wma_dev_if.c
+++ b/core/wma/src/wma_dev_if.c
@@ -2718,16 +2718,6 @@ QDF_STATUS wma_vdev_start(tp_wma_handle wma,
params.beacon_intval = req->beacon_intval;
params.dtim_period = req->dtim_period;
- /* Copy the SSID */
- if (req->ssid.length) {
- params.ssid.length = req->ssid.length;
- if (req->ssid.length < sizeof(cmd->ssid.ssid))
- temp_ssid_len = req->ssid.length;
- else
- temp_ssid_len = sizeof(cmd->ssid.ssid);
- qdf_mem_copy(params.ssid.mac_ssid, req->ssid.ssId,
- temp_ssid_len);
- }
params.pmf_enabled = req->pmf_enabled;
params.ldpc_rx_enabled = req->ldpc_rx_enabled;
@@ -2738,6 +2728,17 @@ QDF_STATUS wma_vdev_start(tp_wma_handle wma,
if (req->ldpc_rx_enabled)
temp_flags |= WMI_UNIFIED_VDEV_START_LDPC_RX_ENABLED;
}
+ /* Copy the SSID */
+ if (req->ssid.length) {
+ params.ssid.length = req->ssid.length;
+ if (req->ssid.length < sizeof(cmd->ssid.ssid))
+ temp_ssid_len = req->ssid.length;
+ else
+ temp_ssid_len = sizeof(cmd->ssid.ssid);
+ qdf_mem_copy(params.ssid.mac_ssid, req->ssid.ssId,
+ temp_ssid_len);
+ }
+
params.hidden_ssid = req->hidden_ssid;
if (req->hidden_ssid)
temp_flags |= WMI_UNIFIED_VDEV_START_HIDDEN_SSID;
diff --git a/core/wma/src/wma_scan_roam.c b/core/wma/src/wma_scan_roam.c
index 3c78cdb8666d..9d3909950965 100644
--- a/core/wma/src/wma_scan_roam.c
+++ b/core/wma/src/wma_scan_roam.c
@@ -3882,6 +3882,7 @@ void wma_set_channel(tp_wma_handle wma, tpSwitchChannelParams params)
req.dtim_period = 1;
req.is_dfs = params->isDfsChannel;
req.ldpc_rx_enabled = params->rx_ldpc;
+ req.ssid = params->ssid;
/* In case of AP mode, once radar is detected, we need to
* issuse VDEV RESTART, so we making is_channel_switch as
@@ -3890,7 +3891,7 @@ void wma_set_channel(tp_wma_handle wma, tpSwitchChannelParams params)
if ((wma_is_vdev_in_ap_mode(wma, req.vdev_id) == true) ||
(params->restart_on_chan_switch == true)) {
wma->interfaces[req.vdev_id].is_channel_switch = true;
- req.hidden_ssid = intr[vdev_id].vdev_restart_params.ssidHidden;
+ req.hidden_ssid = params->ssid_hidden;
}
if (params->restart_on_chan_switch == true &&