xref: /freebsd/share/man/man4/man4.arm/mge.4 (revision 830940567b49bb0c08dfaed40418999e76616909)
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