diff --git a/dp/wifi3.0/dp_main.c b/dp/wifi3.0/dp_main.c index 08c121aa7c..5d98f8077a 100644 --- a/dp/wifi3.0/dp_main.c +++ b/dp/wifi3.0/dp_main.c @@ -4541,7 +4541,7 @@ static void dp_soc_tx_hw_desc_history_attach(struct dp_soc *soc) { soc->tx_hw_desc_history = dp_context_alloc_mem( soc, DP_TX_HW_DESC_HIST_TYPE, - sizeof(struct dp_tx_hw_desc_evt)); + sizeof(*soc->tx_hw_desc_history)); if (soc->tx_hw_desc_history) soc->tx_hw_desc_history->index = 0; } diff --git a/dp/wifi3.0/dp_tx.c b/dp/wifi3.0/dp_tx.c index f14bf14325..475ad40280 100644 --- a/dp/wifi3.0/dp_tx.c +++ b/dp/wifi3.0/dp_tx.c @@ -1523,6 +1523,9 @@ dp_tx_hw_desc_update_evt(uint8_t *hal_tx_desc_cached, struct dp_tx_hw_desc_evt *evt; uint64_t idx = 0; + if (!soc->tx_hw_desc_history) + return; + idx = ++soc->tx_hw_desc_history->index; if (idx == DP_TX_HW_DESC_HIST_MAX) soc->tx_hw_desc_history->index = 0;