linux-omap.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
To: Kalle Valo <kvalo-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
Cc: Eyal Reizer <eyalr-l0cyMroinI0@public.gmane.org>,
	Kishon Vijay Abraham I <kishon-l0cyMroinI0@public.gmane.org>,
	Guy Mishol <guym-l0cyMroinI0@public.gmane.org>,
	Luca Coelho
	<luciano.coelho-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
	Maital Hahn <maitalm-l0cyMroinI0@public.gmane.org>,
	Maxim Altshul <maxim.altshul-l0cyMroinI0@public.gmane.org>,
	Shahar Patury <shaharp-l0cyMroinI0@public.gmane.org>,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: [PATCH 2/8] wlcore: Make sure PM calls are paired
Date: Tue, 19 Jun 2018 02:43:36 -0700	[thread overview]
Message-ID: <20180619094342.81831-3-tony@atomide.com> (raw)
In-Reply-To: <20180619094342.81831-1-tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>

The call to wl1271_ps_elp_wakeup() in wl12xx_queue_recovery_work() is
unpaired. Let's remove it and add paired calls to wl1271_recovery_work()
instead in preparation for changing things to use runtime PM.

Signed-off-by: Tony Lindgren <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
---
 drivers/net/wireless/ti/wlcore/main.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/ti/wlcore/main.c b/drivers/net/wireless/ti/wlcore/main.c
--- a/drivers/net/wireless/ti/wlcore/main.c
+++ b/drivers/net/wireless/ti/wlcore/main.c
@@ -796,8 +796,6 @@ void wl12xx_queue_recovery_work(struct wl1271 *wl)
 
 		wl->state = WLCORE_STATE_RESTARTING;
 		set_bit(WL1271_FLAG_RECOVERY_IN_PROGRESS, &wl->flags);
-		wl1271_ps_elp_wakeup(wl);
-		wlcore_disable_interrupts_nosync(wl);
 		ieee80211_queue_work(wl->hw, &wl->recovery_work);
 	}
 }
@@ -919,12 +917,18 @@ static void wl1271_recovery_work(struct work_struct *work)
 		container_of(work, struct wl1271, recovery_work);
 	struct wl12xx_vif *wlvif;
 	struct ieee80211_vif *vif;
+	int error;
 
 	mutex_lock(&wl->mutex);
 
 	if (wl->state == WLCORE_STATE_OFF || wl->plt)
 		goto out_unlock;
 
+	error = wl1271_ps_elp_wakeup(wl);
+	if (error < 0)
+		wl1271_warning("Enable for recovery failed");
+	wlcore_disable_interrupts_nosync(wl);
+
 	if (!test_bit(WL1271_FLAG_INTENDED_FW_RECOVERY, &wl->flags)) {
 		if (wl->conf.fwlog.output == WL12XX_FWLOG_OUTPUT_HOST)
 			wl12xx_read_fwlog_panic(wl);
@@ -967,6 +971,8 @@ static void wl1271_recovery_work(struct work_struct *work)
 	 */
 	wlcore_wake_queues(wl, WLCORE_QUEUE_STOP_REASON_FW_RESTART);
 
+	wl1271_ps_elp_sleep(wl);
+
 out_unlock:
 	wl->watchdog_recovery = false;
 	clear_bit(WL1271_FLAG_RECOVERY_IN_PROGRESS, &wl->flags);
-- 
2.17.1

  parent reply	other threads:[~2018-06-19  9:43 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-19  9:43 [PATCHv4 0/8] Runtime PM support for wlcore Tony Lindgren
     [not found] ` <20180619094342.81831-1-tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2018-06-19  9:43   ` [PATCH 1/8] wlcore: Add missing PM call for wlcore_cmd_wait_for_event_or_timeout() Tony Lindgren
     [not found]     ` <20180619094342.81831-2-tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2018-06-27 15:46       ` [1/8] " Kalle Valo
2018-06-19  9:43   ` Tony Lindgren [this message]
2018-06-19  9:43   ` [PATCH 3/8] wlcore: Add support for runtime PM Tony Lindgren
2018-06-19  9:43   ` [PATCH 4/8] wlcore: Fix misplaced PM call for scan_complete_work() Tony Lindgren
2018-06-19  9:43   ` [PATCH 5/8] wclore: Fix timout errors after recovery Tony Lindgren
     [not found]     ` <20180619094342.81831-6-tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2018-06-27 15:41       ` [5/8] " Kalle Valo
     [not found]     ` <20180627154152.BCECB60714@smtp.codeaurora.org>
     [not found]       ` <20180627154152.BCECB60714-4h6buKAYkuurB/BPivuO70B+6BGkLq7r@public.gmane.org>
2018-06-28  9:07         ` Tony Lindgren
     [not found]           ` <20180628090739.GM112168-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2018-06-28  9:19             ` Kalle Valo
2018-06-19  9:43   ` [PATCH 6/8] wlcore: Use generic runtime pm calls for wowlan elp configuration Tony Lindgren
2018-06-19  9:43   ` [PATCH 7/8] wlcore: Make sure firmware is initialized in wl1271_op_add_interface() Tony Lindgren
2018-06-19  9:43   ` [PATCH 8/8] wlcore: Enable runtime PM autosuspend support Tony Lindgren
2018-06-26 15:53   ` [PATCHv4 0/8] Runtime PM support for wlcore 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=20180619094342.81831-3-tony@atomide.com \
    --to=tony-4v6ys6ai5vpbdgjk7y7tuq@public.gmane.org \
    --cc=eyalr-l0cyMroinI0@public.gmane.org \
    --cc=guym-l0cyMroinI0@public.gmane.org \
    --cc=kishon-l0cyMroinI0@public.gmane.org \
    --cc=kvalo-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
    --cc=linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=luciano.coelho-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
    --cc=maitalm-l0cyMroinI0@public.gmane.org \
    --cc=maxim.altshul-l0cyMroinI0@public.gmane.org \
    --cc=shaharp-l0cyMroinI0@public.gmane.org \
    /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).