summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/dev/pci/if_iwx.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/sys/dev/pci/if_iwx.c b/sys/dev/pci/if_iwx.c
index 0183a8b58c7..332d49f38ce 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.66 2021/07/18 12:03:57 stsp Exp $ */
+/* $OpenBSD: if_iwx.c,v 1.67 2021/07/18 12:21:49 stsp Exp $ */
/*
* Copyright (c) 2014, 2016 genua gmbh <info@genua.de>
@@ -5173,6 +5173,17 @@ iwx_add_sta_cmd(struct iwx_softc *sc, struct iwx_node *in, int update)
|= htole32(IWX_STA_FLG_MAX_AGG_SIZE_MSK |
IWX_STA_FLG_AGG_MPDU_DENS_MSK);
+ if (iwx_mimo_enabled(sc)) {
+ if (in->in_ni.ni_rxmcs[1] != 0) {
+ add_sta_cmd.station_flags |=
+ htole32(IWX_STA_FLG_MIMO_EN_MIMO2);
+ }
+ if (in->in_ni.ni_rxmcs[2] != 0) {
+ add_sta_cmd.station_flags |=
+ htole32(IWX_STA_FLG_MIMO_EN_MIMO3);
+ }
+ }
+
add_sta_cmd.station_flags
|= htole32(IWX_STA_FLG_MAX_AGG_SIZE_64K);
switch (ic->ic_ampdu_params & IEEE80211_AMPDU_PARAM_SS) {