Browse Source

qcacmn: Add peer_unref_delete CB to CDP

Add peer_unref_delete to CDP ol_if ops. This API is
used to update peer count in SCN radio structure in ol_if layer

CRs-Fixed: 1099955
Change-Id: Idb84cfda60e5a8f67f1e5eae0c3f1e85d73b566a
Pamidipati, Vijay 8 years ago
parent
commit
b31b6b1d49
2 changed files with 5 additions and 4 deletions
  1. 2 0
      dp/inc/cdp_txrx_ops.h
  2. 3 4
      dp/wifi3.0/dp_main.c

+ 2 - 0
dp/inc/cdp_txrx_ops.h

@@ -479,6 +479,8 @@ struct ol_if_ops {
 	int (*peer_rx_reorder_queue_remove)(void *ol_soc_handle,
 			uint8_t vdev_id, uint8_t *peer_macaddr,
 			uint32_t tid_mask);
+	int (*peer_unref_delete)(void *ol_soc_handle);
+
 	/* TODO: Add any other control path calls required to OL_IF/WMA layer */
 };
 

+ 3 - 4
dp/wifi3.0/dp_main.c

@@ -1539,10 +1539,9 @@ void dp_peer_unref_delete(void *peer_handle)
 #else
 		qdf_mem_free(peer);
 #endif
-
-#ifdef notyet /* See why this should be done in DP layer */
-		qdf_atomic_inc(&soc->peer_count);
-#endif
+		if (soc->cdp_soc.ol_ops->peer_unref_delete) {
+			soc->cdp_soc.ol_ops->peer_unref_delete(soc->osif_soc);
+		}
 	} else {
 		qdf_spin_unlock_bh(&soc->peer_ref_mutex);
 	}