On my ZoomAir-branded Intersil PRISM2 cards, if you try to set the

operating mode to HostAP, the card will lock up indefinitely (but
the wi(4) driver can recover if you eject the card).  The problem is
that the card needs to be "reset" in a way before you even change the
media to hostap.  In practice this isn't as noticeable because you
probably do some operation beforehand which prevents the lock-up
before you enable hostap mode.

e.g.:
"ifconfig wi0 up media autoselect mediaopt hostap" will lock up
(if you just inserted the card).
"ifconfig wi0 up ssid foo media autoselect mediaopt hostap" won't lock up.
This commit is contained in:
Brian Feldman 2003-11-04 00:24:13 +00:00
parent bcf123b3f6
commit 86e011b3e8

View File

@ -655,6 +655,9 @@ wi_init(void *arg)
wi_write_val(sc, WI_RID_PORTTYPE, WI_PORTTYPE_ADHOC); wi_write_val(sc, WI_RID_PORTTYPE, WI_PORTTYPE_ADHOC);
break; break;
case IEEE80211_M_HOSTAP: case IEEE80211_M_HOSTAP:
/* The card can lock up if we don't toggle it first. */
wi_cmd(sc, WI_CMD_DISABLE | WI_PORT0, 0, 0, 0);
wi_cmd(sc, WI_CMD_ENABLE | WI_PORT0, 0, 0, 0);
wi_write_val(sc, WI_RID_PORTTYPE, WI_PORTTYPE_HOSTAP); wi_write_val(sc, WI_RID_PORTTYPE, WI_PORTTYPE_HOSTAP);
break; break;
case IEEE80211_M_MONITOR: case IEEE80211_M_MONITOR: