1.\" 2.\" Copyright (c) 2008 Semihalf, Rafal Jaworowski 3.\" 4.\" All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 15.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR 16.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 17.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 18.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, 19.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 20.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 21.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 22.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 23.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 24.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 25.\" 26.\" $FreeBSD$ 27.\" 28.Dd November 27, 2008 29.Dt MGE 4 30.Os 31.Sh NAME 32.Nm mge 33.Nd "Marvell Gigabit Ethernet device driver" 34.Sh SYNOPSIS 35To compile this driver into the kernel, place the following lines in your 36kernel configuration file: 37.Bd -ragged -offset indent 38.Cd "device mge" 39.Cd "device miibus" 40.Ed 41.Sh DESCRIPTION 42The 43.Nm 44driver provides support for gigabit Ethernet controller integrated in Marvell 45system-on-chip devices. 46.Pp 47The 48.Nm 49driver supports the following media types: 50.Pp 51.Bl -tag -width xxxxxxxxxxxxxxxxxxxx 52.It autoselect 53Enable autoselection of the media type and options 54.It 10baseT/UTP 55Set 10Mbps operation 56.It 100baseTX 57Set 100Mbps operation 58.It 1000baseT 59Set 1000baseT operation 60.El 61.Pp 62The 63.Nm 64driver supports the following media options: 65.Pp 66.Bl -tag -width xxxxxxxxxxxxxxxxxxxx 67.It full-duplex 68Set full duplex operation 69.El 70.Pp 71The 72.Nm 73driver supports polled operation when the system is configured with 74DEVICE_POLLING kernel option, see 75.Xr polling 4 76for more details. 77.Pp 78The 79.Nm 80driver supports reception and transmission of extended frames 81for 82.Xr vlan 4 . 83This capability of 84.Nm 85can be controlled by means of the 86.Cm vlanmtu 87parameter 88to 89.Xr ifconfig 8 . 90.Pp 91The 92.Nm 93driver supports interrupts coalescing (IC) so that raising a transmit/receive 94frame interrupt is delayed, if possible, until a threshold-defined period of 95time has elapsed. The following sysctls regulate this behaviour (separately 96for each path): 97.Bl -tag -width indent 98.It Va dev.mge.X.int_coal.rx_time 99.It Va dev.mge.X.int_coal.tx_time 100.Pp 101Value of 0 disables IC on the given path, value greater than zero corresponds 102to a real time period and is expressed in units equivalent to 64 ticks of the 103MGE clock. Maximum allowed value depends on MGE hardware revision. User 104provided values larger than supported will be trimmed to the maximum 105supported. More details are available in the reference manual of the device. 106.El 107.Sh HARDWARE 108Gigabit Ethernet controllers built into the following Marvell systems-on-chip 109are known to work with the 110.Nm 111driver: 112.Pp 113.Bl -bullet -compact 114.It 115Orion 88F5182 116.It 117Orion 88F5281 118.It 119Kirkwood 88F6281 (MGE V2) 120.It 121Discovery MV78100 (MGE V2) 122.El 123.Pp 124There are also Marvell system controllers for PowerPC processors, which 125include a variation of this gigabit Ethernet module integrated on chip, and 126they should also work with the 127.Nm 128driver, but this wasn't tested: 129.Pp 130.Bl -bullet -compact 131.It 132MV64430 133.It 134MV64460, MV64461, MV64462 135.El 136.Sh SEE ALSO 137.Xr altq 4 , 138.Xr arp 4 , 139.Xr miibus 4 , 140.Xr netintro 4 , 141.Xr ng_ether 4 , 142.Xr polling 4 , 143.Xr vlan 4 , 144.Xr ifconfig 8 145.Sh HISTORY 146The 147.Nm 148device driver first appeared in 149.Fx 8.0 . 150.Sh AUTHORS 151.An -nosplit 152The base version of 153.Nm 154device driver was written by 155.An Grzegorz Bernacki. 156It has been extended with advanced features (polling, interrupt coalescing, 157multicast, h/w checksum calculation etc.) by 158.An Piotr Ziecik . 159This manual page was written by 160.An Rafal Jaworowski . 161