qcacmn: Remove skip HP update logic during tx pause flag is set
Currently HP update can skip for few packets if the system suspend is happening in parallel with tx. This could lead to SMMU fault if the skipped HP update goes after tx desc force free. Remove the tx pause check in HP updates and have the check before calling dp_tx_send in case of intra-bss forward case. No special handling is needed for non intra-bss case as we don't expect packets from network stack after suspend. Change-Id: Id4f2cefcc0a14e7c16438b9bda5cb1d55eb05050 CRs-Fixed: 3327818
This commit is contained in:

committad av
Madan Koyyalamudi

förälder
b9b7e87a10
incheckning
cdbbb3ed59
@@ -1635,8 +1635,7 @@ dp_tx_ring_access_end_wrapper(struct dp_soc *soc,
|
||||
|
||||
ret = hif_rtpm_get(HIF_RTPM_GET_ASYNC, HIF_RTPM_ID_DP);
|
||||
if (QDF_IS_STATUS_SUCCESS(ret)) {
|
||||
if (hif_system_pm_state_check(soc->hif_handle) ||
|
||||
qdf_unlikely(soc->is_tx_pause)) {
|
||||
if (hif_system_pm_state_check(soc->hif_handle)) {
|
||||
dp_tx_hal_ring_access_end_reap(soc, hal_ring_hdl);
|
||||
hal_srng_set_event(hal_ring_hdl, HAL_SRNG_FLUSH_EVENT);
|
||||
hal_srng_inc_flush_cnt(hal_ring_hdl);
|
||||
@@ -1661,8 +1660,7 @@ dp_tx_ring_access_end_wrapper(struct dp_soc *soc,
|
||||
hal_ring_handle_t hal_ring_hdl,
|
||||
int coalesce)
|
||||
{
|
||||
if (hif_system_pm_state_check(soc->hif_handle) ||
|
||||
qdf_unlikely(soc->is_tx_pause)) {
|
||||
if (hif_system_pm_state_check(soc->hif_handle)) {
|
||||
dp_tx_hal_ring_access_end_reap(soc, hal_ring_hdl);
|
||||
hal_srng_set_event(hal_ring_hdl, HAL_SRNG_FLUSH_EVENT);
|
||||
hal_srng_inc_flush_cnt(hal_ring_hdl);
|
||||
|
Referens i nytt ärende
Block a user