EN JA
VTE(4)
VTE(4) FreeBSD Kernel Interfaces Manual VTE(4)

名称

vteVortex86 RDC R6040 ファーストイーサネットドライバ

書式

このドライバをカーネルにコンパイルするためには、次の行を利用者のカーネル設定ファイルに置きます:

device miibus
device vte

もう一つの方法として、ブート時にモジュールとしてドライバをロードするためには、次の行を loader.conf(5) に置きます:

if_vte_load="YES"

解説

vte デバイスドライバは、Vortex86 System On a Chip (SoC) で共通に見つけられる RDC R6040 ファーストイーサネットコントローラのサポートを行います。

RDC R6040 には、全二重または半二重で 10/100Mbps サポートのための統合された 10/100 PHY があります。コントローラは、割り込みモデレーションメカニズム、64 ビットのマルチキャストハッシュフィルタ、VLAN オーバサイズフレーム、と 4 つのステーションアドレスをサポートします。 vte デバイスドライバは、完全なマルチキャストフィルタとして 4 つの中から 3 つのステーションアドレスを使用します。

vte ドライバは、次のメディアタイプをサポートします:

autoselect
メディアタイプとオプションの自動選択を有効にします。ユーザは、 rc.conf(5) にメディアオプションを追加することによって、手動で自動選択モードを無効にできます。
10baseT/UTP
10Mbps オペレーションを設定します。
100baseTX
100Mbps (ファーストイーサネット) オペレーションを設定します。

vte ドライバは、次のメディアオプションをサポートします:

full-duplex
全二重オペレーションを強制的に設定します。
half-duplex
半二重オペレーションを強制的に設定します。

このデバイスの設定についてのより詳しい情報については、 ifconfig(8) を参照してください。

ハードウェア

vte デバイスドライバは、次のイーサネットコントローラのサポートを行います:

  • DM&P Vortex86 RDC R6040 ファーストイーサネットコントローラ

ローダ調整変数

カーネルをブートする前の loader(8) プロンプトで、または loader.conf(5) に格納して、次の調整変数を設定することができます。
hw.vte.tx_deep_copy
RDC R6040 コントローラには、短いフレームのための自動詰め物 (auto-padding) サポートがなく、そして、コントローラの DMA エンジンは、ドライバが単一の隣接している TX バッファを作成しなければならない、 TX フレームのための複数のバッファを扱う能力がありません。 CPU サイクルのほどんどが mbuf チェーンと詰め物 (padding) の両方でデフラグメントしながら浪費されるので、このハードウェア制限は、貧弱な TX 性能となります。この調整変数は、ドライバが、余分な TX バッファメモリのコストでデフラグメンテーションでより少ない CPU サイクルを費やすように、 TX フレームのためのディープコピー (deep copy) 操作を有効にします。デフォルト値は、ディープコピー (deep copy) を使用する 1 です。

SYSCTL 変数

次の変数は、 sysctl(8) 変数と loader(8) 調整変数の両方で利用可能です:
dev.vte.%d.rx_mod
RX 完了割り込みを起動 (fire) するための最大のパケット数。受け付ける範囲は、0 から 15 で、デフォルトは、15 です。
dev.vte.%d.tx_mod
TX 完了割り込みを起動 (fire) するための最大のパケット数。受け付ける範囲は、0 から 15 で、デフォルトは、15 です。
dev.vte.%d.stats
ドライバで保守されたハードウェア MAC 統計を表示します。

関連項目

altq(4), arp(4), miibus(4), netintro(4), ng_ether(4), vlan(4), ifconfig(8) DM&P Electronics Inc. Vortex86, http://www.dmp.com.tw.

歴史

vte ドライバは、 Pyun YongHyeon <yongari@FreeBSD.org>によって書かれました。それは、 FreeBSD 8.3 ではじめて登場しました。
December 30, 2010 FreeBSD