diff options
Diffstat (limited to 'drivers/net/wireless/libertas/if_sdio.c')
-rw-r--r-- | drivers/net/wireless/libertas/if_sdio.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/wireless/libertas/if_sdio.c b/drivers/net/wireless/libertas/if_sdio.c index 13dfeda742bc..64dd345d30f5 100644 --- a/drivers/net/wireless/libertas/if_sdio.c +++ b/drivers/net/wireless/libertas/if_sdio.c | |||
@@ -324,7 +324,9 @@ static int if_sdio_wait_status(struct if_sdio_card *card, const u8 condition) | |||
324 | timeout = jiffies + HZ; | 324 | timeout = jiffies + HZ; |
325 | while (1) { | 325 | while (1) { |
326 | status = sdio_readb(card->func, IF_SDIO_STATUS, &ret); | 326 | status = sdio_readb(card->func, IF_SDIO_STATUS, &ret); |
327 | if (ret || (status & condition)) | 327 | if (ret) |
328 | return ret; | ||
329 | if ((status & condition) == condition) | ||
328 | break; | 330 | break; |
329 | if (time_after(jiffies, timeout)) | 331 | if (time_after(jiffies, timeout)) |
330 | return -ETIMEDOUT; | 332 | return -ETIMEDOUT; |