summaryrefslogtreecommitdiff
path: root/drivers/net/wireless/libertas
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2013-10-24 11:33:33 +0400
committerJohn W. Linville <linville@tuxdriver.com>2013-12-05 23:32:32 +0400
commitd94248ac2aef78e39a76321458a78ba7805dba2e (patch)
tree84e9129d10c24e519ba136bdda95783161f42c0d /drivers/net/wireless/libertas
parentc8520bcb784df69cf5960308846253814ec45db7 (diff)
downloadlinux-d94248ac2aef78e39a76321458a78ba7805dba2e.tar.xz
libertas/sdio: make sure card enters power-off when firmware is loaded.
Since firmware loading became async it is possible that if_sdio_finish_power_of is called with only one remaining runtime_pm reference, so it isn't safe to call pm_runtime_put_noidle. We must call pm_runtime_put(). Diagnosed-by: "Dr. H. Nikolaus Schaller" <hns@goldelico.com> Signed-off-by: NeilBrown <neilb@suse.de> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/libertas')
-rw-r--r--drivers/net/wireless/libertas/if_sdio.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/libertas/if_sdio.c b/drivers/net/wireless/libertas/if_sdio.c
index 991238afd1b6..828e7f4fc633 100644
--- a/drivers/net/wireless/libertas/if_sdio.c
+++ b/drivers/net/wireless/libertas/if_sdio.c
@@ -849,7 +849,7 @@ static void if_sdio_finish_power_on(struct if_sdio_card *card)
card->started = true;
/* Tell PM core that we don't need the card to be
* powered now */
- pm_runtime_put_noidle(&func->dev);
+ pm_runtime_put(&func->dev);
}
}