1bb0667afSPyun YongHyeon.\" Copyright (c) 2010 Pyun YongHyeon 2bb0667afSPyun YongHyeon.\" All rights reserved. 3bb0667afSPyun YongHyeon.\" 4bb0667afSPyun YongHyeon.\" Redistribution and use in source and binary forms, with or without 5bb0667afSPyun YongHyeon.\" modification, are permitted provided that the following conditions 6bb0667afSPyun YongHyeon.\" are met: 7bb0667afSPyun YongHyeon.\" 1. Redistributions of source code must retain the above copyright 8bb0667afSPyun YongHyeon.\" notice, this list of conditions and the following disclaimer. 9bb0667afSPyun YongHyeon.\" 2. Redistributions in binary form must reproduce the above copyright 10bb0667afSPyun YongHyeon.\" notice, this list of conditions and the following disclaimer in the 11bb0667afSPyun YongHyeon.\" documentation and/or other materials provided with the distribution. 12bb0667afSPyun YongHyeon.\" 13bb0667afSPyun YongHyeon.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14bb0667afSPyun YongHyeon.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15bb0667afSPyun YongHyeon.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16bb0667afSPyun YongHyeon.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17bb0667afSPyun YongHyeon.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18bb0667afSPyun YongHyeon.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19bb0667afSPyun YongHyeon.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20bb0667afSPyun YongHyeon.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21bb0667afSPyun YongHyeon.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22bb0667afSPyun YongHyeon.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23bb0667afSPyun YongHyeon.\" SUCH DAMAGE. 24bb0667afSPyun YongHyeon.\" 25bb0667afSPyun YongHyeon.\" $FreeBSD$ 26bb0667afSPyun YongHyeon.\" 27bb0667afSPyun YongHyeon.Dd December 30, 2010 28bb0667afSPyun YongHyeon.Dt VTE 4 29bb0667afSPyun YongHyeon.Os 30bb0667afSPyun YongHyeon.Sh NAME 31bb0667afSPyun YongHyeon.Nm vte 32bb0667afSPyun YongHyeon.Nd Vortex86 RDC R6040 Fast Ethernet driver 33bb0667afSPyun YongHyeon.Sh SYNOPSIS 34bb0667afSPyun YongHyeonTo compile this driver into the kernel, 35bb0667afSPyun YongHyeonplace the following lines in your 36bb0667afSPyun YongHyeonkernel configuration file: 37bb0667afSPyun YongHyeon.Bd -ragged -offset indent 38bb0667afSPyun YongHyeon.Cd "device miibus" 39bb0667afSPyun YongHyeon.Cd "device vte" 40bb0667afSPyun YongHyeon.Ed 41bb0667afSPyun YongHyeon.Pp 42bb0667afSPyun YongHyeonAlternatively, to load the driver as a 43bb0667afSPyun YongHyeonmodule at boot time, place the following line in 44bb0667afSPyun YongHyeon.Xr loader.conf 5 : 45bb0667afSPyun YongHyeon.Bd -literal -offset indent 46bb0667afSPyun YongHyeonif_vte_load="YES" 47bb0667afSPyun YongHyeon.Ed 48bb0667afSPyun YongHyeon.Sh DESCRIPTION 49bb0667afSPyun YongHyeonThe 50bb0667afSPyun YongHyeon.Nm 51bb0667afSPyun YongHyeondevice driver provides support for RDC R6040 Fast Ethernet controller 52bb0667afSPyun YongHyeonwhich is commonly found on Vortex86 System On a Chip (SoC). 53bb0667afSPyun YongHyeon.Pp 54bb0667afSPyun YongHyeonThe RDC R6040 has integrated 10/100 PHY for 10/100Mbps support in full 55bb0667afSPyun YongHyeonor half-duplex. 56bb0667afSPyun YongHyeonThe controller supports interrupt moderation mechanism, a 64-bit multicast 57bb0667afSPyun YongHyeonhash filter, VLAN over-size frame and four station addresses. 58bb0667afSPyun YongHyeonThe 59bb0667afSPyun YongHyeon.Nm 60bb0667afSPyun YongHyeondevice driver uses three station addresses out of four as perfect 61*f9530835SPyun YongHyeonmulticast filter. 62bb0667afSPyun YongHyeon.Pp 63bb0667afSPyun YongHyeonThe 64bb0667afSPyun YongHyeon.Nm 65bb0667afSPyun YongHyeondriver supports the following media types: 66bb0667afSPyun YongHyeon.Bl -tag -width ".Cm 10baseT/UTP" 67bb0667afSPyun YongHyeon.It Cm autoselect 68bb0667afSPyun YongHyeonEnable autoselection of the media type and options. 69bb0667afSPyun YongHyeonThe user can manually override 70bb0667afSPyun YongHyeonthe autoselected mode by adding media options to 71bb0667afSPyun YongHyeon.Xr rc.conf 5 . 72bb0667afSPyun YongHyeon.It Cm 10baseT/UTP 73bb0667afSPyun YongHyeonSet 10Mbps operation. 74bb0667afSPyun YongHyeon.It Cm 100baseTX 75bb0667afSPyun YongHyeonSet 100Mbps (Fast Ethernet) operation. 76bb0667afSPyun YongHyeon.El 77bb0667afSPyun YongHyeon.Pp 78bb0667afSPyun YongHyeonThe 79bb0667afSPyun YongHyeon.Nm 80bb0667afSPyun YongHyeondriver supports the following media options: 81bb0667afSPyun YongHyeon.Bl -tag -width ".Cm full-duplex" 82bb0667afSPyun YongHyeon.It Cm full-duplex 83bb0667afSPyun YongHyeonForce full duplex operation. 84bb0667afSPyun YongHyeon.It Cm half-duplex 85bb0667afSPyun YongHyeonForce half duplex operation. 86bb0667afSPyun YongHyeon.El 87bb0667afSPyun YongHyeon.Pp 88bb0667afSPyun YongHyeonFor more information on configuring this device, see 89bb0667afSPyun YongHyeon.Xr ifconfig 8 . 90bb0667afSPyun YongHyeon.Sh HARDWARE 91bb0667afSPyun YongHyeonThe 92bb0667afSPyun YongHyeon.Nm 93bb0667afSPyun YongHyeondevice driver provides support for the following Ethernet controllers: 94bb0667afSPyun YongHyeon.Pp 95bb0667afSPyun YongHyeon.Bl -bullet -compact 96bb0667afSPyun YongHyeon.It 97bb0667afSPyun YongHyeonDM&P Vortex86 RDC R6040 Fast Ethernet controller 98bb0667afSPyun YongHyeon.El 99bb0667afSPyun YongHyeon.Sh LOADER TUNABLES 100bb0667afSPyun YongHyeonTunables can be set at the 101bb0667afSPyun YongHyeon.Xr loader 8 102bb0667afSPyun YongHyeonprompt before booting the kernel or stored in 103bb0667afSPyun YongHyeon.Xr loader.conf 5 . 104bb0667afSPyun YongHyeon.Bl -tag -width "xxxxxx" 105bb0667afSPyun YongHyeon.It Va hw.vte.tx_deep_copy 106bb0667afSPyun YongHyeonThe RDC R6040 controller has no auto-padding support for short 107bb0667afSPyun YongHyeonframes and the controller's DMA engine does not have capability to 108bb0667afSPyun YongHyeonhandle multiple buffers for a TX frame such that driver has to 109bb0667afSPyun YongHyeoncreate a single contiguous TX buffer. 110bb0667afSPyun YongHyeonThis hardware limitation leads to poor TX performance since most of 111bb0667afSPyun YongHyeonCPU cycles are wasted on both de-fragmenting mbuf chains and padding. 112bb0667afSPyun YongHyeonThis tunable enables deep copy operation for TX frames such that 113bb0667afSPyun YongHyeondriver will spend less CPU cycles in de-fragmentation with the 114bb0667afSPyun YongHyeoncost of extra TX buffer memory. 115bb0667afSPyun YongHyeonThe default value is 1 to use deep copy. 116bb0667afSPyun YongHyeon.El 117bb0667afSPyun YongHyeon.Sh SYSCTL VARIABLES 118bb0667afSPyun YongHyeonThe following variables are available as both 119bb0667afSPyun YongHyeon.Xr sysctl 8 120bb0667afSPyun YongHyeonvariables and 121bb0667afSPyun YongHyeon.Xr loader 8 122bb0667afSPyun YongHyeontunables: 123bb0667afSPyun YongHyeon.Bl -tag -width "xxxxxx" 124bb0667afSPyun YongHyeon.It Va dev.vte.%d.rx_mod 125bb0667afSPyun YongHyeonMaximum number of packets to fire RX completion interrupt. 126bb0667afSPyun YongHyeonThe accepted range is 0 to 15, the default is 15. 127bb0667afSPyun YongHyeon.It Va dev.vte.%d.tx_mod 128bb0667afSPyun YongHyeonMaximum number of packets to fire TX completion interrupt. 129bb0667afSPyun YongHyeonThe accepted range is 0 to 15, the default is 15. 130bb0667afSPyun YongHyeon.It Va dev.vte.%d.stats 131bb0667afSPyun YongHyeonShow hardware MAC statistics maintained in driver. 132bb0667afSPyun YongHyeon.El 133bb0667afSPyun YongHyeon.Sh SEE ALSO 134bb0667afSPyun YongHyeon.Xr altq 4 , 135bb0667afSPyun YongHyeon.Xr arp 4 , 136bb0667afSPyun YongHyeon.Xr miibus 4 , 137bb0667afSPyun YongHyeon.Xr netintro 4 , 138bb0667afSPyun YongHyeon.Xr ng_ether 4 , 139bb0667afSPyun YongHyeon.Xr vlan 4 , 140bb0667afSPyun YongHyeon.Xr ifconfig 8 141bb0667afSPyun YongHyeon.Rs 142bb0667afSPyun YongHyeon.%T "DM&P Electronics Inc. Vortex86" 143bb0667afSPyun YongHyeon.%U http://www.dmp.com.tw 144bb0667afSPyun YongHyeon.Re 145bb0667afSPyun YongHyeon.Sh HISTORY 146bb0667afSPyun YongHyeonThe 147bb0667afSPyun YongHyeon.Nm 148bb0667afSPyun YongHyeondriver was written by 149bb0667afSPyun YongHyeon.An Pyun YongHyeon 150bb0667afSPyun YongHyeon.Aq yongari@FreeBSD.org . 151bb0667afSPyun YongHyeonIt first appeared in 152bb0667afSPyun YongHyeon.Fx 8.3 . 153