diff --git a/hif/src/sdio/hif_sdio_recv.c b/hif/src/sdio/hif_sdio_recv.c index ce7666cc34d3..2f81932a4c78 100644 --- a/hif/src/sdio/hif_sdio_recv.c +++ b/hif/src/sdio/hif_sdio_recv.c @@ -283,10 +283,6 @@ QDF_STATUS hif_dev_alloc_and_prepare_rx_packets(struct hif_sdio_device *pdev, } if (QDF_IS_STATUS_ERROR(status)) { - if (QDF_STATUS_E_RESOURCES == status) { - /* this is actually okay */ - status = QDF_STATUS_SUCCESS; - } break; } @@ -294,7 +290,9 @@ QDF_STATUS hif_dev_alloc_and_prepare_rx_packets(struct hif_sdio_device *pdev, UNLOCK_HIF_DEV_RX(pdev); - if (QDF_IS_STATUS_ERROR(status)) { + /* for NO RESOURCE error, no need to flush data queue */ + if (QDF_IS_STATUS_ERROR(status) + && (status != QDF_STATUS_E_RESOURCES)) { while (!HTC_QUEUE_EMPTY(queue)) packet = htc_packet_dequeue(queue); }