1.\" 2.\" Copyright (c) 2009 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.Dd February 20, 2015 27.Dt TSEC 4 28.Os 29.Sh NAME 30.Nm tsec 31.Nd "Freescale Three-Speed Ethernet Controller device driver" 32.Sh SYNOPSIS 33To compile this driver into the kernel, place the following lines in your 34kernel configuration file: 35.Bd -ragged -offset indent 36.Cd "device tsec" 37.Cd "device miibus" 38.Ed 39.Sh DESCRIPTION 40The 41.Nm 42driver provides support for the gigabit Ethernet controller integrated in 43some of the Freescale system-on-chip devices. 44.Pp 45The 46.Nm 47driver supports the following media types: 48.Bl -tag -width xxxxxxxxxxxxxxxxxxxx 49.It autoselect 50Enable autoselection of the media type and options 51.It 10baseT/UTP 52Set 10Mbps operation 53.It 100baseTX 54Set 100Mbps operation 55.It 1000baseT 56Set 1000baseT operation 57.El 58.Pp 59The 60.Nm 61driver supports the following media options: 62.Bl -tag -width xxxxxxxxxxxxxxxxxxxx 63.It full-duplex 64Set full duplex operation 65.El 66.Pp 67The 68.Nm 69driver supports polled operation when the system is configured with 70DEVICE_POLLING kernel option, see 71.Xr polling 4 72for more details. 73.Pp 74The 75.Nm 76driver supports reception and transmission of extended frames 77for 78.Xr vlan 4 . 79This capability of 80.Nm 81can be controlled by means of the 82.Cm vlanmtu 83parameter 84to 85.Xr ifconfig 8 . 86.Pp 87The 88.Nm 89driver supports interrupts coalescing (IC) so that raising a transmit/receive 90frame interrupt is delayed, if possible, until a threshold-defined period of 91time has elapsed, or a threshold-defined frame counter has been reached 92(whichever occurs first). 93The following sysctls regulate this behaviour: 94.Bl -tag -width indent 95.It Va dev.tsec.X.int_coal.rx_time 96.It Va dev.tsec.X.int_coal.rx_count 97.It Va dev.tsec.X.int_coal.tx_time 98.It Va dev.tsec.X.int_coal.tx_count 99.Pp 100Value of 0 for either time or count disables IC on the given path. 101Time value 1021-65535 corresponds to a real time period and is expressed in units equivalent 103to 64 ticks of the TSEC clock. 104Count 1-255 represents the number of frames 105(note that value of 1 is equivalent to IC disabled). 106User provided values 107larger than supported will be trimmed to the maximum supported. 108More details 109are available in the reference manual of the device. 110.El 111.Sh HARDWARE 112Gigabit Ethernet controllers built into the following Freescale 113system-on-chip devices are known to work with the 114.Nm 115driver: 116.Pp 117.Bl -bullet -compact 118.It 119MPC8349 120.It 121MPC8533, MPC8541, MPC8555 122.El 123.Pp 124The enhanced version of the controller (eTSEC), integrated in the following 125devices, is also supported by this driver: 126.Pp 127.Bl -bullet -compact 128.It 129MPC8548, MPC8572 130.El 131.Sh SEE ALSO 132.Xr altq 4 , 133.Xr arp 4 , 134.Xr miibus 4 , 135.Xr netintro 4 , 136.Xr ng_ether 4 , 137.Xr polling 4 , 138.Xr vlan 4 , 139.Xr ifconfig 8 140.Sh HISTORY 141The 142.Nm 143device driver first appeared in 144.Fx 8.0 . 145.Sh AUTHORS 146.An -nosplit 147The base version of 148.Nm 149device driver was written by 150.An Piotr Kruszynski . 151It has been extended with polling and interrupt coalescing support by 152.An Rafal Jaworowski . 153It has been further enhanced with multicast, h/w checksum calculation and vlan 154support by 155.An Piotr Ziecik . 156This manual page was written by 157.An Rafal Jaworowski . 158