diff options
Diffstat (limited to 'drivers/net/wireless/ath/carl9170/usb.c')
| -rw-r--r-- | drivers/net/wireless/ath/carl9170/usb.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/carl9170/usb.c b/drivers/net/wireless/ath/carl9170/usb.c index c9f93310c0d6..76842e6ca38e 100644 --- a/drivers/net/wireless/ath/carl9170/usb.c +++ b/drivers/net/wireless/ath/carl9170/usb.c | |||
| @@ -651,6 +651,7 @@ int carl9170_exec_cmd(struct ar9170 *ar, const enum carl9170_cmd_oids cmd, | |||
| 651 | unsigned int plen, void *payload, unsigned int outlen, void *out) | 651 | unsigned int plen, void *payload, unsigned int outlen, void *out) |
| 652 | { | 652 | { |
| 653 | int err = -ENOMEM; | 653 | int err = -ENOMEM; |
| 654 | unsigned long time_left; | ||
| 654 | 655 | ||
| 655 | if (!IS_ACCEPTING_CMD(ar)) | 656 | if (!IS_ACCEPTING_CMD(ar)) |
| 656 | return -EIO; | 657 | return -EIO; |
| @@ -672,8 +673,8 @@ int carl9170_exec_cmd(struct ar9170 *ar, const enum carl9170_cmd_oids cmd, | |||
| 672 | err = __carl9170_exec_cmd(ar, &ar->cmd, false); | 673 | err = __carl9170_exec_cmd(ar, &ar->cmd, false); |
| 673 | 674 | ||
| 674 | if (!(cmd & CARL9170_CMD_ASYNC_FLAG)) { | 675 | if (!(cmd & CARL9170_CMD_ASYNC_FLAG)) { |
| 675 | err = wait_for_completion_timeout(&ar->cmd_wait, HZ); | 676 | time_left = wait_for_completion_timeout(&ar->cmd_wait, HZ); |
| 676 | if (err == 0) { | 677 | if (time_left == 0) { |
| 677 | err = -ETIMEDOUT; | 678 | err = -ETIMEDOUT; |
| 678 | goto err_unbuf; | 679 | goto err_unbuf; |
| 679 | } | 680 | } |
