Module Name:    src
Committed By:   nonaka
Date:           Sat May 16 07:58:19 UTC 2015

Modified Files:
        src/sys/dev/pci: if_iwm.c

Log Message:
should be able to use 5GHz wireless network.


To generate a diff of this commit:
cvs rdiff -u -r1.33 -r1.34 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.33 src/sys/dev/pci/if_iwm.c:1.34
--- src/sys/dev/pci/if_iwm.c:1.33	Fri May 15 08:44:15 2015
+++ src/sys/dev/pci/if_iwm.c	Sat May 16 07:58:19 2015
@@ -1,4 +1,4 @@
-/*	$NetBSD: if_iwm.c,v 1.33 2015/05/15 08:44:15 knakahara Exp $	*/
+/*	$NetBSD: if_iwm.c,v 1.34 2015/05/16 07:58:19 nonaka Exp $	*/
 /*	OpenBSD: if_iwm.c,v 1.39 2015/03/23 00:35:19 jsg Exp	*/
 
 /*
@@ -105,7 +105,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_iwm.c,v 1.33 2015/05/15 08:44:15 knakahara Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_iwm.c,v 1.34 2015/05/16 07:58:19 nonaka Exp $");
 
 #include <sys/param.h>
 #include <sys/conf.h>
@@ -500,6 +500,7 @@ iwm_firmload(struct iwm_softc *sc)
 static void
 iwm_fix_channel(struct ieee80211com *ic, struct mbuf *m)
 {
+	struct iwm_softc *sc = ic->ic_ifp->if_softc;
 	struct ieee80211_frame *wh;
 	uint8_t subtype;
 	uint8_t *frm, *efrm;
@@ -515,6 +516,13 @@ iwm_fix_channel(struct ieee80211com *ic,
 	    subtype != IEEE80211_FC0_SUBTYPE_PROBE_RESP)
 		return;
 
+	if (sc->sc_scanband == IEEE80211_CHAN_5GHZ) {
+		int chan = le32toh(sc->sc_last_phy_info.channel);
+		if (chan < __arraycount(ic->ic_channels))
+			ic->ic_curchan = &ic->ic_channels[chan];
+		return;
+	}
+
 	frm = (uint8_t *)(wh + 1);
 	efrm = mtod(m, uint8_t *) + m->m_len;
 

Reply via email to