summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rtlwifi/rtl8192de/hw.c
diff options
context:
space:
mode:
authorLarry Finger2011-07-01 15:56:11 +0200
committerJohn W. Linville2011-07-05 21:26:55 +0200
commit45a771385ceb644941b195f37ab98f7db39776bd (patch)
treec3b42f77d0aa67b3b64e6550b09cd2e3b9e8c04b /drivers/net/wireless/rtlwifi/rtl8192de/hw.c
parentrtlwifi: rtl8192de: Replace loops calling udelay with single mdelay (diff)
downloadkernel-qcow2-linux-45a771385ceb644941b195f37ab98f7db39776bd.tar.gz
kernel-qcow2-linux-45a771385ceb644941b195f37ab98f7db39776bd.tar.xz
kernel-qcow2-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>
Diffstat (limited to 'drivers/net/wireless/rtlwifi/rtl8192de/hw.c')
-rw-r--r--drivers/net/wireless/rtlwifi/rtl8192de/hw.c7
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;