1eddfd57fSSam Leffler.\"- 2eddfd57fSSam Leffler.\" Copyright (c) 2009 Sam Leffler, Errno Consulting 3eddfd57fSSam Leffler.\" All rights reserved. 4eddfd57fSSam Leffler.\"" 5eddfd57fSSam Leffler.\" Redistribution and use in source and binary forms, with or without 6eddfd57fSSam Leffler.\" modification, are permitted provided that the following conditions 7eddfd57fSSam Leffler.\" are met: 8eddfd57fSSam Leffler.\" 1. Redistributions of source code must retain the above copyright 9eddfd57fSSam Leffler.\" notice, this list of conditions and the following disclaimer, 10eddfd57fSSam Leffler.\" without modification. 11eddfd57fSSam Leffler.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer 12eddfd57fSSam Leffler.\" similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any 13eddfd57fSSam Leffler.\" redistribution must be conditioned upon including a substantially 14eddfd57fSSam Leffler.\" similar Disclaimer requirement for further binary redistribution. 15eddfd57fSSam Leffler.\" 16eddfd57fSSam Leffler.\" NO WARRANTY 17eddfd57fSSam Leffler.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18eddfd57fSSam Leffler.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19eddfd57fSSam Leffler.\" LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY 20eddfd57fSSam Leffler.\" AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL 21eddfd57fSSam Leffler.\" THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, 22eddfd57fSSam Leffler.\" OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23eddfd57fSSam Leffler.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 24eddfd57fSSam Leffler.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER 25eddfd57fSSam Leffler.\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 26eddfd57fSSam Leffler.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF 27eddfd57fSSam Leffler.\" THE POSSIBILITY OF SUCH DAMAGES. 28eddfd57fSSam Leffler.\" 29eddfd57fSSam Leffler.\" $FreeBSD$ 30eddfd57fSSam Leffler.\"/ 3159aa14a9SRui Paulo.Dd July 8, 2009 32eddfd57fSSam Leffler.Dt MWL 4 33eddfd57fSSam Leffler.Os 34eddfd57fSSam Leffler.Sh NAME 35eddfd57fSSam Leffler.Nm mwl 36eddfd57fSSam Leffler.Nd "Marvell 88W8363 IEEE 802.11n wireless network driver" 37eddfd57fSSam Leffler.Sh SYNOPSIS 38eddfd57fSSam LefflerTo compile this driver into the kernel, 39eddfd57fSSam Lefflerplace the following lines in your 40eddfd57fSSam Lefflerkernel configuration file: 41eddfd57fSSam Leffler.Bd -ragged -offset indent 42eddfd57fSSam Leffler.Cd "device mwl" 43eddfd57fSSam Leffler.Cd "device mwlfw" 44eddfd57fSSam Leffler.Cd "device wlan" 45eddfd57fSSam Leffler.Cd "device firmware" 46eddfd57fSSam Leffler.Ed 47eddfd57fSSam Leffler.Pp 48eddfd57fSSam LefflerAlternatively, to load the driver as a 49eddfd57fSSam Lefflermodule at boot time, place the following line in 50eddfd57fSSam Leffler.Xr loader.conf 5 : 51eddfd57fSSam Leffler.Bd -literal -offset indent 52eddfd57fSSam Lefflerif_mwl_load="YES" 53eddfd57fSSam Leffler.Ed 54eddfd57fSSam Leffler.Sh DESCRIPTION 55eddfd57fSSam LefflerThe 56eddfd57fSSam Leffler.Nm 57eddfd57fSSam Lefflerdriver provides support for IEEE 802.11n wireless network adapters based on 58eddfd57fSSam LefflerMarvell 88W8363 parts. 59eddfd57fSSam LefflerPCI and/or CardBus interfaces are supported. 60eddfd57fSSam Leffler.Pp 61eddfd57fSSam LefflerThis driver requires the firmware built with the 62eddfd57fSSam Leffler.Nm mwlfw 63eddfd57fSSam Lefflermodule to work. 64eddfd57fSSam LefflerNormally this module is loaded on demand by the driver but it may 65eddfd57fSSam Leffleralso be compiled into the kernel. 66eddfd57fSSam Leffler.Pp 6759aa14a9SRui PauloSupported features include 802.11n, power management, BSS, MBSS, 68eddfd57fSSam Lefflerand host-based access point operation modes. 69eddfd57fSSam LefflerAll host/device interaction is via DMA. 70eddfd57fSSam Leffler.Pp 71eddfd57fSSam LefflerThe 72eddfd57fSSam Leffler.Nm 73eddfd57fSSam Lefflerdriver encapsulates IP and ARP traffic as 802.11 frames, however 74eddfd57fSSam Lefflerit can receive either 802.11 or 802.3 frames. 75eddfd57fSSam LefflerDevices support 802.11n, 802.11a, 802.11g, and 802.11b operation with 76eddfd57fSSam Lefflertransmit speeds appropriate to each. 77eddfd57fSSam LefflerThe actual transmit speed used is dependent on signal quality and the 78eddfd57fSSam Leffler.Dq "rate control" 79eddfd57fSSam Leffleralgorithm implemented in the firmware. 80eddfd57fSSam LefflerAll chips have hardware support for WEP, 81eddfd57fSSam LefflerAES-CCM, TKIP, and Michael cryptographic operations. 82eddfd57fSSam Leffler.Pp 83eddfd57fSSam LefflerThe driver supports 84eddfd57fSSam Leffler.Cm station , 85eddfd57fSSam Leffler.Cm hostap , 8659aa14a9SRui Paulo.Cm mesh , 87eddfd57fSSam Lefflerand 88eddfd57fSSam Leffler.Cm wds 89eddfd57fSSam Lefflermode operation. 90eddfd57fSSam LefflerMultiple 91eddfd57fSSam Leffler.Cm hostap 92eddfd57fSSam Lefflervirtual interfaces may be configured for simultaneous use. 93eddfd57fSSam LefflerWhen multiple interfaces are configured each may have a separate 94eddfd57fSSam Lefflermac address that is formed by setting the U/L bits in the mac 95eddfd57fSSam Leffleraddress assigned to the underlying device. 96eddfd57fSSam LefflerAny number of 97eddfd57fSSam Leffler.Cm wds 98eddfd57fSSam Lefflervirtual interfaces may be configured together with 99eddfd57fSSam Leffler.Cm hostap 100eddfd57fSSam Lefflerinterfaces. 101eddfd57fSSam LefflerMultiple 102eddfd57fSSam Leffler.Cm station 103eddfd57fSSam Lefflerinterfaces may be operated together with 104eddfd57fSSam Leffler.Cm hostap 105eddfd57fSSam Lefflerinterfaces to construct a wireless repeater device. 106eddfd57fSSam LefflerFor more information on configuring this device, see 107eddfd57fSSam Leffler.Xr ifconfig 8 . 108eddfd57fSSam Leffler.Pp 109eddfd57fSSam LefflerDevices supported by the 110eddfd57fSSam Leffler.Nm 111eddfd57fSSam Lefflerdriver come in either Cardbus or mini-PCI packages. 112eddfd57fSSam LefflerWireless cards in Cardbus slots may be inserted and ejected on the fly. 113eddfd57fSSam Leffler.Sh EXAMPLES 114eddfd57fSSam LefflerJoin an existing BSS network (ie: connect to an access point): 115eddfd57fSSam Leffler.Pp 116eddfd57fSSam Leffler.Bd -literal -offset indent 117eddfd57fSSam Lefflerifconfig wlan create wlandev mwl0 inet 192.168.0.20 \e 118eddfd57fSSam Leffler netmask 0xffffff00" 119eddfd57fSSam Leffler.Ed 120eddfd57fSSam Leffler.Pp 121eddfd57fSSam LefflerJoin a specific BSS network with network name 122eddfd57fSSam Leffler.Dq Li my_net : 123eddfd57fSSam Leffler.Pp 124eddfd57fSSam Leffler.Bd -literal -offset indent 125eddfd57fSSam Lefflerifconfig wlan create wlandev mwl0 inet 192.168.0.20 \e 126eddfd57fSSam Leffler netmask 0xffffff00 ssid my_net" 127eddfd57fSSam Leffler.Ed 128eddfd57fSSam Leffler.Pp 129eddfd57fSSam LefflerJoin a specific BSS network with WEP encryption: 130eddfd57fSSam Leffler.Bd -literal -offset indent 131eddfd57fSSam Lefflerifconfig wlan0 create wlandev mwl0 132eddfd57fSSam Lefflerifconfig wlan0 inet 192.168.0.20 netmask 0xffffff00 ssid my_net \e 133eddfd57fSSam Leffler wepmode on wepkey 0x8736639624 134eddfd57fSSam Leffler.Ed 135eddfd57fSSam Leffler.Pp 136eddfd57fSSam LefflerCreate an 802.11g host-based access point: 137eddfd57fSSam Leffler.Bd -literal -offset indent 138eddfd57fSSam Lefflerifconfig wlan0 create wlandev mwl0 wlanmode hostap 139eddfd57fSSam Lefflerifconfig wlan0 inet 192.168.0.10 netmask 0xffffff00 ssid my_ap \e 140eddfd57fSSam Leffler mode 11g 141eddfd57fSSam Leffler.Ed 142eddfd57fSSam Leffler.Pp 14359aa14a9SRui PauloCreate an 802.11a mesh station: 14459aa14a9SRui Paulo.Bd -literal -offset indent 14559aa14a9SRui Pauloifconfig wlan0 create wlandev mwl0 wlanmode mesh 14659aa14a9SRui Pauloifconfig wlan0 meshid my_mesh mode 11a inet 192.168.0.10/24 14759aa14a9SRui Paulo.Ed 14859aa14a9SRui Paulo.Pp 149eddfd57fSSam LefflerCreate two virtual 802.11a host-based access points, one with 150eddfd57fSSam Lefflerwith WEP enabled and one with no security, and bridge them to 151eddfd57fSSam Lefflerthe fxp0 (wired) device: 152eddfd57fSSam Leffler.Bd -literal -offset indent 153eddfd57fSSam Lefflerifconfig wlan0 create wlandev mwl0 wlanmode hostap \e 154eddfd57fSSam Leffler ssid paying-customers wepmode on wepkey 0x1234567890 \e 155eddfd57fSSam Leffler mode 11a up 156eddfd57fSSam Lefflerifconfig wlan1 create wlandev mwl0 wlanmode hostap bssid \e 157eddfd57fSSam Leffler ssid freeloaders up 158eddfd57fSSam Lefflerifconfig bridge0 create addm wlan0 addm wlan1 addm fxp0 up 159eddfd57fSSam Leffler.Ed 160eddfd57fSSam Leffler.Sh DIAGNOSTICS 161eddfd57fSSam Leffler.Bl -diag 162eddfd57fSSam Leffler.It "mwl%d: unable to setup builtin firmware" 163eddfd57fSSam LefflerThere was a problem downloading and/or setting up the firmware. 164eddfd57fSSam LefflerThe device is not usable. 165eddfd57fSSam Leffler.It "mwl%d: failed to setup descriptors: %d" 166eddfd57fSSam LefflerThere was a problem setting up the DMA data structures. 167eddfd57fSSam LefflerThis typically is caused by not being able to allocate contiguous memory. 168eddfd57fSSam Leffler.It "mwl%d: transmit timeout" 169eddfd57fSSam LefflerA frame dispatched to the hardware for transmission did not complete in time. 170eddfd57fSSam LefflerThis should not happen. 171eddfd57fSSam Leffler.It "mwl%d: device not present" 172eddfd57fSSam LefflerA cardbus device was ejected while active; the request to the firmware 173eddfd57fSSam Lefflerwas not completed. 174eddfd57fSSam Leffler.El 175eddfd57fSSam Leffler.Sh SEE ALSO 176eddfd57fSSam Leffler.Xr cardbus 4 , 177eddfd57fSSam Leffler.Xr intro 4 , 178eddfd57fSSam Leffler.Xr mwlfw 4 , 179eddfd57fSSam Leffler.Xr pci 4 , 180eddfd57fSSam Leffler.Xr wlan 4 , 181eddfd57fSSam Leffler.Xr wlan_ccmp 4 , 182eddfd57fSSam Leffler.Xr wlan_tkip 4 , 183eddfd57fSSam Leffler.Xr wlan_wep 4 , 184eddfd57fSSam Leffler.Xr wlan_xauth 4 , 185eddfd57fSSam Leffler.Xr hostapd 8 , 186eddfd57fSSam Leffler.Xr ifconfig 8 , 187eddfd57fSSam Leffler.Xr wpa_supplicant 8 188eddfd57fSSam Leffler.Sh HISTORY 189eddfd57fSSam LefflerThe 190eddfd57fSSam Leffler.Nm 191eddfd57fSSam Lefflerdevice driver first appeared in 192eddfd57fSSam Leffler.Fx 8.0 . 193eddfd57fSSam Leffler.Sh BUGS 194eddfd57fSSam LefflerThe driver does not support power-save operation in station mode; 195eddfd57fSSam Lefflerconsequently power use is suboptimal (e.g. on a laptop). 196