git: 351356090998 - main - rtwn: use ieee80211_ht_check_tx_ht40() to transmit HT40 frames
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 07 Dec 2024 00:23:08 UTC
The branch main has been updated by adrian: URL: https://cgit.FreeBSD.org/src/commit/?id=3513560909981a349c6edfca44fa2656b7eefeb5 commit 3513560909981a349c6edfca44fa2656b7eefeb5 Author: Adrian Chadd <adrian@FreeBSD.org> AuthorDate: 2024-12-02 07:13:40 +0000 Commit: Adrian Chadd <adrian@FreeBSD.org> CommitDate: 2024-12-07 00:22:32 +0000 rtwn: use ieee80211_ht_check_tx_ht40() to transmit HT40 frames Using ieee80211_ht_check_tx_ht40() means that not only the bss and node channel are checked, but the ni_chw value is also now correctly checked. Differential Revision: https://reviews.freebsd.org/D47862 --- sys/dev/rtwn/rtl8192c/r92c_tx.c | 3 +-- sys/dev/rtwn/rtl8812a/r12a_tx.c | 7 +++---- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/sys/dev/rtwn/rtl8192c/r92c_tx.c b/sys/dev/rtwn/rtl8192c/r92c_tx.c index a3e92e1b7ebb..8a4c6581832b 100644 --- a/sys/dev/rtwn/rtl8192c/r92c_tx.c +++ b/sys/dev/rtwn/rtl8192c/r92c_tx.c @@ -66,8 +66,7 @@ r92c_tx_set_ht40(struct rtwn_softc *sc, void *buf, struct ieee80211_node *ni) { struct r92c_tx_desc *txd = (struct r92c_tx_desc *)buf; - if (ni->ni_chan != IEEE80211_CHAN_ANYC && - IEEE80211_IS_CHAN_HT40(ni->ni_chan)) { + if (ieee80211_ht_check_tx_ht40(ni)) { int extc_offset; extc_offset = r92c_tx_get_sco(sc, ni->ni_chan); diff --git a/sys/dev/rtwn/rtl8812a/r12a_tx.c b/sys/dev/rtwn/rtl8812a/r12a_tx.c index e6b5111063f7..8b16be17f8eb 100644 --- a/sys/dev/rtwn/rtl8812a/r12a_tx.c +++ b/sys/dev/rtwn/rtl8812a/r12a_tx.c @@ -59,7 +59,7 @@ static int r12a_get_primary_channel(struct rtwn_softc *sc, struct ieee80211_channel *c) { - /* XXX 80 MHz */ + /* XXX VHT80; VHT40 */ if (IEEE80211_IS_CHAN_HT40U(c)) return (R12A_TXDW5_PRIM_CHAN_20_80_2); else @@ -71,9 +71,8 @@ r12a_tx_set_ht40(struct rtwn_softc *sc, void *buf, struct ieee80211_node *ni) { struct r12a_tx_desc *txd = (struct r12a_tx_desc *)buf; - /* XXX 80 Mhz */ - if (ni->ni_chan != IEEE80211_CHAN_ANYC && - IEEE80211_IS_CHAN_HT40(ni->ni_chan)) { + /* XXX VHT80; VHT40; VHT20 */ + if (ieee80211_ht_check_tx_ht40(ni)) { int prim_chan; prim_chan = r12a_get_primary_channel(sc, ni->ni_chan);