linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kalle Valo <kvalo@kernel.org>
To: mhi@lists.linux.dev
Cc: ath11k@lists.infradead.org, linux-wireless@vger.kernel.org
Subject: [PATCH RFC 3/8] wifi: ath11k: handle irq enable/disable in several code path
Date: Fri, 10 Nov 2023 12:21:57 +0200	[thread overview]
Message-ID: <20231110102202.3168243-4-kvalo@kernel.org> (raw)
In-Reply-To: <20231110102202.3168243-1-kvalo@kernel.org>

From: Baochen Qiang <quic_bqiang@quicinc.com>

For non WoW suspend/resume, ath11k host powers down whole hardware
when suspend and power up it when resume, the code path it goes
through is very like the ath11k reset logic.

In order to reuse that logic, do some IRQ management work to make
it work.

Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.30

Signed-off-by: Baochen Qiang <quic_bqiang@quicinc.com>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
---
 drivers/net/wireless/ath/ath11k/core.c | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/drivers/net/wireless/ath/ath11k/core.c b/drivers/net/wireless/ath/ath11k/core.c
index 0c6ecbb9a066..fbd6b6a0e12c 100644
--- a/drivers/net/wireless/ath/ath11k/core.c
+++ b/drivers/net/wireless/ath/ath11k/core.c
@@ -852,9 +852,6 @@ int ath11k_core_resume(struct ath11k_base *ab)
 		return ret;
 	}
 
-	ath11k_hif_ce_irq_enable(ab);
-	ath11k_hif_irq_enable(ab);
-
 	ret = ath11k_dp_rx_pktlog_start(ab);
 	if (ret) {
 		ath11k_warn(ab, "failed to start rx pktlog during resume: %d\n",
@@ -1775,10 +1772,9 @@ static int ath11k_core_reconfigure_on_crash(struct ath11k_base *ab)
 
 	mutex_lock(&ab->core_lock);
 	ath11k_thermal_unregister(ab);
-	ath11k_hif_irq_disable(ab);
 	ath11k_dp_pdev_free(ab);
 	ath11k_spectral_deinit(ab);
-	ath11k_hif_stop(ab);
+	ath11k_ce_cleanup_pipes(ab);
 	ath11k_wmi_detach(ab);
 	ath11k_dp_pdev_reo_cleanup(ab);
 	mutex_unlock(&ab->core_lock);
@@ -2033,8 +2029,8 @@ static void ath11k_core_reset(struct work_struct *work)
 	time_left = wait_for_completion_timeout(&ab->recovery_start,
 						ATH11K_RECOVER_START_TIMEOUT_HZ);
 
-	ath11k_hif_power_down(ab);
-	ath11k_hif_power_up(ab);
+	ath11k_hif_irq_disable(ab);
+	ath11k_hif_ce_irq_disable(ab);
 
 	ath11k_dbg(ab, ATH11K_DBG_BOOT, "reset started\n");
 }
-- 
2.39.2


  parent reply	other threads:[~2023-11-10 17:57 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-10 10:21 [PATCH RFC 0/8] wifi: ath11k: hibernation support Kalle Valo
2023-11-10 10:21 ` [PATCH RFC 1/8] bus: mhi: host: add mhi_power_down_no_destroy() Kalle Valo
2023-11-14  1:26   ` Mayank Rana
2023-11-10 10:21 ` [PATCH RFC 2/8] bus: mhi: host: add new interfaces to handle MHI channels directly Kalle Valo
2023-11-10 17:14   ` Jeffrey Hugo
2023-11-12  3:59     ` Baochen Qiang
2023-11-12 16:18       ` Jeffrey Hugo
2023-11-13  0:32         ` Baochen Qiang
2023-11-10 10:21 ` Kalle Valo [this message]
2023-11-10 10:21 ` [PATCH RFC 4/8] wifi: ath11k: remove MHI LOOPBACK channels Kalle Valo
2023-11-10 16:54   ` Jeffrey Hugo
2023-11-12  4:24     ` Baochen Qiang
2023-11-12 16:15       ` Jeffrey Hugo
2023-11-13  0:30         ` Baochen Qiang
2023-11-13 14:15         ` Kalle Valo
2023-11-13 14:26           ` Jeffrey Hugo
2023-11-13 15:04             ` Kalle Valo
2023-11-10 10:21 ` [PATCH RFC 5/8] wifi: ath11k: do not dump SRNG statistics during resume Kalle Valo
2023-11-10 10:22 ` [PATCH RFC 6/8] wifi: ath11k: fix warning on DMA ring capabilities event Kalle Valo
2023-11-10 10:22 ` [PATCH RFC 7/8] wifi: ath11k: thermal: don't try to register multiple times Kalle Valo
2023-11-10 10:22 ` [PATCH RFC 8/8] wifi: ath11k: support hibernation Kalle Valo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231110102202.3168243-4-kvalo@kernel.org \
    --to=kvalo@kernel.org \
    --cc=ath11k@lists.infradead.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=mhi@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).