wfb-ng/patches/nanopi-neo2-4.14.52-crda-disable.patch
2018-11-07 11:52:25 +03:00

135 lines
3.8 KiB
Diff

diff --git a/net/wireless/db.txt b/net/wireless/db.txt
index a2fc3a0..2c3a976 100644
--- a/net/wireless/db.txt
+++ b/net/wireless/db.txt
@@ -1,17 +1,47 @@
-#
-# This file is a placeholder to prevent accidental build breakage if someone
-# enables CONFIG_CFG80211_INTERNAL_REGDB. Almost no one actually needs to
-# enable that build option.
-#
-# You should be using CRDA instead. It is even better if you use the CRDA
-# package provided by your distribution, since they will probably keep it
-# up-to-date on your behalf.
-#
-# If you _really_ intend to use CONFIG_CFG80211_INTERNAL_REGDB then you will
-# need to replace this file with one containing appropriately formatted
-# regulatory rules that cover the regulatory domains you will be using. Your
-# best option is to extract the db.txt file from the wireless-regdb git
-# repository:
-#
-# git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-regdb.git
-#
+country 00:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
+
+country DE:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
+
+country AT:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
+
+country CH:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
+
+country TW:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
+
+country AU:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
+
+country CA:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
+
+country US:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
+
+country BO:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
+
+country GB:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
+
+country CN:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
+
+country NZ:
+ (2302 - 2742 @ 40), (30)
+ (4910 - 5835 @ 160), (30)
diff --git a/net/wireless/reg.c b/net/wireless/reg.c
index 6e94f69..20e5c10 100644
--- a/net/wireless/reg.c
+++ b/net/wireless/reg.c
@@ -221,35 +221,20 @@ static const struct ieee80211_regdomain world_regdom = {
.alpha2 = "00",
.reg_rules = {
/* IEEE 802.11b/g, channels 1..11 */
- REG_RULE(2412-10, 2462+10, 40, 6, 20, 0),
+ REG_RULE(2312-10, 2462+10, 40, 6, 30, 0),
/* IEEE 802.11b/g, channels 12..13. */
- REG_RULE(2467-10, 2472+10, 20, 6, 20,
- NL80211_RRF_NO_IR | NL80211_RRF_AUTO_BW),
+ REG_RULE(2467-10, 2472+10, 40, 6, 30, 0),
/* IEEE 802.11 channel 14 - Only JP enables
* this and for 802.11b only */
- REG_RULE(2484-10, 2484+10, 20, 6, 20,
- NL80211_RRF_NO_IR |
- NL80211_RRF_NO_OFDM),
+ REG_RULE(2484-10, 2732+10, 40, 6, 30, 0),
/* IEEE 802.11a, channel 36..48 */
- REG_RULE(5180-10, 5240+10, 80, 6, 20,
- NL80211_RRF_NO_IR |
- NL80211_RRF_AUTO_BW),
-
+ REG_RULE(4920-10, 5240+10, 160, 6, 30, 0),
/* IEEE 802.11a, channel 52..64 - DFS required */
- REG_RULE(5260-10, 5320+10, 80, 6, 20,
- NL80211_RRF_NO_IR |
- NL80211_RRF_AUTO_BW |
- NL80211_RRF_DFS),
-
+ REG_RULE(5260-10, 5320+10, 160, 6, 30, 0),
/* IEEE 802.11a, channel 100..144 - DFS required */
- REG_RULE(5500-10, 5720+10, 160, 6, 20,
- NL80211_RRF_NO_IR |
- NL80211_RRF_DFS),
-
+ REG_RULE(5500-10, 5720+10, 160, 6, 30, 0),
/* IEEE 802.11a, channel 149..165 */
- REG_RULE(5745-10, 5825+10, 80, 6, 20,
- NL80211_RRF_NO_IR),
-
+ REG_RULE(5745-10, 6100+10, 160, 6, 30, 0),
/* IEEE 802.11ad (60GHz), channels 1..3 */
REG_RULE(56160+2160*1-1080, 56160+2160*3+1080, 2160, 0, 0, 0),
}
@@ -3193,7 +3178,7 @@ void wiphy_regulatory_deregister(struct wiphy *wiphy)
int cfg80211_get_unii(int freq)
{
/* UNII-1 */
- if (freq >= 5150 && freq <= 5250)
+ if (freq >= 4920 && freq <= 5250)
return 0;
/* UNII-2A */
@@ -3209,7 +3194,7 @@ int cfg80211_get_unii(int freq)
return 3;
/* UNII-3 */
- if (freq > 5725 && freq <= 5825)
+ if (freq > 5725 && freq <= 6100)
return 4;
return -EINVAL;