1.\" Copyright (c) 2006 Pyun YongHyeon 2.\" All rights reserved. 3.\" 4.\" Redistribution and use in source and binary forms, with or without 5.\" modification, are permitted provided that the following conditions 6.\" are met: 7.\" 1. Redistributions of source code must retain the above copyright 8.\" notice, this list of conditions and the following disclaimer. 9.\" 2. Redistributions in binary form must reproduce the above copyright 10.\" notice, this list of conditions and the following disclaimer in the 11.\" documentation and/or other materials provided with the distribution. 12.\" 13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 16.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 23.\" SUCH DAMAGE. 24.\" 25.\" $FreeBSD: src/share/man/man4/msk.4,v 1.6 2007/12/05 09:41:58 remko Exp $ 26.\" 27.Dd November 20, 2014 28.Dt MSK 4 29.Os 30.Sh NAME 31.Nm msk 32.Nd Marvell/SysKonnect Yukon II Gigabit Ethernet adapter driver 33.Sh SYNOPSIS 34To compile this driver into the kernel, 35place the following lines in your 36kernel configuration file: 37.Bd -ragged -offset indent 38.Cd "device miibus" 39.Cd "device msk" 40.Ed 41.Pp 42Alternatively, to load the driver as a 43module at boot time, place the following line in 44.Xr loader.conf 5 : 45.Bd -literal -offset indent 46if_msk_load="YES" 47.Ed 48.Sh DESCRIPTION 49The 50.Nm 51device driver provides support for various NICs based on the 52Marvell/SysKonnect Yukon II Gigabit Ethernet controller chip. 53.Pp 54All NICs supported by the 55.Nm 56driver have 57.\" NOT YET 58.\"TCP/UDP/IP checksum offload for transmit, 59.\"TCP segmentation offload (TSO), 60.\"hardware VLAN tag stripping/insertion features and 61an interrupt moderation mechanism as well as a 64-bit multicast hash filter. 62The Yukon II supports TBI (ten bit interface) and GMII 63transceivers, which means it can be used with either copper or 641000baseX fiber applications. 65.Pp 66.\" NOT YET 67.\"The Yukon II also supports Jumbo Frames (up to 9022 bytes), which can be 68.\"configured via the interface MTU setting. 69.\"Selecting an MTU larger than 1500 bytes with the 70.\".Xr ifconfig 8 71.\"utility configures the adapter to receive and transmit Jumbo Frames. 72.\".Pp 73The 74.Nm 75driver supports the following media types: 76.Bl -tag -width ".Cm 10baseT/UTP" 77.It Cm autoselect 78Enable autoselection of the media type and options. 79The user can manually override 80the autoselected mode by adding media options to 81.Xr rc.conf 5 . 82.It Cm 10baseT/UTP 83Set 10Mbps operation. 84The 85.Xr ifconfig 8 86.Cm mediaopt 87option can also be used to select either 88.Cm full-duplex 89or 90.Cm half-duplex 91modes. 92.It Cm 100baseTX 93Set 100Mbps (Fast Ethernet) operation. 94The 95.Xr ifconfig 8 96.Cm mediaopt 97option can also be used to select either 98.Cm full-duplex 99or 100.Cm half-duplex 101modes. 102.It Cm 1000baseT 103Set 1000baseT operation over twisted pair. 104The 105.Xr ifconfig 8 106.Cm mediaopt 107option can also be used to select either 108.Cm full-duplex 109or 110.Cm half-duplex 111modes. 112.It Cm 1000baseSX 113Set 1000Mbps (Gigabit Ethernet) operation. 114Both 115.Cm full-duplex 116and 117.Cm half-duplex 118modes are supported. 119.El 120.Pp 121The 122.Nm 123driver supports the following media options: 124.Bl -tag -width ".Cm full-duplex" 125.It Cm full-duplex 126Force full duplex operation. 127.It Cm half-duplex 128Force half duplex operation. 129.El 130.Pp 131The 132.Nm 133driver also supports one special link option for 1000baseT cards: 134.Bl -tag -width ".Cm link0" 135.It Cm link0 136With 1000baseT cards, establishing a link between two ports requires 137that one port is configured as master and the other one as slave. 138With autonegotiation, 139the master/slave settings will be chosen automatically. 140However when manually selecting the link state, it is necessary to 141force one side of the link to be a master and the other a slave. 142The 143.Nm 144driver configures the ports as slaves by default. 145Setting the 146.Cm link0 147flag with 148.Xr ifconfig 8 149will set a port as a master instead. 150.El 151.Pp 152For more information on configuring this device, see 153.Xr ifconfig 8 . 154.Sh HARDWARE 155The 156.Nm 157driver provides support for various NICs based on the Marvell/SysKonnect 158Yukon II based Gigabit Ethernet controller chips, including: 159.Pp 160.Bl -bullet -compact 161.It 162D-Link 550SX Gigabit Ethernet 163.It 164D-Link 560T Gigabit Ethernet 165.It 166Marvell Yukon 88E8021CU Gigabit Ethernet 167.It 168Marvell Yukon 88E8021 SX/LX Gigabit Ethernet 169.It 170Marvell Yukon 88E8022CU Gigabit Ethernet 171.It 172Marvell Yukon 88E8022 SX/LX Gigabit Ethernet 173.It 174Marvell Yukon 88E8061CU Gigabit Ethernet 175.It 176Marvell Yukon 88E8061 SX/LX Gigabit Ethernet 177.It 178Marvell Yukon 88E8062CU Gigabit Ethernet 179.It 180Marvell Yukon 88E8062 SX/LX Gigabit Ethernet 181.It 182Marvell Yukon 88E8035 Gigabit Ethernet 183.It 184Marvell Yukon 88E8036 Gigabit Ethernet 185.It 186Marvell Yukon 88E8038 Gigabit Ethernet 187.It 188Marvell Yukon 88E8039 Gigabit Ethernet 189.It 190Marvell Yukon 88E8050 Gigabit Ethernet 191.It 192Marvell Yukon 88E8052 Gigabit Ethernet 193.It 194Marvell Yukon 88E8053 Gigabit Ethernet 195.It 196Marvell Yukon 88E8055 Gigabit Ethernet 197.It 198Marvell Yukon 88E8056 Gigabit Ethernet 199.It 200Marvell Yukon 88E8058 Gigabit Ethernet 201.It 202SysKonnect SK-9Sxx Gigabit Ethernet 203.It 204SysKonnect SK-9Exx Gigabit Ethernet 205.El 206.Sh LOADER TUNABLES 207Tunables can be set at the 208.Xr loader 8 209prompt before booting the kernel or stored in 210.Xr loader.conf 5 . 211.Bl -tag -width indent 212.It Va hw.mskc.msi.enable 213The 214.Nm driver 215supports MSI but it is turned off by default. 216It can be enabled by setting this tunable to 1. 217.El 218.\".Sh SYSCTL VARIABLES 219.\"The following variables are available as both 220.\".Xr sysctl 8 221.\"variables and 222.\".Xr loader 8 223.\"tunables: 224.\".Bl -tag -width indent 225.\".It Va dev.mskc.%d.process_limit 226.\"Maximum amount of Rx events to be processed in the event loop before 227.\"rescheduling a taskqueue. 228.\"The accepted range is 30 to 256, the default value is 128 events. 229.\"The interface does not need to be brought down and up again before 230.\"a change takes effect. 231.\".El 232.Sh SEE ALSO 233.Xr altq 4 , 234.Xr arp 4 , 235.Xr ifmedia 4 , 236.Xr miibus 4 , 237.Xr netintro 4 , 238.Xr ng_ether 4 , 239.\".Xr vlan 4 , 240.Xr ifconfig 8 241.Sh HISTORY 242The 243.Nm 244driver was written by 245.An Pyun YongHyeon Aq Mt yongari@FreeBSD.org 246and it is based on 247.Xr sk 4 248and Marvell's 249.Fx 250driver. 251It first appeared in 252.Dx 1.11 . 253