Module Name: src
Committed By: nonaka
Date: Thu Mar 26 14:42:56 UTC 2015
Modified Files:
src/sys/dev/pci: if_iwm.c
Log Message:
Not all iwm hardware supports the 5GHz band. Make setting 11a rates
and scanning conditional on the 5GHz support bit in the nvm.
>From OpenBSD rev. 1.39. Arranged by me.
To generate a diff of this commit:
cvs rdiff -u -r1.28 -r1.29 src/sys/dev/pci/if_iwm.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/pci/if_iwm.c
diff -u src/sys/dev/pci/if_iwm.c:1.28 src/sys/dev/pci/if_iwm.c:1.29
--- src/sys/dev/pci/if_iwm.c:1.28 Sat Mar 7 13:54:57 2015
+++ src/sys/dev/pci/if_iwm.c Thu Mar 26 14:42:56 2015
@@ -1,5 +1,5 @@
-/* $NetBSD: if_iwm.c,v 1.28 2015/03/07 13:54:57 nonaka Exp $ */
-/* OpenBSD: if_iwm.c,v 1.36 2015/03/06 18:39:24 kettenis Exp */
+/* $NetBSD: if_iwm.c,v 1.29 2015/03/26 14:42:56 nonaka Exp $ */
+/* OpenBSD: if_iwm.c,v 1.39 2015/03/23 00:35:19 jsg Exp */
/*
* Copyright (c) 2014 genua mbh <[email protected]>
@@ -105,7 +105,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_iwm.c,v 1.28 2015/03/07 13:54:57 nonaka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_iwm.c,v 1.29 2015/03/26 14:42:56 nonaka Exp $");
#include <sys/param.h>
#include <sys/conf.h>
@@ -5587,7 +5587,8 @@ iwm_endscan_cb(struct work *work __unuse
DPRINTF(("scan ended\n"));
- if (sc->sc_scanband == IEEE80211_CHAN_2GHZ) {
+ if (sc->sc_scanband == IEEE80211_CHAN_2GHZ &&
+ sc->sc_nvm.sku_cap_band_52GHz_enable) {
int error;
done = 0;
if ((error = iwm_mvm_scan_request(sc,
@@ -6567,7 +6568,9 @@ iwm_attach_hook(device_t dev)
IEEE80211_C_SHSLOT | /* short slot time supported */
IEEE80211_C_SHPREAMBLE; /* short preamble supported */
- ic->ic_sup_rates[IEEE80211_MODE_11A] = ieee80211_std_rateset_11a;
+ /* not all hardware can do 5GHz band */
+ if (sc->sc_nvm.sku_cap_band_52GHz_enable)
+ ic->ic_sup_rates[IEEE80211_MODE_11A] = ieee80211_std_rateset_11a;
ic->ic_sup_rates[IEEE80211_MODE_11B] = ieee80211_std_rateset_11b;
ic->ic_sup_rates[IEEE80211_MODE_11G] = ieee80211_std_rateset_11g;