NAME
atw
—
ADMtek ADM8211 IEEE 802.11b wireless
network device
SYNOPSIS
atw* at cardbus?
atw* at pci?
DESCRIPTION
The atw
driver supports PCI/CardBus
802.11b wireless adapters based on the ADMtek ADM8211.
The ADM8211 is a bus-mastering 802.11 Media Access Controller (MAC) which is derived from ADMtek's DEC/Intel 21143 clones (see dc(4) for more information). It supports contention-free traffic (with an 802.11 Point Coordinator). The ADM8211 integrates an RF3000 baseband processor (BBP) by RF Microdevices.
In a typical application, the ADM8211 is coupled with an RF front-end by RFMD and a Silicon Laboratories Si4126 RF/IF synthesizer.
With the ADM8211, the division of labor between the host and NIC is different than with firmware-based NICs such as an(4) and wi(4). The ADM8211 is still responsible for real-time 802.11 functions such as sending ACK/RTS/CTS/ATIM frames, sending beacons, and answering CF polls from the access point, but the host takes responsibility for providing 802.11 functions such as scanning, association, and authentication. The host is also responsible for programming both the BBP and the RF/IF synthesizer.
These are the modes the atw
driver can
operate in:
- BSS mode
- Also known as infrastructure mode, this is used when associating with an access point, through which all traffic passes. This mode is the default.
- IBSS mode
- Also known as IEEE ad-hoc mode or peer-to-peer mode. This is the standardized method of operating without an access point. Stations associate with a service set. However, actual connections between stations are peer-to-peer.
The atw
driver can be configured to use
hardware Wired Equivalent Privacy (WEP) (though see
BUGS, below). It is strongly recommended that
WEP not be used as the sole mechanism to secure wireless communication, due
to serious weaknesses in it.
In BSS mode, the driver supports powersave mode, which can be enabled via ifconfig(8).
The atw
driver can be configured at
runtime with ifconfig(8)
or on boot with hostname.if(5).
HARDWARE
The atw
driver supports PCI and CardBus
cards using revisions 0x11 and 0x15 of the ADM8211 (aka ADM8211A) and
revision 0x20 (aka ADM8211B). This includes:
- 3Com OfficeConnect 3CRSHPW796 CardBus
- Belkin F5D6001 PCI (version 2 only)
- Blitz NetWave Point CardBus
- D-Link DWL-650 Rev. L1 CardBus
- D-Link DWL-520 Rev. C1 PCI
- LanReady WP2000 PCI
- SMC 2635W CardBus (version 1 only)
- TRENDnet TEW-221PC CardBus
- Xterasys XN2511B PCI
The atw
driver does not yet support cards
using revision 0x30 (ADM8211C).
EXAMPLES
The following example scans for available networks:
# ifconfig atw0 scan
The following hostname.if(5) example configures atw0 to join network “mynwid”, using WEP key “mywepkey”, obtaining an IP address using DHCP:
join mynwid nwkey mywepkey inet autoconf
DIAGNOSTICS
- atw0: failed to tune channel N
- The driver failed to tune the radio to a new channel. The radio remains tuned to the old channel.
- atw0: atw_si4136_write wrote XXXX, SYNCTL still busy
- The driver waited 100ms without seeing an indication that the ADM8211 had finished writing a register on the Si4126 RF/IF synthesizer.
- atw0: device timeout
- The ADM8211 failed to generate an interrupt to acknowledge a transmit command.
SEE ALSO
arp(4), cardbus(4), ifmedia(4), intro(4), netintro(4), pci(4), hostname.if(5), ifconfig(8)
Silicon Laboratories, https://www.silabs.com.
HISTORY
The atw
device driver first appeared in
OpenBSD 3.6.
AUTHORS
The atw
driver was written by
David Young
<dyoung@NetBSD.org>.
For features which the ADM8211 has in common with the DECchip 21x4x, code
was liberally borrowed from the NetBSD tlp driver by
Jason Thorpe
<thorpej@NetBSD.org>.
BUGS
The author does not fully understand what processing the duration fields for the PLCP header and the 802.11 header undergo before they are applied to a transmitted frame. If the duration fields in transmitted frames are incorrect, network performance may suffer.
The driver does not provide rate control when the media type is set to autoselect.
The driver will sometimes complain that it cannot re-tune the radio because the transmit process has not gone idle. The author is investigating.
Many features are still missing, especially WEP decryption and 802.11 power-saving.
The ad-hoc mode has not been rigorously tested. IBSSs with the same SSID may not coalesce, but this should not matter for most applications.
The driver is untested in the ad-hoc demo mode of Lucent WaveLAN cards.
The ADM8211 supports 802.11 power-saving; however,
atw
does not support it yet. For time-bounded
service, the ADM8211 will interoperate with an access point which implements
the 802.11 Point Coordination Function; however, this is also not
supported.
Combinations of an ADM8211 with either an Intersil or a Marvell RF front-end are not supported.
atw
contains incomplete support for the
ADM8211's WEP encryption/decryption engine. atw
does
not yet support hardware WEP decryption; however, it will use the ADM8211's
crypto engine to encrypt transmitted frames. Documentation from ADMtek
claims that, in addition to the 4 104-bit shared WEP keys, the ADM8211 will
store WEP key pairs for up to 20 peers. The documentation provides no
details, hence atw
does not support the 20
key-pairs.