MSK(4)
π MSK(4) β the Marvell/SysKonnect Yukon II Gigabit Ethernet adapter driver, bestie edition π
okay so like, you know msk(4)? the kernel interfaces manual page? yeah. that one. sit down, grab a strawberry π, we're doing this.
β¨ NAME β¨
msk β the Marvell/SysKonnect Yukon II Gigabit Ethernet adapter driver. she's a NIC driver, she's iconic, she's got range π
πΈ SYNOPSIS πΈ
so like, if you wanna bake this driver into the kernel (main character move), you drop these lines into your kernel config file:
device miibus
device msk
OR, if you'd rather have her slide in as a module at boot time (lowkey easier, ngl), you put this line in loader.conf(5):
if_msk_load="YES"
that's it. that's the whole vibe check β
π¦ DESCRIPTION π¦
the msk device driver is out here supporting a whole bunch of NICs that are built on the Marvell/SysKonnect Yukon II Gigabit Ethernet controller chip. periodt.
every single NIC that msk supports comes with:
- TCP/UDP/IP checksum offload for transmit β¨
- TCP segmentation offload (TSO) β¨
- hardware VLAN tag stripping/insertion β¨
- an interrupt moderation mechanism β¨
- a 64-bit multicast hash filter β¨
like⦠she does it ALL. no cap.
and the Yukon II supports TBI (ten bit interface) and GMII transceivers, which means she can hang with either copper or 1000baseX fiber applications. versatile queen π
the Yukon II also supports Jumbo Frames β up to 9022 bytes β which you can configure via the interface MTU setting. if you pick an MTU larger than 1500 bytes with the ifconfig(8) utility, you're telling the adapter to receive and transmit Jumbo Frames. big packets, big energy π
media types she supports π
autoselectβ lets her autoselect the media type and options. you can manually override the autoselected mode by adding media options torc.conf(5). she's flexible like that.10baseT/UTPβ sets 10Mbps operation. theifconfig(8)mediaoptoption can also be used to select either full-duplex or half-duplex modes.100baseTXβ sets 100Mbps (Fast Ethernet) operation. theifconfig(8)mediaoptoption can also be used to select either full-duplex or half-duplex modes.1000baseTXβ sets 1000baseTX operation over twisted pair. theifconfig(8)mediaoptoption can also be used to select either full-duplex or half-duplex modes.1000baseSXβ sets 1000Mbps (Gigabit Ethernet) operation. both full-duplex and half-duplex modes are supported.
media options she supports π§
full-duplexβ force full duplex operation.half-duplexβ force half duplex operation.
for more info on configuring this device, go peek at ifconfig(8). iykyk π
π HARDWARE π
the msk driver provides support for various NICs based on the Marvell/SysKonnect Yukon II based Gigabit Ethernet controller chips, including (and yes, we're listing every single one, don't play with me):
- D-Link 550SX Gigabit Ethernet
- D-Link 560SX Gigabit Ethernet
- D-Link 560T Gigabit Ethernet
- Marvell Yukon 88E8021CU Gigabit Ethernet
- Marvell Yukon 88E8021 SX/LX Gigabit Ethernet
- Marvell Yukon 88E8022CU Gigabit Ethernet
- Marvell Yukon 88E8022 SX/LX Gigabit Ethernet
- Marvell Yukon 88E8061CU Gigabit Ethernet
- Marvell Yukon 88E8061 SX/LX Gigabit Ethernet
- Marvell Yukon 88E8062CU Gigabit Ethernet
- Marvell Yukon 88E8062 SX/LX Gigabit Ethernet
- Marvell Yukon 88E8035 Fast Ethernet
- Marvell Yukon 88E8036 Fast Ethernet
- Marvell Yukon 88E8038 Fast Ethernet
- Marvell Yukon 88E8039 Fast Ethernet
- Marvell Yukon 88E8040 Fast Ethernet
- Marvell Yukon 88E8040T Fast Ethernet
- Marvell Yukon 88E8042 Fast Ethernet
- Marvell Yukon 88E8048 Fast Ethernet
- Marvell Yukon 88E8050 Gigabit Ethernet
- Marvell Yukon 88E8052 Gigabit Ethernet
- Marvell Yukon 88E8053 Gigabit Ethernet
- Marvell Yukon 88E8055 Gigabit Ethernet
- Marvell Yukon 88E8056 Gigabit Ethernet
- Marvell Yukon 88E8057 Gigabit Ethernet
- Marvell Yukon 88E8058 Gigabit Ethernet
- Marvell Yukon 88E8059 Gigabit Ethernet
- Marvell Yukon 88E8070 Gigabit Ethernet
- Marvell Yukon 88E8071 Gigabit Ethernet
- Marvell Yukon 88E8072 Gigabit Ethernet
- Marvell Yukon 88E8075 Gigabit Ethernet
- SysKonnect SK-9Sxx Gigabit Ethernet
- SysKonnect SK-9Exx Gigabit Ethernet
look at that list. she ate and left no crumbs π½οΈ
π₯ LOADER TUNABLES π₯
you can set these tunables at the loader(8) prompt before booting the kernel, or you can just store them in loader.conf(5). either way bestie π
hw.msk.msi_disableβ this tunable disables MSI support on the Ethernet hardware. the default value is 0.
β SYSCTL VARIABLES β
these variables are available as both sysctl(8) variables and loader(8) tunables. double threat, we love to see it:
dev.mskc.%d.int_holdoffβ maximum number of time to delay interrupts. the valid range is 0 to 34359738 for 125MHz clock in units of 1us, and the default is 100 (100us). heads up: the interface needs to be brought down and up again before a change takes effect. so like, don't be surprised when nothing happens πdev.mskc.%d.process_limitβ maximum amount of Rx events to be processed in the event loop before rescheduling a taskqueue. the accepted range is 30 to 256, and the default value is 128 events. good news though: the interface does not need to be brought down and up again before a change takes effect. she's chill like that π
π SEE ALSO π
altq(4), arp(4), miibus(4), netintro(4), ng_ether(4), vlan(4), ifconfig(8)
go read them. all of them. i'll wait π
π HISTORY π
the msk driver was written by Pyun YongHyeon <yongari@FreeBSD.org> and it is based on sk(4) and Marvell's FreeBSD driver. she first appeared in FreeBSD 7.0 and FreeBSD 6.3. an origin story, honestly π
and that's the whole page, bestie! this one came from the Debian crew, dated May 23, 2011 β yeah, she's been serving since way back, and she's still giving main character energy. mwah ππβ¨
π¦ where this page comes from
- debian bookworm: freebsd-manpages 12.2-1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- debian trixie: freebsd-manpages 12.2-2 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu jammy: freebsd-manpages 12.2-1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu noble: freebsd-manpages 12.2-1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu questing: freebsd-manpages 12.2-2
- ubuntu resolute: freebsd-manpages 12.2-2build1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu stonking: freebsd-manpages 12.2-2build1 Β· BSD-2-Clause-FreeBSD AND BSD-4-Clause
- Copyright (c) 2006 Pyun YongHyeon
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms