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