summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorStefan Sperling <stsp@cvs.openbsd.org>2024-02-26 18:00:10 +0000
committerStefan Sperling <stsp@cvs.openbsd.org>2024-02-26 18:00:10 +0000
commit8bf682aadd0e9cfa34a57fcd3133cdfe97e03bff (patch)
treebb6d59aad0d35a917c5c20fab1ce6011eb3adadb /sys
parent2debda92f1ce88f13080ec7959739ecbd472c963 (diff)
fix Tx rate selection for management frames in iwx(4)
The Tx rate index stored in ni->ni_txrate is not intended for use with management frames, yet iwx_tx_fill_cmd() was using it anyway. Use the minimum basic rate selected within iwx_tx_fill_cmd() instead.
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/pci/if_iwx.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/dev/pci/if_iwx.c b/sys/dev/pci/if_iwx.c
index 2166d47151a..a2ed6b9e626 100644
--- a/sys/dev/pci/if_iwx.c
+++ b/sys/dev/pci/if_iwx.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_iwx.c,v 1.181 2024/02/16 11:44:52 stsp Exp $ */
+/* $OpenBSD: if_iwx.c,v 1.182 2024/02/26 18:00:09 stsp Exp $ */
/*
* Copyright (c) 2014, 2016 genua gmbh <info@genua.de>
@@ -6085,13 +6085,12 @@ iwx_tx_fill_cmd(struct iwx_softc *sc, struct iwx_node *in,
} else if (sc->sc_rate_n_flags_version >= 2)
rate_flags |= IWX_RATE_MCS_LEGACY_OFDM_MSK;
- rval = (rs->rs_rates[ni->ni_txrate] & IEEE80211_RATE_VAL);
if (sc->sc_rate_n_flags_version >= 2) {
if (rate_flags & IWX_RATE_MCS_LEGACY_OFDM_MSK) {
- rate_flags |= (iwx_fw_rateidx_ofdm(rval) &
+ rate_flags |= (iwx_fw_rateidx_ofdm(rinfo->rate) &
IWX_RATE_LEGACY_RATE_MSK);
} else {
- rate_flags |= (iwx_fw_rateidx_cck(rval) &
+ rate_flags |= (iwx_fw_rateidx_cck(rinfo->rate) &
IWX_RATE_LEGACY_RATE_MSK);
}
} else