RAL(4)                    OpenBSD Programmer's Manual                   RAL(4)

NAME
     ral - Ralink Technology IEEE 802.11a/g/n wireless network device

SYNOPSIS
     ral* at cardbus?
     ral* at pci?

DESCRIPTION
     The ral driver supports PCI/PCIe/CardBus wireless adapters based on the
     Ralink RT2500, RT2501, RT2600, RT2700 and RT2800 chipsets.

     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.

     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.

     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 ex-
     tend the operating range of the adapter and to achieve higher throughput.
     However, the RT2600 chipset does not support any of the 802.11n features.

     The RT2700 chipset is a low-cost version of the RT2800 chipset.  It sup-
     ports 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.

     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.)

     These are the modes the ral driver can operate in:

     BSS mode       Also known as infrastructure mode, this is used when asso-
                    ciating 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.

     Host AP        In this mode the driver acts as an access point (base sta-
                    tion) for other cards.

     monitor mode   In this mode the driver is able to receive packets without
                    associating with an access point.  This disables the in-
                    ternal receive filter and enables the card to capture
                    packets from networks which it wouldn't normally have ac-
                    cess to, or to scan for access points.

     The ral driver can be configured to use Wired Equivalent Privacy (WEP) or
     Wi-Fi Protected Access (WPA-PSK and WPA2-PSK).  WPA is the de facto en-
     cryption 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.

     The ral 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 ral driver offloads both encryp-
     tion and decryption of data frames to the hardware for the WEP40, WEP104,
     TKIP(+MIC) and CCMP ciphers.

     The transmit speed is user-selectable or can be adapted automatically by
     the driver depending on the number of hardware transmission retries.

     The ral driver can be configured at runtime with ifconfig(8) or on boot
     with hostname.if(5).

FILES
     The RT2501, RT2600, RT2700 and RT2800 chipsets require the following
     firmware files to be loaded when an interface is brought up:

           /etc/firmware/ral-rt2561
           /etc/firmware/ral-rt2561s
           /etc/firmware/ral-rt2661
           /etc/firmware/ral-rt2860

     The RT2500 chipset does not require a firmware to operate.

HARDWARE
     The following PCI adapters should work:

     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.
     Longshine LCS-8031N.  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.  Sure-
     com EP-9321-g1.  Sweex LC700030.  TekComm NE-9321-g.  Tonze PC-6200C.
     Unex CR054g-R02.  Zinwell ZWX-G361.  Zonet ZEW1600.

     The following CardBus adapters should work:

     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.  Re-
     potec RP-WB7108.  SATech SN-54C.  Sitecom WL-112.  SparkLAN WL-611R.
     SparkLAN WPCR-501.  Surecom EP-9428-g.  Sweex LC500050.  TekComm
     NE-9428-g.  Tonze PW-6200C.  Unex MR054g-R02.  Zinwell ZWX-G160.  Zonet
     ZEW1500.

     The following Mini PCI adapters should work:

     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.

EXAMPLES
     The following hostname.if(5) example configures ral0 to join whatever
     network is available on boot, using WEP key ``0x1deadbeef1'', channel 11,
     obtaining an IP address using DHCP:

           dhcp NONE NONE NONE nwkey 0x1deadbeef1 chan 11

     The following hostname.if(5) example creates a host-based access point on
     boot:

           inet 192.168.1.1 255.255.255.0 NONE media autoselect \
                   mediaopt hostap nwid my_net chan 11

     Configure ral0 to join network ``my_net'' using WPA-PSK with passphrase
     ``my_passphrase'':

           # ifconfig ral0 nwid my_net wpa wpapsk \
                   `wpa-psk my_net my_passphrase`

     Return ral0 to its default settings:

           # ifconfig ral0 -bssid -chan media autoselect \
                   nwid "" -nwkey -wpa -wpapsk

     Join an existing BSS network, ``my_net'':

           # ifconfig ral0 192.168.1.1 netmask 0xffffff00 nwid my_net

DIAGNOSTICS
     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.

     ral%d: could not load 8051 microcode  An error occurred while attempting
     to upload the microcode to the onboard 8051 microcontroller unit.

     ral%d: timeout waiting for MCU to initialize  The onboard 8051 microcon-
     troller unit failed to initialize in time.

     ral%d: device timeout  A frame dispatched to the hardware for transmis-
     sion did not complete in time.  The driver will reset the hardware.  This
     should not happen.

SEE ALSO
     arp(4), cardbus(4), ifmedia(4), intro(4), netintro(4), pci(4),
     hostname.if(5), hostapd(8), ifconfig(8), wpa-psk(8)

     Ralink Technology: http://www.ralinktech.com/

HISTORY
     The ral driver first appeared in OpenBSD 3.7.  Support for the RT2501 and
     RT2600 chipsets was added in OpenBSD 3.9.  Support for the RT2800 chipset
     was added in OpenBSD 4.3.  Support for the RT2700 chipset was added in
     OpenBSD 4.4.

AUTHORS
     The ral driver was written by Damien Bergamini <damien@openbsd.org>.

CAVEATS
     The ral driver does not make use of the hardware cryptographic engine
     present on the RT2500, RT2501 and RT2600 chipsets.

     The ral driver does not support any of the 802.11n capabilities offered
     by the RT2700 and RT2800 chipsets.  Additional work is required in
     ieee80211(9) before those features can be supported.

     Host AP mode doesn't support power saving.  Clients attempting to use
     power saving mode may experience significant packet loss (disabling power
     saving on the client will fix this).

     Some PCI ral adapters seem to strictly require a system supporting PCI
     2.2 or greater and will likely not work in systems based on older revi-
     sions of the PCI specification.  Check the board's PCI version before
     purchasing the card.

OpenBSD 4.7                    October 26, 2009                              4
