diff options
author | Larry Finger <Larry.Finger@lwfinger.net> | 2011-07-01 15:56:11 +0200 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-07-05 21:26:55 +0200 |
commit | 45a771385ceb644941b195f37ab98f7db39776bd (patch) | |
tree | c3b42f77d0aa67b3b64e6550b09cd2e3b9e8c04b | |
parent | rtlwifi: rtl8192de: Replace loops calling udelay with single mdelay (diff) | |
download | linux-45a771385ceb644941b195f37ab98f7db39776bd.tar.xz linux-45a771385ceb644941b195f37ab98f7db39776bd.zip |
rtlwifi: rtl8192de: Fix error exit from hw_init
In routine rtl92de_hw_init(), there are two places where a failure is
not handled correctly.
Reported-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/net/wireless/rtlwifi/rtl8192de/hw.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/net/wireless/rtlwifi/rtl8192de/hw.c b/drivers/net/wireless/rtlwifi/rtl8192de/hw.c index 5c84131f62e5..5a65bea4cb8f 100644 --- a/drivers/net/wireless/rtlwifi/rtl8192de/hw.c +++ b/drivers/net/wireless/rtlwifi/rtl8192de/hw.c @@ -932,8 +932,8 @@ int rtl92de_hw_init(struct ieee80211_hw *hw) RT_TRACE(rtlpriv, COMP_ERR, DBG_WARNING, ("Failed to download FW. Init HW " "without FW..\n")); - err = 1; rtlhal->fw_ready = false; + return 1; } else { rtlhal->fw_ready = true; } @@ -1044,6 +1044,11 @@ int rtl92de_hw_init(struct ieee80211_hw *hw) if (((tmp_rega & BIT(11)) == BIT(11))) break; } + /* check that loop was successful. If not, exit now */ + if (i == 10000) { + rtlpci->init_ready = false; + return 1; + } } } rtlpci->init_ready = true; |