Commit Graph

42 Commits

Author SHA1 Message Date
thorpej
b2429742a5 Print out product info on attach. 2000-11-02 18:55:46 +00:00
jonathan
6e67f82712 Fix wi_intr() to avoid touching card registers during insert/remove events,
when sharing an interrupt with other devices:
check sc->sc_enabled,  and drop the interrupt if its' off.

Also check for IFF_RUNNING, on advice of Enami Tsugotomo.
2000-10-13 19:15:08 +00:00
enami
3a909c64a6 Use splnet instead of splimp in wi_ioctl. 2000-10-12 04:50:58 +00:00
enami
4c00a9d6aa Bail out initailzation on buffer allocation failure. 2000-10-12 03:29:59 +00:00
enami
b204f9e433 Use ether_ioctl. 2000-10-12 02:24:08 +00:00
thorpej
7ca3fb9ef0 Move the check for "promisc + unicast + not for us" into ether_input(),
and change Ethernet drivers to always pass all received frames to
ether_input() (with a few exceptions, which are documented in the
code).
2000-10-01 23:32:39 +00:00
enami
b4b2cdf575 Replace misused DIAGNOSTIC with WI_DEBUG. 2000-09-28 06:29:41 +00:00
enami
2f625bf43f Remove unnecessary and commented out code. 2000-09-28 06:24:48 +00:00
joda
00305bb997 provide some randomness 2000-08-28 13:25:22 +00:00
jhawk
ce7a425d77 Revert last, softc is now updated.
I neglected to checkin the if_wivar.h update earlier, sorry.
2000-08-26 00:08:43 +00:00
sommerfeld
3a2b5d49a6 partial backout of last commit: #if 0 references to sc->wi_mor_enabled
since it doesn't exist in the softc.
2000-08-25 03:11:14 +00:00
jhawk
5056d0ce7c Add support for "microwave oven robustness" with wiconfig -M. 2000-08-23 19:01:04 +00:00
jhawk
8c3116e66a Copy wi_{dst,src}_addr from struct wi_frame into faked-up ether_header
instead of addr1 and addr2. THis means that tcpdump -e will show the
correct MAC address for communications with access points instead of showing
the BSSID.

In the future there should be 802.11 support for bpf/libpcap/tcpdump,
but that is aways down the road.

Also fix a typo in a comment.
2000-08-18 04:11:48 +00:00
enami
35913a898c Sync internal state and ifmedia state. Addresses PR#10424. 2000-07-31 03:25:11 +00:00
onoe
188122248a I've confirmed that Samsung MagicLAN SWL-2000N (PRISM-II) works
with WEP enabled.
2000-07-26 07:28:56 +00:00
onoe
27d41a1de3 Map txrate for prism2, where each bit is apparently assigned to the
corresponding rate; 1Mbps, 2Mbps, 5.5Mbps, 11Mbps.
2000-07-25 12:04:29 +00:00
onoe
afa5b645c2 add support for SIOCS80211NWKEY and SIOCG80211NWKEY. 2000-07-21 04:48:55 +00:00
onoe
47f692248f add WEP support also for PRISM2 cards.
Corega works fine with WEP, but farallon doesn't work well with WEP for now..
2000-07-18 15:01:55 +00:00
onoe
905b4e497f Add support for Corega Wireless LAN PCC-11, and Farallon SkyLINE 11Mb.
Note that Corega card works at 3.3V only, then it requires cardbus code
for now.
2000-07-18 14:53:26 +00:00
onoe
807a12c8cd change the argument of SIOCS80211NWID and SIOCG80211NWID ioctls from
u_int8_t array to struct ieee80211_nwid to prepend length field.
The length field is necessary because IEEE 802.11 spec doesn't prohibit
even '\0' for SSID.
Though the name and the value of SIOC... macro is unchanged, this change
breaks binary compatibility.  The only affected userland program on the
tree is ifconfig(8).
As Jason suggested on tech-net, it is better than live with problems
since there are no releases for this ioctls yet.
2000-07-05 02:35:53 +00:00
joda
5f9b72f44c match 3Com 3CRWE737A (AirConnect) 2000-06-30 16:40:31 +00:00
pooka
e1e9261889 fix typo 2000-06-06 14:01:40 +00:00
enami
28ec465498 Remove $Id. 2000-05-23 08:41:49 +00:00
enami
f87f33d513 Allow userland to retrieve whether the card support WEP while the
card power is off.  This allows wiconfig to set WEP key etc while power off.
2000-05-23 08:25:51 +00:00
drochner
ac9d663468 My (Cabletron) card supplies two more statistics counters.
Instead of dropping them all, read out min(expected, supplied).
2000-05-14 17:19:18 +00:00
enami
c522067861 Maintain IFF_ALLMULTI flag by ourself. 2000-03-27 11:03:47 +00:00
enami
8d29747e3b When we fall into allmulti case due to too may multicast address,
properly set the type and length in struct wi_ltv_mcast.
2000-03-27 07:04:21 +00:00
enami
19e7b1b8ae No need to call wi_setmulti() if ether_{add,del}multi returns 0. 2000-03-27 06:48:05 +00:00
thorpej
fc96443d15 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
thorpej
91c44a72b8 Set ifp->if_baudrate as appropriate. 2000-03-06 21:02:37 +00:00
enami
68484a4ad9 - Remove redundant assignment.
- Don't disestablish shutdown hook if we can't establish it.
- Noneed to manage resouces individually.
2000-03-06 10:31:27 +00:00
enami
e924f6f853 Minor cleanups. 2000-03-02 10:29:22 +00:00
enami
48721f291a Fix typo and thinko in previous commit. 2000-03-02 05:54:22 +00:00
enami
027db8bf87 Add ifmedia support so that dhcp happy. Also, add nwid support. 2000-03-02 05:00:47 +00:00
enami
8841a11f4d - Disestablish an interrupt if failed to enable the card.
- If card isn't enabled, just set given information into softc.  Addresses
  PR#9457.
- Some cleanups and cosmetic changes.
2000-02-27 23:10:51 +00:00
itojun
99b18eac36 on attach, check if we've got meaningful mac address or not,
to detect io mapping problem.

on detach, handle resource deallocations more carefully.
2000-02-13 06:17:58 +00:00
enami
84b6105bbe Check if device is active in wi_intr and wi_inquire. 2000-02-12 23:35:28 +00:00
itojun
02bf7fcd13 add wi_detach and friends so that we can hot-swap wi card. 2000-02-12 16:08:04 +00:00
explorer
59db45db2a bring over WEP mode from FreeBSD/OpenBSD 2000-02-04 07:48:29 +00:00
itojun
f5e553eb57 IPv6 support.
ETHERTYPE_IPV6 packets are encapsulated by RFC1042 encap.
Tested with Japanese card, with WaveLan bridge (wiconfig -p 1).
NOTE: I dunno if encapsulating IPv6 packets by RFC1042 is the correct way,
  as RFC1042 only defines behavior for ETHERTYPE_{IP,ARP,REVARP} packets.
  Since WaveLan bridge encapsulates IPv6 packets with RFC1042, we have no
  choice.

Gather joined multicast addresses via SIOCADDMULTI, and configure multicast
filter properly.  This is also required for IPv6 support
(which heavily depends on multicast).

Fix IFF_RUNNING management
- to prevent IFF_RUNNING from raised on "wiconfig", before "ifconfig up"
- to prevent the driver from occupying extra interrupts on "ifconfig up",
  then "down", then "up".
1999-09-10 00:30:59 +00:00
sommerfeld
48f2389776 Add shutdown hook to turn off card.
Fix BPF tap code.
1999-07-14 23:07:29 +00:00
sommerfeld
52faa3e2d7 Blitz port of the FreeBSD wi* driver for the Lucent WaveLan IEEE
PCMCIA wireless LAN.
Original driver written by Bill Paul <wpaul@ctr.columbia.edu>
1999-07-14 22:24:07 +00:00