1cad7d367SPyun YongHyeon.\" Copyright (c) 2008 Pyun YongHyeon 2cad7d367SPyun YongHyeon.\" All rights reserved. 3cad7d367SPyun YongHyeon.\" 4cad7d367SPyun YongHyeon.\" Redistribution and use in source and binary forms, with or without 5cad7d367SPyun YongHyeon.\" modification, are permitted provided that the following conditions 6cad7d367SPyun YongHyeon.\" are met: 7cad7d367SPyun YongHyeon.\" 1. Redistributions of source code must retain the above copyright 8cad7d367SPyun YongHyeon.\" notice, this list of conditions and the following disclaimer. 9cad7d367SPyun YongHyeon.\" 2. Redistributions in binary form must reproduce the above copyright 10cad7d367SPyun YongHyeon.\" notice, this list of conditions and the following disclaimer in the 11cad7d367SPyun YongHyeon.\" documentation and/or other materials provided with the distribution. 12cad7d367SPyun YongHyeon.\" 13cad7d367SPyun YongHyeon.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14cad7d367SPyun YongHyeon.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15cad7d367SPyun YongHyeon.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16cad7d367SPyun YongHyeon.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17cad7d367SPyun YongHyeon.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18cad7d367SPyun YongHyeon.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19cad7d367SPyun YongHyeon.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20cad7d367SPyun YongHyeon.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21cad7d367SPyun YongHyeon.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22cad7d367SPyun YongHyeon.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23cad7d367SPyun YongHyeon.\" SUCH DAMAGE. 24cad7d367SPyun YongHyeon.\" 25cad7d367SPyun YongHyeon.Dd November 12, 2008 26cad7d367SPyun YongHyeon.Dt ALE 4 27cad7d367SPyun YongHyeon.Os 28cad7d367SPyun YongHyeon.Sh NAME 29cad7d367SPyun YongHyeon.Nm ale 30cad7d367SPyun YongHyeon.Nd Atheros AR8121/AR8113/AR8114 Gigabit/Fast Ethernet driver 31cad7d367SPyun YongHyeon.Sh SYNOPSIS 32cad7d367SPyun YongHyeonTo compile this driver into the kernel, 33cad7d367SPyun YongHyeonplace the following lines in your 34cad7d367SPyun YongHyeonkernel configuration file: 35cad7d367SPyun YongHyeon.Bd -ragged -offset indent 36cad7d367SPyun YongHyeon.Cd "device miibus" 37cad7d367SPyun YongHyeon.Cd "device ale" 38cad7d367SPyun YongHyeon.Ed 39cad7d367SPyun YongHyeon.Pp 40cad7d367SPyun YongHyeonAlternatively, to load the driver as a 41cad7d367SPyun YongHyeonmodule at boot time, place the following line in 42cad7d367SPyun YongHyeon.Xr loader.conf 5 : 43cad7d367SPyun YongHyeon.Bd -literal -offset indent 44cad7d367SPyun YongHyeonif_ale_load="YES" 45cad7d367SPyun YongHyeon.Ed 46cad7d367SPyun YongHyeon.Sh DESCRIPTION 47cad7d367SPyun YongHyeonThe 48cad7d367SPyun YongHyeon.Nm 49cad7d367SPyun YongHyeondevice driver provides support for Atheros AR8121 PCI Express 50d3e659b5SChristian BruefferGigabit Ethernet controllers and Atheros AR8113/AR8114 PCI 51cad7d367SPyun YongHyeonExpress Fast Ethernet controllers. 52cad7d367SPyun YongHyeon.Pp 53cad7d367SPyun YongHyeonAll LOMs supported by the 54cad7d367SPyun YongHyeon.Nm 55cad7d367SPyun YongHyeondriver have TCP/UDP/IP checksum offload for both receive and transmit, 56cad7d367SPyun YongHyeonTCP segmentation offload (TSO), hardware VLAN tag stripping/insertion 57cad7d367SPyun YongHyeonfeatures, Wake On Lan (WOL) and an interrupt coalescing/moderation 58cad7d367SPyun YongHyeonmechanism as well as a 64-bit multicast hash filter. 59cad7d367SPyun YongHyeon.Pp 60cad7d367SPyun YongHyeonThe AR8121 also supports Jumbo Frames (up to 8132 bytes), which can 61cad7d367SPyun YongHyeonbe configured via the interface MTU setting. 62cad7d367SPyun YongHyeonSelecting an MTU larger than 1500 bytes with the 63cad7d367SPyun YongHyeon.Xr ifconfig 8 64cad7d367SPyun YongHyeonutility configures the adapter to receive and transmit Jumbo Frames. 65cad7d367SPyun YongHyeon.Pp 66cad7d367SPyun YongHyeonThe 67cad7d367SPyun YongHyeon.Nm 68cad7d367SPyun YongHyeondriver supports the following media types: 69cad7d367SPyun YongHyeon.Bl -tag -width ".Cm 10baseT/UTP" 70cad7d367SPyun YongHyeon.It Cm autoselect 71cad7d367SPyun YongHyeonEnable autoselection of the media type and options. 72cad7d367SPyun YongHyeonThe user can manually override 73cad7d367SPyun YongHyeonthe autoselected mode by adding media options to 74cad7d367SPyun YongHyeon.Xr rc.conf 5 . 75cad7d367SPyun YongHyeon.It Cm 10baseT/UTP 76cad7d367SPyun YongHyeonSet 10Mbps operation. 77cad7d367SPyun YongHyeon.It Cm 100baseTX 78cad7d367SPyun YongHyeonSet 100Mbps (Fast Ethernet) operation. 79cad7d367SPyun YongHyeon.It Cm 1000baseTX 80cad7d367SPyun YongHyeonSet 1000baseTX operation over twisted pair. 81cad7d367SPyun YongHyeon.El 82cad7d367SPyun YongHyeon.Pp 83cad7d367SPyun YongHyeonThe 84cad7d367SPyun YongHyeon.Nm 85cad7d367SPyun YongHyeondriver supports the following media options: 86cad7d367SPyun YongHyeon.Bl -tag -width ".Cm full-duplex" 87cad7d367SPyun YongHyeon.It Cm full-duplex 88cad7d367SPyun YongHyeonForce full duplex operation. 89cad7d367SPyun YongHyeon.It Cm half-duplex 90cad7d367SPyun YongHyeonForce half duplex operation. 91cad7d367SPyun YongHyeon.El 92cad7d367SPyun YongHyeon.Pp 93cad7d367SPyun YongHyeonFor more information on configuring this device, see 94cad7d367SPyun YongHyeon.Xr ifconfig 8 . 95cad7d367SPyun YongHyeon.Sh HARDWARE 96cad7d367SPyun YongHyeonThe 97cad7d367SPyun YongHyeon.Nm 98cad7d367SPyun YongHyeondevice driver provides support for the following Ethernet controllers: 99cad7d367SPyun YongHyeon.Pp 100cad7d367SPyun YongHyeon.Bl -bullet -compact 101cad7d367SPyun YongHyeon.It 102cad7d367SPyun YongHyeonAtheros AR8113 PCI Express Fast Ethernet controller 103cad7d367SPyun YongHyeon.It 104cad7d367SPyun YongHyeonAtheros AR8114 PCI Express Fast Ethernet controller 105cad7d367SPyun YongHyeon.It 106cad7d367SPyun YongHyeonAtheros AR8121 PCI Express Gigabit Ethernet controller 107cad7d367SPyun YongHyeon.El 108cad7d367SPyun YongHyeon.Sh LOADER TUNABLES 109cad7d367SPyun YongHyeonTunables can be set at the 110cad7d367SPyun YongHyeon.Xr loader 8 111cad7d367SPyun YongHyeonprompt before booting the kernel or stored in 112cad7d367SPyun YongHyeon.Xr loader.conf 5 . 113cad7d367SPyun YongHyeon.Bl -tag -width "xxxxxx" 114cad7d367SPyun YongHyeon.It Va hw.ale.msi_disable 115cad7d367SPyun YongHyeonThis tunable disables MSI support on the Ethernet hardware. 116cad7d367SPyun YongHyeonThe default value is 0. 117cad7d367SPyun YongHyeon.It Va hw.ale.msix_disable 118cad7d367SPyun YongHyeonThis tunable disables MSI-X support on the Ethernet hardware. 119cad7d367SPyun YongHyeonThe default value is 0. 120cad7d367SPyun YongHyeon.El 121cad7d367SPyun YongHyeon.Sh SYSCTL VARIABLES 122cad7d367SPyun YongHyeonThe following variables are available as both 123cad7d367SPyun YongHyeon.Xr sysctl 8 124cad7d367SPyun YongHyeonvariables and 125cad7d367SPyun YongHyeon.Xr loader 8 126cad7d367SPyun YongHyeontunables: 127cad7d367SPyun YongHyeon.Bl -tag -width "xxxxxx" 128cad7d367SPyun YongHyeon.It Va dev.ale.%d.int_rx_mod 129cad7d367SPyun YongHyeonMaximum amount of time to delay receive interrupt processing in 130cad7d367SPyun YongHyeonunits of 1us. 131cad7d367SPyun YongHyeonThe accepted range is 0 to 130000, the default is 30(30us). 132cad7d367SPyun YongHyeonValue 0 completely disables the interrupt moderation. 133cad7d367SPyun YongHyeon.It Va dev.ale.%d.int_tx_mod 134cad7d367SPyun YongHyeonMaximum amount of time to delay transmit interrupt processing in 135cad7d367SPyun YongHyeonunits of 1us. 136cad7d367SPyun YongHyeonThe accepted range is 0 to 130000, the default is 1000(1ms). 137cad7d367SPyun YongHyeonValue 0 completely disables the interrupt moderation. 138cad7d367SPyun YongHyeon.It Va dev.ale.%d.process_limit 139cad7d367SPyun YongHyeonMaximum amount of Rx frames to be processed in the event loop before 140cad7d367SPyun YongHyeonrescheduling a taskqueue. 141cad7d367SPyun YongHyeonThe accepted range is 32 to 255, the default value is 128 events. 142cad7d367SPyun YongHyeonThe interface does not need to be brought down and up again before 143cad7d367SPyun YongHyeona change takes effect. 144cad7d367SPyun YongHyeon.El 145cad7d367SPyun YongHyeon.Sh SEE ALSO 146cad7d367SPyun YongHyeon.Xr altq 4 , 147cad7d367SPyun YongHyeon.Xr arp 4 , 148cad7d367SPyun YongHyeon.Xr miibus 4 , 149cad7d367SPyun YongHyeon.Xr netintro 4 , 150cad7d367SPyun YongHyeon.Xr ng_ether 4 , 151cad7d367SPyun YongHyeon.Xr vlan 4 , 152cad7d367SPyun YongHyeon.Xr ifconfig 8 153cad7d367SPyun YongHyeon.Sh HISTORY 154cad7d367SPyun YongHyeonThe 155cad7d367SPyun YongHyeon.Nm 156cad7d367SPyun YongHyeondriver was written by 157*6c899950SBaptiste Daroussin.An Pyun YongHyeon Aq Mt yongari@FreeBSD.org . 158cad7d367SPyun YongHyeonIt first appeared in 159cad7d367SPyun YongHyeon.Fx 7.1 . 160