diff options
| -rw-r--r-- | CORE/CLD_TXRX/TXRX/ol_tx_queue.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/CORE/CLD_TXRX/TXRX/ol_tx_queue.c b/CORE/CLD_TXRX/TXRX/ol_tx_queue.c index bf993d3667de..2cb50e219470 100644 --- a/CORE/CLD_TXRX/TXRX/ol_tx_queue.c +++ b/CORE/CLD_TXRX/TXRX/ol_tx_queue.c @@ -111,7 +111,15 @@ ol_tx_queue_vdev_flush(struct ol_txrx_pdev_t *pdev, struct ol_txrx_vdev_t *vdev) /* flush VDEV TX queues */ for (i = 0; i < OL_TX_VDEV_NUM_QUEUES; i++) { txq = &vdev->txqs[i]; - ol_tx_queue_free(pdev, txq, (i + OL_TX_NUM_TIDS)); + /* + * currently txq of MCAST_BCAST packet is using tid + * HTT_TX_EXT_TID_NON_QOS_MCAST_BCAST when instered into scheduler, + * so use same tid when flush + */ + if (i == 0) + ol_tx_queue_free(pdev, txq, HTT_TX_EXT_TID_NON_QOS_MCAST_BCAST); + else + ol_tx_queue_free(pdev, txq, (i + OL_TX_NUM_TIDS)); } /* flush PEER TX queues */ do { |
