Procházet zdrojové kódy

qcacld-3.0: Reset target suspend flag when wow ack time out

qcacld-2.0 to qcacld-3.0 propagation

During suspend request host send wow cmd to fwr and set
target suspend true so other wmi cmd won't send to fwr.
While waiting for wow ack/nack from fwr, if time out
happens then host inject crash and start self recovery.
But inject cmd is getting dropped due to target suspend is
set.

As a part of this fix, reset target suspend flag if timeout
occur for wow ack so self recovery can be triggered.

Change-Id: I1db556f9aa83fbf1324ddc1c1d205b0217b11bc2
CRs-Fixed: 983694
(cherry picked from commit 7aa878de9ba001e573cb63b52ddf4d78543bb673)
Mukul Sharma před 8 roky
rodič
revize
93206a4dff
1 změnil soubory, kde provedl 1 přidání a 1 odebrání
  1. 1 1
      core/wma/src/wma_features.c

+ 1 - 1
core/wma/src/wma_features.c

@@ -3857,6 +3857,7 @@ QDF_STATUS wma_enable_wow_in_fw(WMA_HANDLE handle)
 		WMA_LOGE("Credits:%d; Pending_Cmds: %d",
 			 wmi_get_host_credits(wma->wmi_handle),
 			 wmi_get_pending_cmds(wma->wmi_handle));
+		wmi_set_target_suspend(wma->wmi_handle, false);
 		if (!cds_is_driver_recovering()) {
 #ifdef CONFIG_CNSS
 			if (pMac->sme.enableSelfRecovery) {
@@ -3871,7 +3872,6 @@ QDF_STATUS wma_enable_wow_in_fw(WMA_HANDLE handle)
 			WMA_LOGE("%s: LOGP is in progress, ignore!", __func__);
 		}
 
-		wmi_set_target_suspend(wma->wmi_handle, false);
 		return QDF_STATUS_E_FAILURE;
 	}