> For the complete documentation index, see [llms.txt](https://book.bsdcn.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://book.bsdcn.org/man/man4/msk.4.md).

# msk.4

`msk` — Marvell/SysKonnect Yukon II 千兆以太网适配器驱动

## 名称

`msk`

## 概要

`要将此驱动编译进内核，请在你的内核配置文件中加入以下行：`

> device miibus device msk

`或者，要在引导时以模块形式加载此驱动，请在 loader.conf(5) 中加入以下行：`

```sh
if_msk_load="YES"
```

## 描述

`msk` 设备驱动为基于 Marvell/SysKonnect Yukon II 千兆以太网控制器芯片的各种 NIC 提供支持。

`msk` 驱动支持的所有 NIC 都具有发送和接收的 TCP/UDP/IP 校验和卸载、TCP 分段卸载（TSO）、硬件 VLAN 标签剥离/插入功能、中断适度机制以及 64 位多播哈希过滤器。Yukon II 支持 TBI（十位接口）和 GMII 收发器，这意味着它可用于铜缆或 1000baseX 光纤应用。

Yukon II 还支持 Jumbo Frames（最大 9022 字节），可通过接口 MTU 设置进行配置。通过 [ifconfig(8)](/man/man8/ifconfig.8.md) 实用程序选择大于 1500 字节的 MTU 可配置适配器收发 Jumbo Frames。

`msk` 驱动支持以下介质类型：

**`autoselect`** 启用介质类型和选项的自动选择。用户可通过在 [rc.conf(5)](/man/man5/rc.conf.5.md) 中添加介质选项来手动覆盖自动选择的模式。

**`10baseT/UTP`** 设置 10Mbps 操作。也可使用 [ifconfig(8)](/man/man8/ifconfig.8.md) 的 `mediaopt` 选项选择 `full-duplex` 或 `half-duplex` 模式。

**`100baseTX`** 设置 100Mbps（快速以太网）操作。也可使用 [ifconfig(8)](/man/man8/ifconfig.8.md) 的 `mediaopt` 选项选择 `full-duplex` 或 `half-duplex` 模式。

**`1000baseTX`** 设置通过双绞线的 1000baseTX 操作。也可使用 [ifconfig(8)](/man/man8/ifconfig.8.md) 的 `mediaopt` 选项选择 `full-duplex` 或 `half-duplex` 模式。

**`1000baseSX`** 设置 1000Mbps（千兆以太网）操作。支持 `full-duplex` 和 `half-duplex` 模式。

`msk` 驱动支持以下介质选项：

**`full-duplex`** 强制全双工操作。

**`half-duplex`** 强制半双工操作。

有关配置此设备的更多信息，参见 [ifconfig(8)](/man/man8/ifconfig.8.md)。

## 硬件

`msk` 驱动为基于 Marvell/SysKonnect Yukon II 千兆以太网控制器芯片的各种 NIC 提供支持，包括：

* 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

## 加载器可调参数

可调参数可在引导内核前于 [loader(8)](/man/man8/loader.8.md) 提示符下设置，或存储在 loader.conf(5) 中。

**`hw.msk.msi_disable`** 此可调参数禁用以太网硬件上的 MSI 支持。默认值为 0。

## SYSCTL 变量

以下变量同时可作为 [sysctl(8)](/man/man8/sysctl.8.md) 变量和 [loader(8)](/man/man8/loader.8.md) 可调参数使用：

**`dev.mskc.%d.int_holdoff`** 延迟中断处理的最大时间。对于 125MHz 时钟，有效范围为 0 至 34359738，单位为 1 微秒，默认为 100（100 微秒）。更改生效前需要将接口关闭再重新打开。

**`dev.mskc.%d.process_limit`** 在重新调度 taskqueue 前于事件循环中处理的最大 Rx 事件数。接受范围为 30 至 256，默认值为 128 个事件。更改生效前无需将接口关闭再重新打开。

## 参见

[altq(4)](https://github.com/FreeBSD-Ask/freebsd-man-sc/blob/main/man4/altq.4.md), [arp(4)](https://github.com/FreeBSD-Ask/freebsd-man-sc/blob/main/man4/arp.4.md), [miibus(4)](/man/man4/miibus.4.md), [netintro(4)](/man/man4/netintro.4.md), [ng\_ether(4)](/man/man4/ng_ether.4.md), [vlan(4)](/man/man4/vlan.4.md), [ifconfig(8)](/man/man8/ifconfig.8.md)

## 历史

`msk` 驱动由 Pyun YongHyeon <yongari@FreeBSD.org> 编写，基于 [sk(4)](/man/man4/sk.4.md) 和 Marvell 的 FreeBSD 驱动。最早出现在 FreeBSD 7.0 和 FreeBSD 6.3 中。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://book.bsdcn.org/man/man4/msk.4.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
