aboutsummaryrefslogtreecommitdiff
path: root/sys/compat/linuxkpi
diff options
context:
space:
mode:
authorBjoern A. Zeeb <bz@FreeBSD.org>2026-06-22 01:04:36 +0000
committerBjoern A. Zeeb <bz@FreeBSD.org>2026-06-22 01:21:39 +0000
commitcff565a4c0335e12376ea43f99ef5328c45ce933 (patch)
treec99e05327b31250387c72509307813869cd97e06 /sys/compat/linuxkpi
parent42cf2798110e12df6ccc22a138ed89617ac7d407 (diff)
Diffstat (limited to 'sys/compat/linuxkpi')
-rw-r--r--sys/compat/linuxkpi/common/src/linux_80211.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c
index 1a07213a58d6..9125ed1cb4b4 100644
--- a/sys/compat/linuxkpi/common/src/linux_80211.c
+++ b/sys/compat/linuxkpi/common/src/linux_80211.c
@@ -645,6 +645,7 @@ static void
lkpi_sync_chanctx_cw_from_rx_bw(struct ieee80211_hw *hw,
struct ieee80211_vif *vif, struct ieee80211_sta *sta)
{
+ struct lkpi_hw *lhw;
struct ieee80211_chanctx_conf *chanctx_conf;
enum ieee80211_sta_rx_bandwidth old_bw;
uint32_t changed;
@@ -660,7 +661,9 @@ lkpi_sync_chanctx_cw_from_rx_bw(struct ieee80211_hw *hw,
TRACE_RATES("old_bw %d sta->deflink.bandwidth %d hw->conf.chandef.width %d",
old_bw, sta->deflink.bandwidth, lkpi_cw_to_rx_bw(hw->conf.chandef.width));
- if (old_bw == sta->deflink.bandwidth)
+ lhw = HW_TO_LHW(hw);
+ if (old_bw == sta->deflink.bandwidth &&
+ (!lhw->emulate_chanctx || old_bw == lkpi_cw_to_rx_bw(hw->conf.chandef.width)))
return;
chanctx_conf->def.width = lkpi_rx_bw_to_cw(sta->deflink.bandwidth);