qcacld-3.0: remove references to datapath structures from other modules

Core datapath structures should be opaque to non-datapath modules,
remove the references to them.

Change-Id: I3618253566a971c27f16b14923d1ff8028718918
CRs-Fixed: 994638
diff --git a/core/wma/src/wma_mgmt.c b/core/wma/src/wma_mgmt.c
index e7eed70..f055d6f 100644
--- a/core/wma/src/wma_mgmt.c
+++ b/core/wma/src/wma_mgmt.c
@@ -67,6 +67,11 @@
 #include "wma_internal.h"
 #include "cds_concurrency.h"
 #include "cdp_txrx_flow_ctrl_legacy.h"
+#include <cdp_txrx_peer_ops.h>
+#include <cdp_txrx_pmf.h>
+#include <cdp_txrx_cfg.h>
+#include <cdp_txrx_cmn.h>
+#include <cdp_txrx_misc.h>
 
 /**
  * wma_send_bcn_buf_ll() - prepare and send beacon buffer to fw for LL
@@ -1455,7 +1460,9 @@
 	QDF_STATUS status = QDF_STATUS_SUCCESS;
 	uint32_t i;
 	uint32_t def_key_idx = 0;
+	uint32_t wlan_opmode;
 	ol_txrx_vdev_handle txrx_vdev;
+	uint8_t *mac_addr;
 
 	WMA_LOGD("BSS key setup");
 	txrx_vdev = wma_find_vdev_by_id(wma_handle, key_info->smesessionId);
@@ -1464,13 +1471,14 @@
 		key_info->status = QDF_STATUS_E_FAILURE;
 		goto out;
 	}
+	wlan_opmode = ol_txrx_get_opmode(txrx_vdev);
 
 	/*
 	 * For IBSS, WMI expects the BSS key to be set per peer key
 	 * So cache the BSS key in the wma_handle and re-use it when the
 	 * STA key is been setup for a peer
 	 */
-	if (wlan_op_mode_ibss == txrx_vdev->opmode) {
+	if (wlan_op_mode_ibss == wlan_opmode) {
 		key_info->status = QDF_STATUS_SUCCESS;
 		if (wma_handle->ibss_started > 0)
 			goto out;
@@ -1484,16 +1492,22 @@
 	key_params.key_type = key_info->encType;
 	key_params.singl_tid_rc = key_info->singleTidRc;
 	key_params.unicast = false;
-	if (txrx_vdev->opmode == wlan_op_mode_sta) {
+	if (wlan_opmode == wlan_op_mode_sta) {
 		qdf_mem_copy(key_params.peer_mac,
 			wma_handle->interfaces[key_info->smesessionId].bssid,
 			IEEE80211_ADDR_LEN);
 	} else {
+		mac_addr = ol_txrx_get_vdev_mac_addr(txrx_vdev);
+		if (mac_addr == NULL) {
+			WMA_LOGE("%s: mac_addr is NULL for vdev with id %d",
+				 __func__, key_info->smesessionId);
+			goto out;
+		}
 		/* vdev mac address will be passed for all other modes */
-		qdf_mem_copy(key_params.peer_mac, txrx_vdev->mac_addr.raw,
+		qdf_mem_copy(key_params.peer_mac, mac_addr,
 			     IEEE80211_ADDR_LEN);
 		WMA_LOGA("BSS Key setup with vdev_mac %pM\n",
-			 txrx_vdev->mac_addr.raw);
+			 mac_addr);
 	}
 
 	if (key_info->numKeys == 0 &&
@@ -1530,7 +1544,7 @@
 			 key_info->key[i].keyLength);
 
 		status = wma_setup_install_key_cmd(wma_handle, &key_params,
-						txrx_vdev->opmode);
+						   wlan_opmode);
 		if (status == QDF_STATUS_E_NOMEM) {
 			WMA_LOGE("%s:Failed to setup install key buf",
 				 __func__);
@@ -1608,18 +1622,17 @@
 		return;
 	}
 
-	new_peer_num = vdev->ibss_peer_num + peer_num_delta;
-	if (new_peer_num > MAX_IBSS_PEERS || new_peer_num < 0) {
+	/* adjust peer numbers */
+	new_peer_num = ol_txrx_update_ibss_add_peer_num_of_vdev(vdev,
+								peer_num_delta);
+	if (OL_TXRX_INVALID_NUM_PEERS == new_peer_num) {
 		WMA_LOGE("new peer num %d out of valid boundary", new_peer_num);
 		return;
 	}
 
-	/* adjust peer numbers */
-	vdev->ibss_peer_num = new_peer_num;
-
 	/* reset timer value if all peers departed */
 	if (new_peer_num == 0) {
-		vdev->ibss_peer_heart_beat_timer = 0;
+		ol_txrx_set_ibss_vdev_heart_beat_timer(vdev, 0);
 		return;
 	}
 
@@ -1630,15 +1643,13 @@
 			 new_timer_value_sec, new_peer_num);
 		return;
 	}
-	if (new_timer_value_sec == vdev->ibss_peer_heart_beat_timer) {
+	if (new_timer_value_sec ==
+	    ol_txrx_set_ibss_vdev_heart_beat_timer(vdev, new_timer_value_sec)) {
 		WMA_LOGD("timer value %d stays same, no need to notify target",
 			 new_timer_value_sec);
 		return;
 	}
 
-	/* send new timer value to target */
-	vdev->ibss_peer_heart_beat_timer = new_timer_value_sec;
-
 	new_timer_value_ms = ((uint32_t) new_timer_value_sec) * 1000;
 
 	status = wma_vdev_set_param(wma->wmi_handle, vdev_id,
@@ -1671,6 +1682,7 @@
 	uint32_t i;
 	uint32_t def_key_idx = 0;
 	ol_txrx_vdev_handle txrx_vdev;
+	int opmode;
 
 	WMA_LOGD("BSS key setup for peer");
 	txrx_vdev = wma_find_vdev_by_id(wma_handle, key_info->smesessionId);
@@ -1681,11 +1693,13 @@
 	}
 
 	qdf_mem_set(&key_params, sizeof(key_params), 0);
+	opmode = ol_txrx_get_opmode(txrx_vdev);
+	qdf_mem_set(&key_params, sizeof(key_params), 0);
 	key_params.vdev_id = key_info->smesessionId;
 	key_params.key_type = key_info->encType;
 	key_params.singl_tid_rc = key_info->singleTidRc;
 	key_params.unicast = false;
-	ASSERT(wlan_op_mode_ibss == txrx_vdev->opmode);
+	ASSERT(wlan_op_mode_ibss == opmode);
 
 	qdf_mem_copy(key_params.peer_mac, peer_macaddr.bytes,
 			IEEE80211_ADDR_LEN);
@@ -1719,7 +1733,7 @@
 			 key_info->key[i].keyLength);
 
 		status = wma_setup_install_key_cmd(wma_handle, &key_params,
-						txrx_vdev->opmode);
+						   opmode);
 		if (status == QDF_STATUS_E_NOMEM) {
 			WMA_LOGE("%s:Failed to setup install key buf",
 				 __func__);
@@ -1747,10 +1761,11 @@
 	QDF_STATUS status = QDF_STATUS_SUCCESS;
 	ol_txrx_pdev_handle txrx_pdev;
 	ol_txrx_vdev_handle txrx_vdev;
-	struct ol_txrx_peer_t *peer;
+	ol_txrx_peer_handle peer;
 	uint8_t num_keys = 0, peer_id;
 	struct wma_set_key_params key_params;
 	uint32_t def_key_idx = 0;
+	int opmode;
 
 	WMA_LOGD("STA key setup");
 
@@ -1777,11 +1792,12 @@
 		key_info->status = QDF_STATUS_E_FAILURE;
 		goto out;
 	}
+	opmode = ol_txrx_get_opmode(txrx_vdev);
 
 	if (key_info->defWEPIdx == WMA_INVALID_KEY_IDX &&
 	    (key_info->encType == eSIR_ED_WEP40 ||
 	     key_info->encType == eSIR_ED_WEP104) &&
-	    txrx_vdev->opmode != wlan_op_mode_ap) {
+	    opmode != wlan_op_mode_ap) {
 		wma_read_cfg_wepkey(wma_handle, key_info->key,
 				    &def_key_idx, &num_keys);
 		key_info->defWEPIdx = def_key_idx;
@@ -1828,7 +1844,7 @@
 
 		key_params.key_len = key_info->key[i].keyLength;
 		status = wma_setup_install_key_cmd(wma_handle, &key_params,
-						txrx_vdev->opmode);
+						   opmode);
 		if (status == QDF_STATUS_E_NOMEM) {
 			WMA_LOGE("%s:Failed to setup install key buf",
 				 __func__);
@@ -1850,7 +1866,7 @@
 	/* In IBSS mode, set the BSS KEY for this peer
 	 * BSS key is supposed to be cache into wma_handle
 	 */
-	if (wlan_op_mode_ibss == txrx_vdev->opmode) {
+	if (wlan_op_mode_ibss == opmode) {
 		wma_set_ibsskey_helper(wma_handle, &wma_handle->ibsskey_info,
 				       key_info->peer_macaddr);
 	}
@@ -2691,9 +2707,7 @@
 	}
 
 	new_pn = wma_extract_ccmp_pn(ccmp_ptr);
-	last_pn_valid = &peer->last_rmf_pn_valid;
-	last_pn = &peer->last_rmf_pn;
-	rmf_pn_replays = &peer->rmf_pn_replays;
+	ol_txrx_get_pn_info(peer, &last_pn_valid, &last_pn, &rmf_pn_replays);
 
 	if (*last_pn_valid) {
 		if (new_pn > *last_pn) {