rtlwifi: rtl8192ce: Fix loading of incorrect firmware
In commitcf4747d753
("rtlwifi: Fix regression caused by commitd86e647688
, an error in the edit results in the wrong firmware being loaded for some models of the RTL8188/8192CE. In this condition, the connection suffered from high ping latency, slow transfer rates, and required higher signal strengths to work at all See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=853073, https://bugzilla.opensuse.org/show_bug.cgi?id=1017471, and https://github.com/lwfinger/rtlwifi_new/issues/203 for descriptions of the problems. This patch fixes all of those problems. Fixes:cf4747d753
("rtlwifi: Fix regression caused by commit d86e64768859") Signed-off-by: Jurij Smakov <jurij@wooyd.org> Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Cc: Stable <stable@vger.kernel.org> # 4.9+ Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
parent
2b1d530cb3
commit
52f5631a4c
|
@ -92,7 +92,7 @@ int rtl92c_init_sw_vars(struct ieee80211_hw *hw)
|
|||
struct rtl_priv *rtlpriv = rtl_priv(hw);
|
||||
struct rtl_pci *rtlpci = rtl_pcidev(rtl_pcipriv(hw));
|
||||
struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw));
|
||||
char *fw_name = "rtlwifi/rtl8192cfwU.bin";
|
||||
char *fw_name;
|
||||
|
||||
rtl8192ce_bt_reg_init(hw);
|
||||
|
||||
|
@ -164,8 +164,13 @@ int rtl92c_init_sw_vars(struct ieee80211_hw *hw)
|
|||
}
|
||||
|
||||
/* request fw */
|
||||
if (IS_81XXC_VENDOR_UMC_B_CUT(rtlhal->version))
|
||||
if (IS_VENDOR_UMC_A_CUT(rtlhal->version) &&
|
||||
!IS_92C_SERIAL(rtlhal->version))
|
||||
fw_name = "rtlwifi/rtl8192cfwU.bin";
|
||||
else if (IS_81XXC_VENDOR_UMC_B_CUT(rtlhal->version))
|
||||
fw_name = "rtlwifi/rtl8192cfwU_B.bin";
|
||||
else
|
||||
fw_name = "rtlwifi/rtl8192cfw.bin";
|
||||
|
||||
rtlpriv->max_fw_size = 0x4000;
|
||||
pr_info("Using firmware %s\n", fw_name);
|
||||
|
|
Loading…
Reference in New Issue