.\" $OpenBSD: ral.4,v 1.87 2008/07/29 16:44:19 jmc Exp $ .\" .\" Copyright (c) 2005-2008 .\" Damien Bergamini .\" .\" Permission to use, copy, modify, and distribute this software for any .\" purpose with or without fee is hereby granted, provided that the above .\" copyright notice and this permission notice appear in all copies. .\" .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" .Dd $Mdocdate: July 29 2008 $ .Os .Dt RAL 4 .Sh NAME .Nm ral .Nd Ralink Technology IEEE 802.11a/b/g/Draft-N wireless network device .Sh SYNOPSIS .Cd "ral* at cardbus?" .Cd "ral* at pci?" .Sh DESCRIPTION The .Nm driver supports PCI/PCIe/CardBus wireless adapters based on the Ralink RT2500, RT2501, RT2600, RT2700 and RT2800 chipsets. .Pp The RT2500 chipset is the first generation of 802.11b/g adapters from Ralink. It consists of two integrated chips, an RT2560 MAC/BBP and an RT2525 radio transceiver. .Pp The RT2501 chipset is the second generation of 802.11a/b/g adapters from Ralink. It consists of two integrated chips, an RT2561 MAC/BBP and an RT2527 radio transceiver. This chipset provides support for the IEEE 802.11e standard with multiple hardware transmission queues and allows scatter/gather for efficient DMA operations. .Pp The RT2600 chipset consists of two integrated chips, an RT2661 MAC/BBP and an RT2529 radio transceiver. This chipset uses the MIMO (multiple-input multiple-output) technology with multiple radio transceivers to extend the operating range of the adapter and to achieve higher throughput. However, the RT2600 chipset does not support any of the 802.11n features. .Pp The RT2700 chipset is a low-cost version of the RT2800 chipset. It supports a single transmit path and two receiver paths (1T2R). It consists of two integrated chips, an RT2760 or RT2790 (PCIe) MAC/BBP and an RT2720 (2.4GHz) or RT2750 (2.4GHz/5GHz) radio transceiver. .Pp The RT2800 chipset is the first generation of 802.11n adapters from Ralink. It consists of two integrated chips, an RT2860 or RT2890 (PCIe) MAC/BBP and an RT2820 (2.4GHz) or RT2850 (2.4GHz/5GHz) radio transceiver. The RT2800 chipset supports two transmit paths and up to three receiver paths (2T2R/2T3R). It can achieve speeds up to 144Mbps (20MHz bandwidth) and 300Mbps (40MHz bandwidth.) .Pp These are the modes the .Nm driver can operate in: .Bl -tag -width "IBSS-masterXX" .It BSS mode Also known as .Em infrastructure mode, this is used when associating with an access point, through which all traffic passes. This mode is the default. .It IBSS mode Also known as .Em IEEE ad-hoc mode or .Em 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. .It Host AP In this mode the driver acts as an access point (base station) for other cards. .It monitor mode In this mode the driver is able to receive packets without associating with an access point. This disables the internal receive filter and enables the card to capture packets from networks which it wouldn't normally have access to, or to scan for access points. .El .Pp The .Nm driver can be configured to use Wireless Equivalent Privacy (WEP) or Wi-Fi Protected Access (WPA-PSK and WPA2-PSK). WPA is the de facto encryption standard for wireless networks. It is strongly recommended that WEP not be used as the sole mechanism to secure wireless communication, due to serious weaknesses in it. .Pp The .Nm driver relies on the software 802.11 stack for both encryption and decryption of data frames on the RT2500, RT2501 and RT2600 chipsets. On the RT2700 and RT2800 chipsets, the .Nm driver offloads both encryption and decryption of data frames to the hardware for the WEP40, WEP104, TKIP(+MIC) and CCMP ciphers. .Pp The transmit speed is user-selectable or can be adapted automatically by the driver depending on the number of hardware transmission retries. .Pp The .Nm driver can be configured at runtime with .Xr ifconfig 8 or on boot with .Xr hostname.if 5 . .Sh FILES The RT2501, RT2600, RT2700 and RT2800 chipsets require the following firmware files to be loaded when an interface is brought up: .Pp .Bl -tag -width Ds -offset indent -compact .It /etc/firmware/ral-rt2561 .It /etc/firmware/ral-rt2561s .It /etc/firmware/ral-rt2661 .It /etc/firmware/ral-rt2860 .El .Pp The RT2500 chipset does not require a firmware to operate. .Sh HARDWARE The following PCI adapters should work: .Bd -filled A-Link WL54H. AirLive WN-5000PCI. Amigo AWI-926W. AMIT WL531P. AOpen AOI-831. ASUS WL-130G. ASUS WL-130N. ASUS WIFI-G-AAY. Atlantis Land A02-PCI-W54. Belkin F5D7000 v3. Canyon CN-WF511. CNet CWP-854. Compex WLP54G. Conceptronic C54Ri. Corega CG-WLPCI54GL. Digitus DN-7006G-RA. Dynalink WLG25PCI. E-Tech WGPI02. Edimax EW-7128g. Edimax EW-7628Ig. Edimax EW-7728In. Eminent EM3037. Encore ENLWI-G-RLAM. Eusso UGL2454-VPR. Fiberline WL-400P. Foxconn WLL-3350. Gigabyte GN-WPKG. Gigabyte GN-WP01GS. Gigabyte GN-WI02GM. Gigabyte GN-WP01GM. Hawking HWP54GR. Hercules HWGPCI-54. iNexQ CR054g-009 (R03). JAHT WN-4054PCI. KCORP LifeStyle KLS-660. LevelOne WNC-0301 v2. Linksys WMP54G v4. Micronet SP906GK. Minitar MN54GPC-R. MSI MS-6834. MSI PC54G2. OvisLink EVO-W54PCI. PheeNet HWL-PCIG/RA. Planex PCI-GW-DS300N. Pro-Nets PC80211G. Repotec RP-WP0854. SATech SN-54P. Signamax 065-1798. Sitecom WL-115. SparkLAN WL-660R. Surecom EP-9321-g. Surecom EP-9321-g1. Sweex LC700030. TekComm NE-9321-g. Tonze PC-6200C. Unex CR054g-R02. Zinwell ZWX-G361. Zonet ZEW1600. .Ed .Pp The following CardBus adapters should work: .Bd -filled A-Link WL54PC. Alfa AWPC036. Amigo AWI-914W. AMIT WL531C. ASUS WL-107G. Atlantis Land A02-PCM-W54. Belkin F5D7010 v2. Canyon CN-WF513. CC&C WL-2102. CNet CWC-854. Compex WL54. Conceptronic C54RC. Corega CG-WLCB54GL. Digiconnect WL591C. Digitus DN-7001G-RA. Dynalink WLG25CARDBUS. E-Tech WGPC02. E-Tech WGPC03. Edimax EW-7108PCg. Edimax EW-7708PN. Eminent EM3036. Encore ENPWI-G-RLAM. Eusso UGL2454-01R. Fiberline WL-400X. Gigabyte GN-WMKG. Gigabyte GN-WM01GS. Gigabyte GN-WM01GM. Hawking HWC54GR. Hercules HWGPCMCIA-54. JAHT WN-4054P(E). KCORP LifeStyle KLS-611. LevelOne WPC-0301 v2. Micronet SP908GK V3. Minitar MN54GCB-R. MSI CB54G2. MSI MS-6835. Pro-Nets CB80211G. Repotec RP-WB7108. SATech SN-54C. Sitecom WL-112. SparkLAN WL-611R. Surecom EP-9428-g. Sweex LC500050. TekComm NE-9428-g. Tonze PW-6200C. Unex MR054g-R02. Zinwell ZWX-G160. Zonet ZEW1500. .Ed .Pp The following Mini PCI adapters should work: .Bd -filled Amigo AWI-922W. Billionton MIWLGRL. Gigabyte GN-WIKG. Gigabyte GN-WI01GS. Gigabyte GN-WI02GM. MSI MP54G2. MSI MS-6833. SparkLAN WMIR-215GN. Tonze PC-620C. Zinwell ZWX-G360. .Ed .Sh EXAMPLES The following .Xr hostname.if 5 example configures ral0 to join whatever network is available on boot, using WEP key .Dq 0x1deadbeef1 , channel 11, obtaining an IP address using DHCP: .Bd -literal -offset indent dhcp NONE NONE NONE nwkey 0x1deadbeef1 chan 11 .Ed .Pp The following .Xr hostname.if 5 example creates a host-based access point on boot: .Bd -literal -offset indent inet 192.168.1.1 255.255.255.0 NONE media autoselect \e mediaopt hostap nwid my_net chan 11 .Ed .Pp Configure ral0 to join network .Dq my_net using WPA-PSK with passphrase .Dq my_passphrase : .Bd -literal -offset indent # ifconfig ral0 nwid my_net wpa wpapsk \e $(wpa-psk my_net my_passphrase) .Ed .Pp Return ral0 to its default settings: .Bd -literal -offset indent # ifconfig ral0 -bssid -chan media autoselect \e nwid "" -nwkey -wpa -wpapsk .Ed .Pp Join an existing BSS network, .Dq my_net : .Bd -literal -offset indent # ifconfig ral0 192.168.1.1 netmask 0xffffff00 nwid my_net .Ed .Sh DIAGNOSTICS .Bl -diag .It "ral%d: error %d, could not read firmware %s" For some reason, the driver was unable to read the firmware image from the filesystem. The file might be missing or corrupted. .It "ral%d: could not load 8051 microcode" An error occurred while attempting to upload the microcode to the onboard 8051 microcontroller unit. .It "ral%d: timeout waiting for MCU to initialize" The onboard 8051 microcontroller unit failed to initialize in time. .It "ral%d: device timeout" A frame dispatched to the hardware for transmission did not complete in time. The driver will reset the hardware. This should not happen. .El .Sh SEE ALSO .Xr arp 4 , .Xr cardbus 4 , .Xr ifmedia 4 , .Xr intro 4 , .Xr netintro 4 , .Xr pci 4 , .Xr hostname.if 5 , .Xr hostapd 8 , .Xr ifconfig 8 , .Xr wpa-psk 8 .Pp Ralink Technology: .Pa http://www.ralinktech.com/ .Sh HISTORY The .Nm driver first appeared in .Ox 3.7 . Support for the RT2501 and RT2600 chipsets was added in .Ox 3.9 . Support for the RT2800 chipset was added in .Ox 4.3 . Support for the RT2700 chipset was added in .Ox 4.4 . .Sh AUTHORS The .Nm driver was written by .An Damien Bergamini Aq damien@openbsd.org . .Sh CAVEATS The .Nm driver does not make use of the hardware cryptographic engine present on the RT2500, RT2501 and RT2600 chipsets. .Pp The .Nm driver does not support any of the 802.11n capabilities offered by the RT2700 and RT2800 chipsets. Additional work is required in .Xr ieee80211 9 before those features can be supported. .Pp Some PCI .Nm adapters seem to strictly require a system supporting PCI 2.2 or greater and will likely not work in systems based on older revisions of the PCI specification. Check the board's PCI version before purchasing the card.