summaryrefslogtreecommitdiff
path: root/net/wireless
diff options
context:
space:
mode:
authorAlexei Avshalom Lazar <ailizaro@codeaurora.org>2018-08-13 15:33:00 +0300
committerJohannes Berg <johannes.berg@intel.com>2018-08-28 12:23:08 +0300
commit9cf0a0b4b64ae103cf0e7dfaa72b44ecda24c0eb (patch)
treefea11a7f68a5ecd192b168f45308c6f088e94ad2 /net/wireless
parent21a5d4c3a45ca608477a083096cfbce76e449a0c (diff)
downloadlinux-9cf0a0b4b64ae103cf0e7dfaa72b44ecda24c0eb.tar.xz
cfg80211: Add support for 60GHz band channels 5 and 6
The current support in the 60GHz band is for channels 1-4. Add support for channels 5 and 6. This requires enlarging ieee80211_channel.center_freq from u16 to u32. Signed-off-by: Alexei Avshalom Lazar <ailizaro@codeaurora.org> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/wireless')
-rw-r--r--net/wireless/reg.c2
-rw-r--r--net/wireless/trace.h2
-rw-r--r--net/wireless/util.c6
3 files changed, 5 insertions, 5 deletions
diff --git a/net/wireless/reg.c b/net/wireless/reg.c
index 325d74a94a36..043d43573ca2 100644
--- a/net/wireless/reg.c
+++ b/net/wireless/reg.c
@@ -3301,7 +3301,7 @@ void regulatory_hint_disconnect(void)
restore_regulatory_settings(false);
}
-static bool freq_is_chan_12_13_14(u16 freq)
+static bool freq_is_chan_12_13_14(u32 freq)
{
if (freq == ieee80211_channel_to_frequency(12, NL80211_BAND_2GHZ) ||
freq == ieee80211_channel_to_frequency(13, NL80211_BAND_2GHZ) ||
diff --git a/net/wireless/trace.h b/net/wireless/trace.h
index 7c73510b161f..5e7eec849200 100644
--- a/net/wireless/trace.h
+++ b/net/wireless/trace.h
@@ -112,7 +112,7 @@
} while (0)
#define CHAN_ENTRY __field(enum nl80211_band, band) \
- __field(u16, center_freq)
+ __field(u32, center_freq)
#define CHAN_ASSIGN(chan) \
do { \
if (chan) { \
diff --git a/net/wireless/util.c b/net/wireless/util.c
index 7bdcfe19b3ef..2a89db5f2db7 100644
--- a/net/wireless/util.c
+++ b/net/wireless/util.c
@@ -88,7 +88,7 @@ int ieee80211_channel_to_frequency(int chan, enum nl80211_band band)
return 5000 + chan * 5;
break;
case NL80211_BAND_60GHZ:
- if (chan < 5)
+ if (chan < 7)
return 56160 + chan * 2160;
break;
default:
@@ -109,7 +109,7 @@ int ieee80211_frequency_to_channel(int freq)
return (freq - 4000) / 5;
else if (freq <= 45000) /* DMG band lower limit */
return (freq - 5000) / 5;
- else if (freq >= 58320 && freq <= 64800)
+ else if (freq >= 58320 && freq <= 70200)
return (freq - 56160) / 2160;
else
return 0;
@@ -1568,7 +1568,7 @@ bool ieee80211_chandef_to_operating_class(struct cfg80211_chan_def *chandef,
}
/* 56.16 GHz, channel 1..4 */
- if (freq >= 56160 + 2160 * 1 && freq <= 56160 + 2160 * 4) {
+ if (freq >= 56160 + 2160 * 1 && freq <= 56160 + 2160 * 6) {
if (chandef->width >= NL80211_CHAN_WIDTH_40)
return false;