From 38f1aa5597dad2ebf5a22e53812871e22d42ccfa Mon Sep 17 00:00:00 2001 From: lifeng Date: Mon, 23 Nov 2015 13:58:09 +0800 Subject: qcacld-2.0: Fix roaming take too long time The counting error of tx pending frames in high latency mode misleads the driver to waste time waiting for the outstanding packet to drain as roaming, but in fact there is no pending. Fix is to assign the "orig_target_tx_credit" atomic variable correctly when the wlan device attach. Change-Id: I7d277f66fa9763d4c8573ccaf3ff01512e14a780 CRs-Fixed: 943866 --- CORE/CLD_TXRX/TXRX/ol_txrx.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CORE/CLD_TXRX/TXRX/ol_txrx.c b/CORE/CLD_TXRX/TXRX/ol_txrx.c index 35576940b9da..74369051e810 100644 --- a/CORE/CLD_TXRX/TXRX/ol_txrx.c +++ b/CORE/CLD_TXRX/TXRX/ol_txrx.c @@ -408,6 +408,10 @@ ol_txrx_pdev_attach( ol_cfg_target_tx_credit(pdev->ctrl_pdev), &pdev->target_tx_credit); } + if (ol_cfg_is_high_latency(ctrl_pdev)) { + ol_tx_target_credit_init(pdev, desc_pool_size); + } + pdev->htt_pdev = htt_attach( pdev, ctrl_pdev, htc_pdev, osdev, desc_pool_size); if (!pdev->htt_pdev) { -- cgit v1.2.3