1296bd855SSascha Wildner.\" Copyright (c) 2009 Pyun YongHyeon 2296bd855SSascha Wildner.\" All rights reserved. 3296bd855SSascha Wildner.\" 4296bd855SSascha Wildner.\" Redistribution and use in source and binary forms, with or without 5296bd855SSascha Wildner.\" modification, are permitted provided that the following conditions 6296bd855SSascha Wildner.\" are met: 7296bd855SSascha Wildner.\" 1. Redistributions of source code must retain the above copyright 8296bd855SSascha Wildner.\" notice, this list of conditions and the following disclaimer. 9296bd855SSascha Wildner.\" 2. Redistributions in binary form must reproduce the above copyright 10296bd855SSascha Wildner.\" notice, this list of conditions and the following disclaimer in the 11296bd855SSascha Wildner.\" documentation and/or other materials provided with the distribution. 12296bd855SSascha Wildner.\" 13296bd855SSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14296bd855SSascha Wildner.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15296bd855SSascha Wildner.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16296bd855SSascha Wildner.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17296bd855SSascha Wildner.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18296bd855SSascha Wildner.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19296bd855SSascha Wildner.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20296bd855SSascha Wildner.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21296bd855SSascha Wildner.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22296bd855SSascha Wildner.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23296bd855SSascha Wildner.\" SUCH DAMAGE. 24296bd855SSascha Wildner.\" 25642ebfddSSascha Wildner.\" $FreeBSD: head/share/man/man4/alc.4 304576 2016-08-22 01:28:02Z yongari $ 26296bd855SSascha Wildner.\" 27642ebfddSSascha Wildner.Dd January 5, 2017 28296bd855SSascha Wildner.Dt ALC 4 29296bd855SSascha Wildner.Os 30296bd855SSascha Wildner.Sh NAME 31296bd855SSascha Wildner.Nm alc 32c9d84897SSascha Wildner.Nd Atheros AR813x/AR815x/AR816x/AR817x Gigabit/Fast Ethernet driver 33296bd855SSascha Wildner.Sh SYNOPSIS 34296bd855SSascha WildnerTo compile this driver into the kernel, 35296bd855SSascha Wildnerplace the following lines in your 36296bd855SSascha Wildnerkernel configuration file: 37296bd855SSascha Wildner.Bd -ragged -offset indent 38296bd855SSascha Wildner.Cd "device miibus" 39296bd855SSascha Wildner.Cd "device alc" 40296bd855SSascha Wildner.Ed 41296bd855SSascha Wildner.Pp 42296bd855SSascha WildnerAlternatively, to load the driver as a 43296bd855SSascha Wildnermodule at boot time, place the following line in 44296bd855SSascha Wildner.Xr loader.conf 5 : 45296bd855SSascha Wildner.Bd -literal -offset indent 46296bd855SSascha Wildnerif_alc_load="YES" 47296bd855SSascha Wildner.Ed 48296bd855SSascha Wildner.Sh DESCRIPTION 49296bd855SSascha WildnerThe 50296bd855SSascha Wildner.Nm 51c9d84897SSascha Wildnerdevice driver provides support for Atheros AR813x, AR815x, AR816x 52c9d84897SSascha Wildnerand AR817x PCI Express Gigabit/Fast Ethernet controllers. 53296bd855SSascha Wildner.Pp 54296bd855SSascha WildnerAll LOMs supported by the 55296bd855SSascha Wildner.Nm 56296bd855SSascha Wildnerdriver have TCP/UDP/IP checksum offload for transmit, TCP 57296bd855SSascha Wildnersegmentation offload (TSO), hardware VLAN tag stripping/insertion 58296bd855SSascha Wildnerfeatures, Wake On Lan (WOL) and an interrupt moderation mechanism 59296bd855SSascha Wildneras well as a 64-bit multicast hash filter. 60296bd855SSascha Wildner.Pp 61c9d84897SSascha WildnerThe AR813x, AR815x, AR816x and AR817x supports Jumbo Frames (up to 62c9d84897SSascha Wildner9216, 6144, 9216 and 9216 bytes, respectively), which can be 63c9d84897SSascha Wildnerconfigured via the interface MTU setting. 64296bd855SSascha WildnerSelecting an MTU larger than 1500 bytes with the 65296bd855SSascha Wildner.Xr ifconfig 8 66296bd855SSascha Wildnerutility configures the adapter to receive and transmit Jumbo Frames. 67296bd855SSascha Wildner.Pp 68296bd855SSascha WildnerThe 69296bd855SSascha Wildner.Nm 70296bd855SSascha Wildnerdriver supports the following media types: 71296bd855SSascha Wildner.Bl -tag -width ".Cm 10baseT/UTP" 72296bd855SSascha Wildner.It Cm autoselect 73296bd855SSascha WildnerEnable autoselection of the media type and options. 74296bd855SSascha WildnerThe user can manually override 75296bd855SSascha Wildnerthe autoselected mode by adding media options to 76296bd855SSascha Wildner.Xr rc.conf 5 . 77296bd855SSascha Wildner.It Cm 10baseT/UTP 78296bd855SSascha WildnerSet 10Mbps operation. 79296bd855SSascha Wildner.It Cm 100baseTX 80296bd855SSascha WildnerSet 100Mbps (Fast Ethernet) operation. 81296bd855SSascha Wildner.It Cm 1000baseTX 82296bd855SSascha WildnerSet 1000baseTX operation over twisted pair. 83296bd855SSascha Wildner.El 84296bd855SSascha Wildner.Pp 85296bd855SSascha WildnerThe 86296bd855SSascha Wildner.Nm 87296bd855SSascha Wildnerdriver supports the following media options: 88296bd855SSascha Wildner.Bl -tag -width ".Cm full-duplex" 89296bd855SSascha Wildner.It Cm full-duplex 90296bd855SSascha WildnerForce full duplex operation. 91296bd855SSascha Wildner.It Cm half-duplex 92296bd855SSascha WildnerForce half duplex operation. 93296bd855SSascha Wildner.El 94296bd855SSascha Wildner.Pp 95296bd855SSascha WildnerFor more information on configuring this device, see 96296bd855SSascha Wildner.Xr ifconfig 8 . 97296bd855SSascha Wildner.Sh HARDWARE 98296bd855SSascha WildnerThe 99296bd855SSascha Wildner.Nm 100296bd855SSascha Wildnerdevice driver provides support for the following Ethernet controllers: 101296bd855SSascha Wildner.Pp 102296bd855SSascha Wildner.Bl -bullet -compact 103296bd855SSascha Wildner.It 104296bd855SSascha WildnerAtheros AR8131 PCI Express Gigabit Ethernet controller 105296bd855SSascha Wildner.It 106296bd855SSascha WildnerAtheros AR8132 PCI Express Fast Ethernet controller 107c9d84897SSascha Wildner.It 108c9d84897SSascha WildnerAtheros AR8151 v1.0 PCI Express Gigabit Ethernet controller 109c9d84897SSascha Wildner.It 110c9d84897SSascha WildnerAtheros AR8151 v2.0 PCI Express Gigabit Ethernet controller 111c9d84897SSascha Wildner.It 112c9d84897SSascha WildnerAtheros AR8152 v1.1 PCI Express Fast Ethernet controller 113c9d84897SSascha Wildner.It 114c9d84897SSascha WildnerAtheros AR8152 v2.0 PCI Express Fast Ethernet controller 115c9d84897SSascha Wildner.It 116c9d84897SSascha WildnerAtheros AR8161 PCI Express Gigabit Ethernet controller 117c9d84897SSascha Wildner.It 118c9d84897SSascha WildnerAtheros AR8162 PCI Express Fast Ethernet controller 119c9d84897SSascha Wildner.It 120c9d84897SSascha WildnerAtheros AR8171 PCI Express Gigabit Ethernet controller 121c9d84897SSascha Wildner.It 122c9d84897SSascha WildnerAtheros AR8172 PCI Express Fast Ethernet controller 123c9d84897SSascha Wildner.It 124c9d84897SSascha WildnerKiller E2200 Gigabit Ethernet controller 125642ebfddSSascha Wildner.It 126642ebfddSSascha WildnerKiller E2400 Gigabit Ethernet controller 127*d2a00396SSepherosa Ziehau.It 128*d2a00396SSepherosa ZiehauKiller E2500 Gigabit Ethernet controller 129296bd855SSascha Wildner.El 130296bd855SSascha Wildner.Sh LOADER TUNABLES 131296bd855SSascha WildnerTunables can be set at the 132296bd855SSascha Wildner.Xr loader 8 133296bd855SSascha Wildnerprompt before booting the kernel or stored in 134296bd855SSascha Wildner.Xr loader.conf 5 . 135296bd855SSascha Wildner.Bl -tag -width "xxxxxx" 136c9d84897SSascha Wildner.It Va hw.alc.msi.enable 137c9d84897SSascha WildnerBy default, the driver will use MSI if it is supported. 138c9d84897SSascha WildnerThis behavior can be turned off by setting this tunable to 0. 139c9d84897SSascha Wildner.\".It Va hw.alc.msix_disable 140c9d84897SSascha Wildner.\"This tunable disables MSI-X support on the Ethernet hardware. 141c9d84897SSascha Wildner.\"The default value is 0. 142296bd855SSascha Wildner.El 143296bd855SSascha Wildner.Sh SYSCTL VARIABLES 144296bd855SSascha WildnerThe following variables are available as both 145296bd855SSascha Wildner.Xr sysctl 8 146296bd855SSascha Wildnervariables and 147296bd855SSascha Wildner.Xr loader 8 148296bd855SSascha Wildnertunables: 149296bd855SSascha Wildner.Bl -tag -width "xxxxxx" 150296bd855SSascha Wildner.It Va dev.alc.%d.int_rx_mod 151296bd855SSascha WildnerMaximum amount of time to delay receive interrupt processing in 152296bd855SSascha Wildnerunits of 1us. 153296bd855SSascha WildnerThe accepted range is 0 to 130000, the default is 100(100us). 154296bd855SSascha WildnerValue 0 completely disables the interrupt moderation. 155296bd855SSascha Wildner.It Va dev.alc.%d.int_tx_mod 156296bd855SSascha WildnerMaximum amount of time to delay transmit interrupt processing in 157296bd855SSascha Wildnerunits of 1us. 158c9d84897SSascha WildnerThe accepted range is 0 to 130000, the default is 1000(1ms). 159296bd855SSascha WildnerValue 0 completely disables the interrupt moderation. 160296bd855SSascha Wildner.It Va dev.alc.%d.process_limit 161296bd855SSascha WildnerMaximum amount of Rx frames to be processed in the event loop before 162296bd855SSascha Wildnerrescheduling a taskqueue. 163296bd855SSascha WildnerThe accepted range is 32 to 255, the default value is 64 events. 164296bd855SSascha WildnerThe interface does not need to be brought down and up again before 165296bd855SSascha Wildnera change takes effect. 166296bd855SSascha Wildner.El 167296bd855SSascha Wildner.Sh SEE ALSO 168296bd855SSascha Wildner.Xr altq 4 , 169296bd855SSascha Wildner.Xr arp 4 , 170296bd855SSascha Wildner.Xr ifmedia 4 , 171296bd855SSascha Wildner.Xr miibus 4 , 172296bd855SSascha Wildner.Xr netintro 4 , 173296bd855SSascha Wildner.Xr ng_ether 4 , 174296bd855SSascha Wildner.Xr vlan 4 , 175296bd855SSascha Wildner.Xr ifconfig 8 176296bd855SSascha Wildner.Sh HISTORY 177296bd855SSascha WildnerThe 178296bd855SSascha Wildner.Nm 179296bd855SSascha Wildnerdriver was written by 180b2a6f486SFranco Fichtner.An Pyun YongHyeon Aq Mt yongari@FreeBSD.org . 181296bd855SSascha WildnerIt first appeared in 182296bd855SSascha Wildner.Fx 8.0 . 183296bd855SSascha Wildner.Pp 184296bd855SSascha WildnerIt was imported into 185296bd855SSascha Wildner.Dx 2.5 186296bd855SSascha Wildnerby 187296bd855SSascha Wildner.An Matt Dillon 188296bd855SSascha Wildnerbased on a port by 189296bd855SSascha Wildner.An Samuel J. Greear . 190