ATW(4) - Device Drivers Manual #
ATW(4) - Device Drivers Manual
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.
OpenBSD 7.5 - February 18, 2022