PERFORCE change 102824 for review

Sam Leffler sam at FreeBSD.org
Mon Jul 31 03:52:52 UTC 2006


http://perforce.freebsd.org/chv.cgi?CH=102824

Change 102824 by sam at sam_ebb on 2006/07/31 03:52:10

	bandaids to make it compile

Affected files ...

.. //depot/projects/wifi/sys/dev/iwi/if_iwi.c#14 edit
.. //depot/projects/wifi/sys/dev/iwi/if_iwivar.h#9 edit

Differences ...

==== //depot/projects/wifi/sys/dev/iwi/if_iwi.c#14 (text+ko) ====

@@ -975,10 +975,6 @@
 
 	/* XXX state change race with taskqueue */
 	switch (nstate) {
-	case IEEE80211_S_INIT:
-		sc->flags &= ~IWI_FLAG_SCANNING;
-		break;
-
 	case IEEE80211_S_SCAN:
 		if (ic->ic_state == IEEE80211_S_RUN) {
 			/*
@@ -1321,7 +1317,7 @@
 	ni = ieee80211_find_rxnode(ic, mtod(m, struct ieee80211_frame_min *));
 
 	/* send the frame to the 802.11 layer */
-	type = ieee80211_input(ic, m, ni, frame->rssi_dbm, 0);
+	type = ieee80211_input(ic, m, ni, frame->rssi_dbm, 0, 0);
 
 	/* node is no longer needed */
 	ieee80211_free_node(ni);
@@ -2660,13 +2656,13 @@
 #ifdef IWI_DEBUG
 		if (iwi_debug > 0) {
 			printf("Setting desired ESSID to ");
-			ieee80211_print_essid(ic->ic_des_essid,
-			    ic->ic_des_esslen);
+			ieee80211_print_essid(ic->ic_des_ssid[0].ssid,
+			    ic->ic_des_ssid[0].len);
 			printf("\n");
 		}
 #endif
-		error = iwi_cmd(sc, IWI_CMD_SET_ESSID, ic->ic_des_essid,
-		    ic->ic_des_esslen);
+		error = iwi_cmd(sc, IWI_CMD_SET_ESSID, ic->ic_des_ssid[0].ssid,
+		    ic->ic_des_ssid[0].len);
 		if (error != 0)
 			return error;
 	}
@@ -2713,9 +2709,9 @@
 	scan.dwell_time[IWI_SCAN_TYPE_BROADCAST] = htole16(sc->dwelltime);
 	scan.dwell_time[IWI_SCAN_TYPE_BDIRECTED] = htole16(sc->dwelltime);
 
-	scan.full_scan_index = htole32(ic->ic_scan.nt_scangen);
+	scan.full_scan_index = htole32(++sc->sc_scangen);
 
-	scan_type = (ic->ic_des_esslen != 0) ? IWI_SCAN_TYPE_BDIRECTED :
+	scan_type = (ic->ic_des_nssid != 0) ? IWI_SCAN_TYPE_BDIRECTED :
 	    IWI_SCAN_TYPE_BROADCAST;
 
 	ix = 0;
@@ -2804,7 +2800,9 @@
 	 * in the list.
 	 */
 	if (sc->flags & IWI_FLAG_SCANNING) {
+#if 0
 		ieee80211_begin_scan(ic, 1);
+#endif
 		if (iwi_scan(sc) != 0) {
 			/* XXX should not happen */
 			sc->flags &= ~IWI_FLAG_SCANNING;
@@ -2818,13 +2816,14 @@
 iwi_scandone(void *arg, int npending)
 {
 	struct iwi_softc *sc = arg;
-	struct ieee80211com *ic = &sc->sc_ic;
 	IWI_LOCK_DECL;
 
 	IWI_LOCK(sc);
 	if (sc->flags & IWI_FLAG_ASSOCIATED)
 		iwi_disassociate(sc, 0);
+#if 0
 	ieee80211_end_scan(ic);
+#endif
 	IWI_UNLOCK(sc);
 }
 
@@ -2846,7 +2845,7 @@
 	ic = &sc->sc_ic;
 	KASSERT(ic->ic_opmode == IEEE80211_M_MONITOR,
 		("opmode %u", ic->ic_opmode));
-	chan = ic->ic_ibss_chan;
+	chan = ic->ic_bsschan;
 
 	memset(&scan, 0, sizeof scan);
 	/*
@@ -2856,7 +2855,7 @@
 	 * channel hopping in monitor mode.
 	 */
 	scan.dwell_time[IWI_SCAN_TYPE_PASSIVE] = htole16(2000);
-	scan.full_scan_index = htole32(ic->ic_scan.nt_scangen);
+	scan.full_scan_index = htole32(++sc->sc_scangen);
 	if (IEEE80211_IS_CHAN_5GHZ(chan))
 		scan.channels[0] = 1 | IWI_CHAN_5GHZ;
 	else

==== //depot/projects/wifi/sys/dev/iwi/if_iwivar.h#9 (text+ko) ====

@@ -165,6 +165,7 @@
 	int			bluetooth;
 	struct iwi_associate	assoc;
 	struct iwi_wme_params	wme[3];
+	u_int			sc_scangen;
 
 	struct task		sc_radiontask;	/* radio on processing */
 	struct task		sc_radiofftask;	/* radio off processing */


More information about the p4-projects mailing list