qcacld-3.0: Prevent invalid ipa suspend indication to fw

Invalid ipa suspend pipe indication is going to firmware
due to invalid handling of sap_num_connected_sta counter.
Prevent invalid ipa suspend indication to fw when ipa
pipes are down.
Propagation from qcacld-2.0 to qcacld-3.0.

Change-Id: Id7ac76bedc20aac39199e14b7042cfb58ba255fe
CRs-Fixed: 1036471
diff --git a/core/hdd/src/wlan_hdd_ipa.c b/core/hdd/src/wlan_hdd_ipa.c
index bf137bb..0db3a70 100644
--- a/core/hdd/src/wlan_hdd_ipa.c
+++ b/core/hdd/src/wlan_hdd_ipa.c
@@ -5730,7 +5730,8 @@
 			/* Disable IPA UC TX PIPE when STA disconnected */
 			if (!hdd_ipa->num_iface &&
 			    (HDD_IPA_UC_NUM_WDI_PIPE ==
-			    hdd_ipa->activated_fw_pipe))
+			    hdd_ipa->activated_fw_pipe) &&
+				!hdd_ipa->ipa_pipes_down)
 				hdd_ipa_uc_handle_last_discon(hdd_ipa);
 		}
 
@@ -5761,7 +5762,8 @@
 
 		if ((!hdd_ipa->num_iface) &&
 			(HDD_IPA_UC_NUM_WDI_PIPE ==
-				hdd_ipa->activated_fw_pipe)) {
+				hdd_ipa->activated_fw_pipe) &&
+				!hdd_ipa->ipa_pipes_down) {
 			if (cds_is_driver_unloading()) {
 				/*
 				 * We disable WDI pipes directly here since
@@ -5907,7 +5909,8 @@
 				hdd_ipa->uc_loaded == true) {
 			if ((false == hdd_ipa->resource_unloading)
 			    && (HDD_IPA_UC_NUM_WDI_PIPE ==
-				hdd_ipa->activated_fw_pipe)) {
+				hdd_ipa->activated_fw_pipe) &&
+				!hdd_ipa->ipa_pipes_down) {
 				hdd_ipa_uc_handle_last_discon(hdd_ipa);
 			}