diff options
Diffstat (limited to 'drivers/net/wireless/libertas/cmd.c')
-rw-r--r-- | drivers/net/wireless/libertas/cmd.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/wireless/libertas/cmd.c b/drivers/net/wireless/libertas/cmd.c index cf261d3487fd..75427e61898d 100644 --- a/drivers/net/wireless/libertas/cmd.c +++ b/drivers/net/wireless/libertas/cmd.c | |||
@@ -1858,6 +1858,9 @@ static void lbs_send_confirmsleep(struct lbs_private *priv) | |||
1858 | 1858 | ||
1859 | spin_lock_irqsave(&priv->driver_lock, flags); | 1859 | spin_lock_irqsave(&priv->driver_lock, flags); |
1860 | 1860 | ||
1861 | /* We don't get a response on the sleep-confirmation */ | ||
1862 | priv->dnld_sent = DNLD_RES_RECEIVED; | ||
1863 | |||
1861 | /* If nothing to do, go back to sleep (?) */ | 1864 | /* If nothing to do, go back to sleep (?) */ |
1862 | if (!__kfifo_len(priv->event_fifo) && !priv->resp_len[priv->resp_idx]) | 1865 | if (!__kfifo_len(priv->event_fifo) && !priv->resp_len[priv->resp_idx]) |
1863 | priv->psstate = PS_STATE_SLEEP; | 1866 | priv->psstate = PS_STATE_SLEEP; |
@@ -1920,12 +1923,12 @@ void lbs_ps_confirm_sleep(struct lbs_private *priv) | |||
1920 | 1923 | ||
1921 | lbs_deb_enter(LBS_DEB_HOST); | 1924 | lbs_deb_enter(LBS_DEB_HOST); |
1922 | 1925 | ||
1926 | spin_lock_irqsave(&priv->driver_lock, flags); | ||
1923 | if (priv->dnld_sent) { | 1927 | if (priv->dnld_sent) { |
1924 | allowed = 0; | 1928 | allowed = 0; |
1925 | lbs_deb_host("dnld_sent was set\n"); | 1929 | lbs_deb_host("dnld_sent was set\n"); |
1926 | } | 1930 | } |
1927 | 1931 | ||
1928 | spin_lock_irqsave(&priv->driver_lock, flags); | ||
1929 | /* In-progress command? */ | 1932 | /* In-progress command? */ |
1930 | if (priv->cur_cmd) { | 1933 | if (priv->cur_cmd) { |
1931 | allowed = 0; | 1934 | allowed = 0; |