diff --git a/dp/inc/cdp_txrx_cmn.h b/dp/inc/cdp_txrx_cmn.h index ee23b5855f..c98c57da8f 100644 --- a/dp/inc/cdp_txrx_cmn.h +++ b/dp/inc/cdp_txrx_cmn.h @@ -157,10 +157,10 @@ static inline void cdp_peer_teardown } static inline void -cdp_peer_delete(ol_txrx_soc_handle soc, void *peer) +cdp_peer_delete(ol_txrx_soc_handle soc, void *peer, uint32_t bitmap) { if (soc->ops->cmn_drv_ops->txrx_peer_delete) - return soc->ops->cmn_drv_ops->txrx_peer_delete(peer); + return soc->ops->cmn_drv_ops->txrx_peer_delete(peer, bitmap); return; } diff --git a/dp/inc/cdp_txrx_ops.h b/dp/inc/cdp_txrx_ops.h index ad9b5eacac..eb0e5bcd1d 100644 --- a/dp/inc/cdp_txrx_ops.h +++ b/dp/inc/cdp_txrx_ops.h @@ -36,6 +36,12 @@ #include #endif +/** + * bitmap values to indicate special handling of peer_delete + */ +#define CDP_PEER_DELETE_NO_SPECIAL 0 +#define CDP_PEER_DO_NOT_START_UNMAP_TIMER 1 + /****************************************************************************** * * Control Interface (A Interface) @@ -75,7 +81,7 @@ struct cdp_cmn_ops { void (*txrx_peer_teardown) (struct cdp_vdev *vdev_hdl, void *peer_hdl); - void (*txrx_peer_delete)(void *peer); + void (*txrx_peer_delete)(void *peer, uint32_t bitmap); int (*txrx_set_monitor_mode)(struct cdp_vdev *vdev, uint8_t smart_monitor); diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index cd72a196fa..a52c9172f6 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -3217,10 +3217,11 @@ void dp_peer_unref_delete(void *peer_handle) /* * dp_peer_detach_wifi3() – Detach txrx peer - * @peer_handle: Datapath peer handle + * @peer_handle: Datapath peer handle + * @bitmap: bitmap indicating special handling of request. * */ -static void dp_peer_delete_wifi3(void *peer_handle) +static void dp_peer_delete_wifi3(void *peer_handle, uint32_t bitmap) { struct dp_peer *peer = (struct dp_peer *)peer_handle;