Browse Source

qcacld-3.0: Return success for ps command in disconnected state

Driver won't handle the ps in disconnected state. But kernel can
give ps enable/disable command in non associated state hence return
success without posting the request to FW.

Change-Id: I6b559c30cff816c2ba056ef23633fb350e867db7
CRs-Fixed: 2321744
Bala Venkatesh 6 years ago
parent
commit
bd71eb03d9
1 changed files with 6 additions and 4 deletions
  1. 6 4
      core/sme/src/common/sme_power_save.c

+ 6 - 4
core/sme/src/common/sme_power_save.c

@@ -383,11 +383,13 @@ QDF_STATUS sme_ps_enable_disable(tHalHandle hal_ctx, uint32_t session_id,
 	status =  sme_enable_sta_ps_check(mac_ctx, session_id);
 	if (status != QDF_STATUS_SUCCESS) {
 		/*
-		 * In non associated state ps state will be disabled in FW.
-		 * Hence, return success if ps disable is requested
-		 * in disconnected state.
+		 * In non associated state driver wont handle the power save
+		 * But kernel expects return status success even
+		 * in the disconnected state.
+		 * TODO: If driver to remember the ps state to further use
+		 * after connection.
 		 */
-		if (command == SME_PS_DISABLE)
+		if (!csr_is_conn_state_connected_infra(mac_ctx, session_id))
 			status = QDF_STATUS_SUCCESS;
 		return status;
 	}