aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/awi
diff options
context:
space:
mode:
authorSam Leffler <sam@FreeBSD.org>2005-08-13 00:30:26 +0000
committerSam Leffler <sam@FreeBSD.org>2005-08-13 00:30:26 +0000
commitb831470b4d7d2159cf5e37d45c83e4bac213e32f (patch)
tree61839505fdf87a5217018de5aba049688051b313 /sys/dev/awi
parent80f05a81d996db1cba3ff496dd30a48f1776bb8c (diff)
fix handling of the current channel (missed in previous commit)
Notes
Notes: svn path=/head/; revision=149008
Diffstat (limited to 'sys/dev/awi')
-rw-r--r--sys/dev/awi/awi.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/dev/awi/awi.c b/sys/dev/awi/awi.c
index 27e339d2fcd3..6dd75bf34681 100644
--- a/sys/dev/awi/awi.c
+++ b/sys/dev/awi/awi.c
@@ -691,6 +691,7 @@ awi_init(struct ifnet *ifp)
} else {
/* XXX check sc->sc_cur_chan */
ni->ni_chan = &ic->ic_channels[sc->sc_cur_chan];
+ ic->ic_curchan = ni->ni_chan;
ieee80211_new_state(ic, IEEE80211_S_SCAN, -1);
}
return 0;
@@ -1973,19 +1974,19 @@ awi_newstate(struct ieee80211com *ic, enum ieee80211_state nstate, int arg)
if (sc->sc_mib_phy.IEEE_PHY_Type == AWI_PHY_TYPE_FH) {
awi_write_1(sc, AWI_CA_SCAN_SET,
IEEE80211_FH_CHANSET(
- ieee80211_chan2ieee(ic, ni->ni_chan)));
+ ieee80211_chan2ieee(ic, ic->ic_curchan)));
awi_write_1(sc, AWI_CA_SCAN_PATTERN,
IEEE80211_FH_CHANPAT(
- ieee80211_chan2ieee(ic, ni->ni_chan)));
+ ieee80211_chan2ieee(ic, ic->ic_curchan)));
awi_write_1(sc, AWI_CA_SCAN_IDX, 1);
} else {
awi_write_1(sc, AWI_CA_SCAN_SET,
- ieee80211_chan2ieee(ic, ni->ni_chan));
+ ieee80211_chan2ieee(ic, ic->ic_curchan));
awi_write_1(sc, AWI_CA_SCAN_PATTERN, 0);
awi_write_1(sc, AWI_CA_SCAN_IDX, 0);
}
awi_write_1(sc, AWI_CA_SCAN_SUSP, 0);
- sc->sc_cur_chan = ieee80211_chan2ieee(ic, ni->ni_chan);
+ sc->sc_cur_chan = ieee80211_chan2ieee(ic, ic->ic_curchan);
if ((error = awi_cmd(sc, AWI_CMD_SCAN, AWI_NOWAIT))
!= 0)
break;