diff options
| -rw-r--r-- | drivers/net/wireless/libertas/if_cs.c | 13 |
1 files changed, 3 insertions, 10 deletions
diff --git a/drivers/net/wireless/libertas/if_cs.c b/drivers/net/wireless/libertas/if_cs.c index 04d7a251e3f0..8941919001bb 100644 --- a/drivers/net/wireless/libertas/if_cs.c +++ b/drivers/net/wireless/libertas/if_cs.c | |||
| @@ -595,7 +595,7 @@ static int if_cs_prog_helper(struct if_cs_card *card) | |||
| 595 | if (ret < 0) { | 595 | if (ret < 0) { |
| 596 | lbs_pr_err("can't download helper at 0x%x, ret %d\n", | 596 | lbs_pr_err("can't download helper at 0x%x, ret %d\n", |
| 597 | sent, ret); | 597 | sent, ret); |
| 598 | goto done; | 598 | goto err_release; |
| 599 | } | 599 | } |
| 600 | 600 | ||
| 601 | if (count == 0) | 601 | if (count == 0) |
| @@ -604,9 +604,8 @@ static int if_cs_prog_helper(struct if_cs_card *card) | |||
| 604 | sent += count; | 604 | sent += count; |
| 605 | } | 605 | } |
| 606 | 606 | ||
| 607 | err_release: | ||
| 607 | release_firmware(fw); | 608 | release_firmware(fw); |
| 608 | ret = 0; | ||
| 609 | |||
| 610 | done: | 609 | done: |
| 611 | lbs_deb_leave_args(LBS_DEB_CS, "ret %d", ret); | 610 | lbs_deb_leave_args(LBS_DEB_CS, "ret %d", ret); |
| 612 | return ret; | 611 | return ret; |
| @@ -676,14 +675,8 @@ static int if_cs_prog_real(struct if_cs_card *card) | |||
| 676 | } | 675 | } |
| 677 | 676 | ||
| 678 | ret = if_cs_poll_while_fw_download(card, IF_CS_SCRATCH, 0x5a); | 677 | ret = if_cs_poll_while_fw_download(card, IF_CS_SCRATCH, 0x5a); |
| 679 | if (ret < 0) { | 678 | if (ret < 0) |
| 680 | lbs_pr_err("firmware download failed\n"); | 679 | lbs_pr_err("firmware download failed\n"); |
| 681 | goto err_release; | ||
| 682 | } | ||
| 683 | |||
| 684 | ret = 0; | ||
| 685 | goto done; | ||
| 686 | |||
| 687 | 680 | ||
| 688 | err_release: | 681 | err_release: |
| 689 | release_firmware(fw); | 682 | release_firmware(fw); |
