rtlwifi: Fix missing country code for Great Britain

Some RTL8821AE devices sold in Great Britain have the country code of
0x25 encoded in their EEPROM. This value is not tested in the routine
that establishes the regulatory info for the chip. The fix is to set
this code to have the same capabilities as the EU countries. In addition,
the channels allowed for COUNTRY_CODE_ETSI were more properly suited
for China and Israel, not the EU. This problem has also been fixed.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Stable <stable@vger.kernel.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
Larry Finger 2016-08-22 14:27:59 -05:00 committed by Kalle Valo
parent b46b599328
commit 0c9d349153

View File

@ -345,9 +345,9 @@ static const struct ieee80211_regdomain *_rtl_regdomain_select(
return &rtl_regdom_no_midband; return &rtl_regdom_no_midband;
case COUNTRY_CODE_IC: case COUNTRY_CODE_IC:
return &rtl_regdom_11; return &rtl_regdom_11;
case COUNTRY_CODE_ETSI:
case COUNTRY_CODE_TELEC_NETGEAR: case COUNTRY_CODE_TELEC_NETGEAR:
return &rtl_regdom_60_64; return &rtl_regdom_60_64;
case COUNTRY_CODE_ETSI:
case COUNTRY_CODE_SPAIN: case COUNTRY_CODE_SPAIN:
case COUNTRY_CODE_FRANCE: case COUNTRY_CODE_FRANCE:
case COUNTRY_CODE_ISRAEL: case COUNTRY_CODE_ISRAEL:
@ -406,6 +406,8 @@ static u8 channel_plan_to_country_code(u8 channelplan)
return COUNTRY_CODE_WORLD_WIDE_13; return COUNTRY_CODE_WORLD_WIDE_13;
case 0x22: case 0x22:
return COUNTRY_CODE_IC; return COUNTRY_CODE_IC;
case 0x25:
return COUNTRY_CODE_ETSI;
case 0x32: case 0x32:
return COUNTRY_CODE_TELEC_NETGEAR; return COUNTRY_CODE_TELEC_NETGEAR;
case 0x41: case 0x41: