Ver Fonte

qcacld-3.0: Fix data stall during TDLS Offchan Operation

In non concurrency scenario with TDLS Offchan link, FW is sending
two pauses namely PAUSE_TYPE_CHOP and PAUSE_TYPE_CHOP_TDLS_OFFCHAN
back to back when DUT dwells between TDLS Off channel and AP channel
respectively. HOST handles these events as vdev based event instead
of peer based event and remove all the tx queues from scheduler for
all the peer irrespective of the pause type. This will lead to data
stall in TDLS offchan scenarios, as at any point of time, host will
be receiving one of the two pauses and keep its peer queues out of
scheduler.

Changes are done to decouple the handling of pause/unpause events
for TDLS peers with Offchan enabled from vdev based pause/unpause.
TDLS peers will be paused/unpaused based on PAUSE_TYPE_CHOP_TDLS_OFFCHAN
pause type. Other pause/unpause events will be handled as usual.

Change-Id: Iccb46fd6d121d5df6d53633c9978ddc8e02f588f
CRs-Fixed: 2558612
nakul kachhwaha há 5 anos atrás
pai
commit
d2175bc557
1 ficheiros alterados com 1 adições e 1 exclusões
  1. 1 1
      pmo/core/src/wlan_pmo_suspend_resume.c

+ 1 - 1
pmo/core/src/wlan_pmo_suspend_resume.c

@@ -655,7 +655,7 @@ static void pmo_unpause_all_vdev(struct wlan_objmgr_psoc *psoc,
 		if (pmo_core_vdev_get_pause_bitmap(psoc_ctx, vdev_id)) {
 			cdp_fc_vdev_unpause(pmo_core_psoc_get_dp_handle(psoc),
 					    vdev_dp,
-					    0xffffffff);
+					    0xffffffff, 0);
 			if (psoc_ctx->pause_bitmap_notifier)
 				psoc_ctx->pause_bitmap_notifier(vdev_id, 0);
 		}