qcacld-3.0: Update the policy manager table during channel switch
Update the policy manager table during channel switch in case of
STA/CLI/SAP/P2P-GO mode. The vdev (re)start response carries the
updated vdev parameters such as the new MAC to which the vdev
connection moved to etc.
Change-Id: I55a56acdba8234e09d1439698b2b13751d4e9b2d
CRs-Fixed: 970794
diff --git a/core/cds/src/cds_concurrency.c b/core/cds/src/cds_concurrency.c
index 1b645c9..dea6bf2 100644
--- a/core/cds/src/cds_concurrency.c
+++ b/core/cds/src/cds_concurrency.c
@@ -4134,6 +4134,8 @@
return status;
}
+ cds_debug("update PM connection table for vdev:%d", vdev_id);
+
/* add the entry */
cds_update_conc_list(conn_index,
cds_get_mode(wma_conn_table_entry->type,
diff --git a/core/mac/src/pe/lim/lim_process_mlm_rsp_messages.c b/core/mac/src/pe/lim/lim_process_mlm_rsp_messages.c
index 546e76d..8cc9c93 100644
--- a/core/mac/src/pe/lim/lim_process_mlm_rsp_messages.c
+++ b/core/mac/src/pe/lim/lim_process_mlm_rsp_messages.c
@@ -52,6 +52,7 @@
#include "wma_types.h"
#include "cds_utils.h"
#include "lim_types.h"
+#include "cds_concurrency.h"
#define MAX_SUPPORTED_PEERS_WEP 16
@@ -3680,6 +3681,10 @@
gpchangeChannelData,
psessionEntry);
}
+ /* If MCC upgrade/DBS downgrade happended during channel switch,
+ * the policy manager connection table needs to be updated.
+ */
+ cds_update_connection_info(psessionEntry->smeSessionId);
break;
case LIM_SWITCH_CHANNEL_SAP_DFS:
{
@@ -3693,6 +3698,10 @@
*/
lim_send_sme_ap_channel_switch_resp(pMac, psessionEntry,
pChnlParams);
+ /* If MCC upgrade/DBS downgrade happended during channel switch,
+ * the policy manager connection table needs to be updated.
+ */
+ cds_update_connection_info(psessionEntry->smeSessionId);
}
break;
default: