ath10k: fix copy engine 5 destination ring stuck

Kalle Valo kvalo at qca.qualcomm.com
Wed Sep 28 02:48:58 PDT 2016


Rajkumar Manoharan <rmanohar at qti.qualcomm.com> wrote:
> Firmware is running watchdog timer for tracking copy engine ring index
> and write index. Whenever both indices are stuck at same location for
> given duration, watchdog will be trigger to assert target. While
> updating copy engine destination ring write index, driver ensures that
> write index will not be same as read index by finding delta between these
> two indices (CE_RING_DELTA).
> 
> HTT target to host copy engine (CE5) is special case where ring buffers
> will be reused and delta check is not applied while updating write index.
> In rare scenario, whenever CE5 ring is full, both indices will be referring
> same location and this is causing CE ring stuck issue as explained
> above. This issue is originally reported on IPQ4019 during long hour stress
> testing and during veriwave max clients testsuites. The same issue is
> also observed in other chips as well. Fix this by ensuring that write
> index is one less than read index which means that full ring is
> available for receiving data.
> 
> Cc: stable at vger.kernel.org
> Tested-by: Tamizh chelvam <c_traja at qti.qualcomm.com>
> Signed-off-by: Rajkumar Manoharan <rmanohar at qti.qualcomm.com>

Patch applied to ath-next branch of ath.git, thanks.

0628467f97b5 ath10k: fix copy engine 5 destination ring stuck

-- 
https://patchwork.kernel.org/patch/9343317/

Documentation about submitting wireless patches and checking status
from patchwork:

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches




More information about the ath10k mailing list