aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/rtwn/if_rtwn.c
diff options
context:
space:
mode:
authorBjoern A. Zeeb <bz@FreeBSD.org>2020-08-24 13:15:08 +0000
committerBjoern A. Zeeb <bz@FreeBSD.org>2020-08-24 13:15:08 +0000
commit2b9f12f6b2f5284999ab0a63037943dea5cfbedf (patch)
treedefdf18c9d25b017cd3697aa4f61ab270b6059c9 /sys/dev/rtwn/if_rtwn.c
parenta333a508a20df6d9c94927a0176d40c896dd52de (diff)
Notes
Diffstat (limited to 'sys/dev/rtwn/if_rtwn.c')
-rw-r--r--sys/dev/rtwn/if_rtwn.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/sys/dev/rtwn/if_rtwn.c b/sys/dev/rtwn/if_rtwn.c
index e410010cc4333..499ae4ebcd6f9 100644
--- a/sys/dev/rtwn/if_rtwn.c
+++ b/sys/dev/rtwn/if_rtwn.c
@@ -1525,25 +1525,29 @@ rtwn_getradiocaps(struct ieee80211com *ic,
{
struct rtwn_softc *sc = ic->ic_softc;
uint8_t bands[IEEE80211_MODE_BYTES];
- int i;
+ int cbw_flags, i;
+
+ cbw_flags = (ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40) ?
+ NET80211_CBW_FLAG_HT40 : 0;
memset(bands, 0, sizeof(bands));
setbit(bands, IEEE80211_MODE_11B);
setbit(bands, IEEE80211_MODE_11G);
setbit(bands, IEEE80211_MODE_11NG);
ieee80211_add_channels_default_2ghz(chans, maxchans, nchans,
- bands, !!(ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40));
+ bands, cbw_flags);
/* XXX workaround add_channel_list() limitations */
setbit(bands, IEEE80211_MODE_11A);
setbit(bands, IEEE80211_MODE_11NA);
for (i = 0; i < nitems(sc->chan_num_5ghz); i++) {
+
if (sc->chan_num_5ghz[i] == 0)
continue;
ieee80211_add_channel_list_5ghz(chans, maxchans, nchans,
sc->chan_list_5ghz[i], sc->chan_num_5ghz[i], bands,
- !!(ic->ic_htcaps & IEEE80211_HTCAP_CHWIDTH40));
+ cbw_flags);
}
}