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: