.\" $NetBSD: iwn.4,v 1.13 2014/10/30 13:05:58 nonaka Exp $
.\"
.\" Copyright (c) 2007,2008
.\" Damien Bergamini <damien.bergamini@free.fr>. All rights reserved.
.\"
.\" 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 October 30, 2014
.Dt IWN 4
.Os
.Sh NAME
.Nm iwn
.Nd Intel WiFi Link and Centrino IEEE 802.11 wireless network driver
.Sh SYNOPSIS
.Cd "iwn* at pci? dev ? function ?"
.Sh DESCRIPTION
The
.Nm
driver provides support for
.Tn Intel
Wireless WiFi Link 4965/5000/1000 and Centrino Wireless-N 1000/2000/6000
Series PCIe Mini Card network adapters.
.Pp
The Intel Wireless WiFi Link 4965AGN (codenamed Kedron) is a PCIe
Mini Card network adapter that operates in the 2GHz and 5GHz spectra.
It has 2 transmit paths and 3 receiver paths (2T3R).
It is part of the fourth-generation Centrino platform (codenamed Santa Rosa).
.Pp
The Intel WiFi Link 5000 series is a family of wireless network adapters
that operate in the 2GHz and 5GHz spectra.
They are part of the fifth-generation Centrino platform (codenamed Montevina).
These adapters are available in both PCIe Mini Card (model code ending by MMW)
and PCIe Half Mini Card (model code ending by HMW) form factor.
The
.Nm
driver provides support for the 5100 (codenamed Shirley Peak 1x2),
5150 (codenamed Echo Peak-V), 5300 (codenamed Shirley Peak 3x3) and
5350 (codenamed Echo Peak-P) adapters.
The 5100 and 5150 adapters have 1 transmit path and 2 receiver paths (1T2R).
The 5300 and 5350 adapters have 3 transmit paths and 3 receiver paths (3T3R).
.Pp
The Intel WiFi Link 1000 (codenamed Condor Peak) is a single-chip wireless
network adapter that operates in the 2GHz spectrum.
It is part of the sixth-generation Centrino platform (codenamed Calpella).
It is available in both PCIe Mini Card (model code ending by MMW)
and PCIe Half Mini Card (model code ending by HMW) form factor.
It has 1 transmit path and 2 receiver paths (1T2R).
.Pp
The Intel Centrino Ultimate-N 6300 (codenamed Puma Peak 3x3) is a single-chip
wireless network adapter that operates in the 2GHz and 5GHz spectra.
It has 3 transmit paths and 3 receiver paths (3T3R).
The Intel Centrino Advanced-N 6250 (codenamed Kilmer Peak) is a combo
WiFi/WiMAX network adapter that operates in the 2GHz and 5GHz spectra.
It has 2 transmit paths and 2 receiver paths (2T2R).
The Intel Centrino Advanced-N 6200 (codenamed Puma Peak 2x2) is
a wireless network adapter that operates in the 2GHz and 5GHz spectra.
It has 2 transmit paths and 2 receiver paths (2T2R).
These adapters are part of the sixth-generation Centrino platform
(codenamed Calpella).
.Pp
The Intel Centrino Wireless-N 2230 (codename Jackson Peak) and Intel
Centrino Wireless-N 2200 (codename Marble Peak) are wireless network
adapters that operate in the 2GHz spectrum.
These adapters have 2 transmit paths and 2 receiver paths (2T2R).
The Intel Centrino Wireless-N 135 and Intel Centrino Wireless-N 105
(codename Canyon Peak) also operate in the 2GHz spectrum.
These adapters have 1 transmit path and 1 receiver path (1T1R).
.Pp
By default, the
.Nm
driver configures the adapter for BSS operation (aka infrastructure mode).
This mode requires the use of an access point.
.Pp
For more information on configuring this device, see
.Xr ifconfig 8 .
.Sh CONFIGURATION
The
.Nm
driver can be configured at runtime with
.Xr ifconfig 8
using the following parameters:
.Bl -tag -width Ds
.It Cm bssid Ar bssid
Set the desired BSSID.
.It Fl bssid
Unset the desired BSSID.
The interface will automatically select a BSSID in this mode, which is
the default.
.It Cm chan Ar n
Set the channel (radio frequency) to be used by the driver based on
the given channel ID
.Ar n .
.It Fl chan
Unset the desired channel to be used by the driver.
The driver will automatically select a channel in this mode, which is
the default.
.It Cm media Ar media
The
.Nm
driver supports the following
.Ar media
types:
.Pp
.Bl -tag -width autoselect -compact
.It Cm autoselect
Enable autoselection of the media type and options.
.El
.It Cm mediaopt Ar opts
The
.Nm
driver supports the following media options:
.Pp
.Bl -tag -width monitor -compact
.It Cm monitor
Select monitor mode.
.El
.It Fl mediaopt Ar opts
Disable the specified media options on the driver and return it to the
default mode of operation (BSS).
.It Cm mode Ar mode
The
.Nm
driver supports the following modes:
.Pp
.Bl -tag -width 11b -compact
.It Cm 11a
Force 802.11a operation.
.It Cm 11b
Force 802.11b operation.
.It Cm 11g
Force 802.11g operation.
.El
.It Cm nwid Ar id
Set the network ID.
The
.Ar id
can either be any text string up to 32 characters in length,
or a series of hexadecimal digits up to 64 digits.
An empty
.Ar id
string allows the interface to connect to any available access points.
By default the
.Nm
driver uses an empty string.
Note that network ID is synonymous with Extended Service Set ID (ESSID).
.It Cm nwkey Ar key
Enable WEP encryption using the specified
.Ar key .
The
.Ar key
can either be a string, a series of hexadecimal digits (preceded by
.Sq 0x ) ,
or a set of keys of the form
.Dq n:k1,k2,k3,k4 ,
where
.Sq n
specifies which of the keys will be used for transmitted packets,
and the four keys,
.Dq k1
through
.Dq k4 ,
are configured as WEP keys.
If a set of keys is specified, a comma
.Pq Sq \&,
within the key must be escaped with a backslash.
Note that if multiple keys are used, their order must be the same within
the network.
.Nm
is capable of using both 40-bit (5 characters or 10 hexadecimal digits)
or 104-bit (13 characters or 26 hexadecimal digits) keys.
.It Fl nwkey
Disable WEP encryption.
This is the default mode of operation.
.El
.Sh EXAMPLES
The following
.Xr ifconfig.if 5 ,
example configures iwn0 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
Configure iwn0 for WEP, using hex key
.Dq 0x1deadbeef1 :
.Bd -literal -offset indent
# ifconfig iwn0 nwkey 0x1deadbeef1
.Ed
.Pp
Return iwn0 to its default settings:
.Bd -literal -offset indent
# ifconfig iwn0 -bssid -chan media autoselect \e
nwid "" -nwkey
.Ed
.Pp
Join an existing BSS network,
.Dq my_net :
.Bd -literal -offset indent
# ifconfig iwn0 192.168.1.1 netmask 0xffffff00 nwid my_net
.Ed
.Sh DIAGNOSTICS
.Bl -diag
.It "iwn%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.
.It "iwn%d: fatal firmware error"
For some reason, the firmware crashed.
The driver will reset the hardware.
This should not happen.
.It "iwn%d: radio is disabled by hardware switch"
The radio transmitter is off and thus no packet can go out.
The driver will reset the hardware.
Make sure the laptop radio switch is on.
.It "iwn%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 "iwn%d: could not get firmware handle %s"
.It "iwn%d: could not read firmware"
The driver was unable to find the file with the proper firmware image.
It should be located in
.Pa /libdata/firmware/if_iwn .
.It "iwn%d: firmware file too short: %d bytes"
The firmware image is corrupted and can't be loaded into the adapter.
.It "iwn%d: could not load firmware"
An attempt to load the firmware into the adapter failed.
The driver will reset the hardware.
.El
.Sh SEE ALSO
.Xr arp 4 ,
.Xr ifmedia 4 ,
.Xr intro 4 ,
.Xr netintro 4 ,
.Xr pci 4 ,
.Xr ifconfig.if 5 ,
.Xr ifconfig 8
.Sh AUTHORS
The
.Nm
driver and this man page were written by
.An Damien Bergamini Aq Mt damien.bergamini@free.fr .