1.\" Copyright (c) 2008 Stanislav Sedov <stas@FreeBSD.org> 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.Dd May 17, 2019 26.Dt AE 4 27.Os 28.Sh NAME 29.Nm ae 30.Nd "Attansic/Atheros L2 FastEthernet controller driver" 31.Sh SYNOPSIS 32To compile this driver into the kernel, place the following lines in your 33kernel configuration file: 34.Bd -ragged -offset indent 35.Cd "device miibus" 36.Cd "device ae" 37.Ed 38.Pp 39Alternatively, to load the driver as a 40module at boot time, place the following line in 41.Xr loader.conf 5 : 42.Bd -literal -offset indent 43if_ae_load="YES" 44.Ed 45.Sh DESCRIPTION 46The 47.Nm 48device driver provides support for Attansic/Atheros L2 PCIe FastEthernet 49controllers. 50.Pp 51The controller supports hardware Ethernet checksum processing, hardware 52VLAN tag stripping/insertion and an interrupt moderation mechanism. 53Attansic L2 also features a 64-bit multicast hash filter. 54.Pp 55The 56.Nm 57driver supports the following media types: 58.Bl -tag -width ".Cm 10baseT/UTP" 59.It Cm autoselect 60Enable autoselection of the media type and options. 61The user can manually override the autoselected mode by 62adding media options to 63.Xr rc.conf 5 . 64.It Cm 10baseT/UTP 65Select 10Mbps operation. 66.It Cm 100baseTX 67Set 100Mbps (FastEthernet) operation. 68.El 69.Pp 70The 71.Nm 72driver provides support for the following media options: 73.Bl -tag -width ".Cm full-duplex" 74.It Cm full-duplex 75Force full duplex operation. 76.It Cm half-duplex 77Force half duplex operation. 78.El 79.Pp 80For more information on configuring this device, see 81.Xr ifconfig 8 . 82.Sh HARDWARE 83The 84.Nm 85driver supports Attansic/Atheros L2 PCIe FastEthernet controllers, and 86is known to support the following hardware: 87.Pp 88.Bl -bullet -compact 89.It 90ASUS EeePC 701 91.It 92ASUS EeePC 900 93.El 94.Pp 95Other hardware may or may not work with this driver. 96.Sh LOADER TUNABLES 97Tunables can be set at the 98.Xr loader 8 99prompt before booting the kernel or stored in 100.Xr loader.conf 5 . 101.Bl -tag -width "xxxxxx" 102.It Va hw.ae.msi_disable 103This tunable disables MSI support on the Ethernet hardware. 104The default value is 0. 105.El 106.Sh SYSCTL VARIABLES 107The 108.Nm 109driver collects a number of useful MAC counter during the work. 110The statistics is available via the 111.Va dev.ae.%d.stats 112.Xr sysctl 8 113tree, where %d corresponds to the controller number. 114.Sh DIAGNOSTICS 115.Bl -diag 116.It "ae%d: watchdog timeout." 117The device has stopped responding to the network, or there is a problem with 118the network connection (cable). 119.It "ae%d: reset timeout." 120The card reset operation has been timed out. 121.It "ae%d: Generating random ethernet address." 122No valid Ethernet address was found in the controller NVRAM and registers. 123Random locally administered address with ASUS OUI identifier will be used 124instead. 125.El 126.Sh SEE ALSO 127.Xr altq 4 , 128.Xr arp 4 , 129.Xr miibus 4 , 130.Xr netintro 4 , 131.Xr ng_ether 4 , 132.Xr vlan 4 , 133.Xr ifconfig 8 134.Sh HISTORY 135The 136.Nm 137driver and this manual page was written by 138.An Stanislav Sedov Aq Mt stas@FreeBSD.org . 139It first appeared in 140.Fx 7.1 . 141.Sh BUGS 142The Attansic L2 FastEthernet controller supports DMA but does not use a 143descriptor based transfer mechanism via scatter-gather DMA. 144Thus the data should be copied to/from the controller memory on each 145transmit/receive. 146Furthermore, a lot of data alignment restrictions apply. 147This may introduce a high CPU load on systems with heavy network activity. 148Luckily enough this should not be a problem on modern hardware as L2 does 149not support speeds faster than 100Mbps. 150