FXP(4) | FreeBSD Kernel Interfaces Manual | FXP(4) |
名称
fxp — Intel EtherExpress PRO/100 イーサネットデバイスドライバ書式
このドライバをカーネルにコンパイルするためには、次の行を利用者のカーネル設定ファイルに置きます:
device miibus
device fxp
device fxp
もう一つの方法として、ブート時にモジュールとしてドライバをロードするためには、次の行を loader.conf(5) に置きます:
if_fxp_load="YES"
解説
fxp ドライバは、Intel i82557, i82558, i82559, i82550 と i82562 チップに基づくイーサネットアダプタのサポートを行います。ドライバは、i82550 と i82551 で送信と受信の両方のための TCP/UDP/IP チェックサムオフロードをサポートします。 i82559 では、受信のための TCP/UDP チェックサムオフロードのみがサポートされます。 VLAN ハードウェアタグ挿入/ストリップと同様に IPv4 のための TCP セクメンテーションオフロード (TSO) は、i82550 と i82551 でサポートされます。 Wake On Lan (WOL) のサポートは、i82557、i82259ER と初期の i82558 リビジョンを除くすべてのコントローラで提供されます。訳注: Wake On Lan は、LAN を通して電源を入れる機能。fxp ドライバは、次のメディアタイプをサポートします:
- autoselect
- メディアタイプとオプションの自動選択を有効にします。 rc.conf(5) にメディアオプションを追加するることによって、自動選択モードを上書きすることができます。
- 10baseT/UTP
- 10Mbps オペレーションを設定します。
- 100baseTX
- 100Mbps (ファストイーサネット) オペレーションを設定します。
fxp ドライバは、次のメディアオプションをサポートします:
- full-duplex
- 全二重オペレーションを強制的に設定します。
- half-duplex
- 半二重オペレーションを強制的に設定します。
100baseTX メディアタイプが Pro/10 で利用可能ではないことに注意してください。このデバイスの設定についてのさらに詳しい情報については、 ifconfig(8) を参照してください。
fxp ドライバは、 vlan(4) のために拡張フレームの受信と送信をサポートします。 fxp のこのケーパビリティは、 ifconfig(8) への vlanmtu パラメータを用いて制御することができます。
fxp ドライバは、さらに特別のリンクオプションをサポートします:
- link0
- いくつかのチップリビジョンは、ホスト cpu の割り込みロードを低減するために使用することができる、ロード可能なマイクロコードを持っています。すべてのボードがマイクロコードサポートを持っているとは限りません。それが利用可能な場合、 ifconfig(8) で link0 フラグを設定することは、チップにマイクロコードをダウンロードします。
ハードウェア
fxp ドライバによってサポートされたアダプタは、次を含みます:
- Intel EtherExpress PRO/10
- Intel InBusiness 10/100
- Intel PRO/100B / EtherExpressPRO/100 B PCI Adapter
- Intel PRO/100+ Management Adapter
- Intel PRO/100 VE Desktop Adapter
- Intel PRO/100 VM Network Connection
- Intel PRO/100 M Desktop Adapter
- Intel PRO/100 S Desktop, Server and Dual-Port Server Adapters
- Contec C-NET(PI)-100TX (PC-98)
- NEC PC-9821Ra20, Rv20, Xv13, Xv20 internal 100Base-TX (PC-98)
- NEC PC-9821X-B06 (PC-98)
- Many on-board network interfaces on Intel motherboards
ローダ調整変数
ローダ調整変数は、カーネルをブートする前に loader(8) のプロンプトで設定するか loader.conf(5) に格納することで設定できます。次の変数は、 loader(8) 調整変数と sysctl(8) 変数の両方で利用可能です:- dev.fxp.%d.int_delay
- 割り込みを併合する試みのために遅延するかもしれないマイクロ秒単位の最大の時間。これは、Intel マイクロコードがロードされる場合だけ、有効です。許容範囲は、300 から 3000 で、デフォルトは、1000 です。
- dev.fxp.%d.bundle_max
- 割り込みが発生する前に、バンドルされるパケットの数。これは、Intel マイクロコードがロードされる場合だけ、有効です。許容範囲は、1 から 65535 で、デフォルトは、6 です。
SYSCTL 変数
次の変数は、 sysctl(8) 変数として利用可能です:- dev.fxp.%d.rnr
- これは、読み込み専用の変数であり、RNR のイベントの数を表示します (リソースが準備ができていません)。
- dev.fxp.%d.stats
- これは、読み込み専用の変数であり、ドライバで維持される役に立つ MAC カウンタを表示します。
診断
- fxp%d: couldn't map memory
- 致命的な初期化エラーが生じました。
- fxp%d: couldn't map interrupt
- 致命的な初期化エラーが生じました。
- fxp%d: Failed to malloc memory
- 割付けに利用可能な十分な mbuf がありません。
- fxp%d: device timeout
- デバイスが、ネットワークに応答することを停止しているか、またはネットワーク接続 (ケーブル) に問題があります。
- fxp%d: Microcode loaded, int_delay: %d usec bundle_max: %d
- チップは成功してマイクロコードをダウンロードしており、与えられた設定にパラメータ化された値を変更しました。
歴史
fxp デバイスドライバは、 FreeBSD 2.1 ではじめて登場しました。作者
fxp デバイスドライバは、 によって書かれました。 によって busdma API を使用するためにアップデートして、エンディアンクリーンにしました。このマニュアルページは、 によって書かれました。November 26, 2010 | FreeBSD |