XL(4)

名称
xl - 3Com Etherlink XL および Fast Etherlink XL イーサネットデバイスドライバ

書式
device xl0

解説
xl ドライバは、3Com の「ブーメラン (boomerang)」と「サイクロン (cyclone)」の バスマスタ Etherlink XL チップに基づいた、 PCI イーサネットアダプタと内蔵コントローラをサポートします。 これには 3c900-TP, 3c900-COMBO, 3c905-TX, 3c905-T4, 3c905B-TP, 3c905B-T4, 3c905B-TX, それに一部の Dell Optiplex や Dell Precision デスクトップマシン と一部の Dell Latitude ラップトップドッキングステーションに内蔵される イーサネットハードウェア 3c905-TX と 3c905B-TX が含まれます。

Etherlink XL チップは内蔵の 10baseT, 10base2 と 10base5 のトランシーバ、 および外付の PHY トランシーバ用の MII バスをサポートしています。 3c905 シリーズは全二重および半二重での 10/100 Mbps のサポートに 通常ナショナルセミコンダクター社の NS 83840A 10/100 PHY を使用しています。 3c905B アダプタは以前のドライバとの互換性を保つために MII 上にマップされた 内蔵の自動ネゴシエーションロジックを持っています。 3c905-TX や 3c905B-TX のような Fast Etherlink XL アダプタは 全二重および半二重モードで 10 Mbps もしくは 100 Mbps のデータレートをサポートしており、 それらのモードは手動での設定の他、 自動ネゴシエーションによって 接続先との間での最高のモードに設定することもできます。

xl ドライバは以下のメディアタイプをサポートしています。

autoselect
    メディアタイプとオプションの自動選択を有効にします。 3c905 と 3c905B のアダプタで、 PHY が外付されているか自動ネゴシエーションロジックが内蔵されている場合のみ、 このオプションを使用できます。 3c900 アダプタではドライバは EEPROM において指定されているモードを選択します。 ユーザは /etc/rc.conf にメディアオプションを追加することによって、この設定を変更できます。

10baseT/UTP
    10 Mbps で動作するように設定します。 mediaopt オプションによって full-duplex か half-duplex モードを選択できます。

100baseTX
    100 Mbps (ファーストイーサネット) で動作するように設定します。 mediaopt オプションによって full-duplex か half-duplex モードを選択できます。

10base5/AUI
    AUI トランシーバを有効にします。 (AUI トランシーバは COMBO カードでのみ提供されています。)

10base2/BNC
    BNC coax トランシーバを有効にします。 (BNC coax トランシーバは COMBO カードでのみ提供されています。)

xl ドライバは以下のメディアオプションをサポートしています。

full-duplex
    強制的に全二重の動作に設定します。

half-duplex
    強制的に半二重の動作に設定します。

100baseTX のメディアタイプはサポートされているアダプタでのみ 使うことができます。 このデバイスを設定する上での詳細については ifconfig(8) を参照してください。

診断

xl%d: couldn't map memory 致命的な初期化エラーが発生しました。

xl%d: couldn't map interrupt 致命的な初期化エラーが発生しました。

xl%d: device timeout デバイスがネットワークに対して応答しなくなったか、 ネットワーク接続 (ケーブル) に問題があります。

xl%d: no memory for rx list ドライバは受信リング用の mbuf の確保に失敗しました。

xl%d: no memory for tx list パディング用バッファを確保する際、 もしくは mbuf チェーンをたたんでクラスタへ変換する際、 ドライバは送信リング用の mbuf の確保に失敗しました。

xl%d: command never completed! 3c90x ASIC へ発行されたコマンドの完了に時間がかかっています。 ドライバは次のコマンドを実行する前に ステータスレジスタの「コマンド実行中」ビットがクリアされるまで待ちます。 このビットはまれにクリアされないことがあります。 無限の待ちループに陥ることを避けるために、 ドライバはこのビットを有限回数ポーリングした後あきらめて、 このメッセージを出力します。 このメッセージは低速のマシンではドライバの初期化中に出力されることもあります。 このメッセージが出力されてもドライバが正常に機能しているようであれば、 おそらくこのメッセージは無視することができるでしょう。

xl%d: chip is in D3 power state -- setting to D0 このメッセージは 3c905B (電源管理がサポートされている) にのみ適用されるものです。 オペレーティングシステムによってはシャットダウン時に 3c905B を低電力モードに設定します。 また PCI BIOS には、 チップの設定の際に、チップをこの状態から脱出させられないものがあります。 3c905B は D3 状態ではすべての PCI 設定を失うため、 BIOS がアダプタを全電力モードに戻すことが遅れると 設定を正しくおこなうことができません。 ドライバはこの状態を検出しアダプタを D0 (全電力) 状態に戻そうとしますが、 これだけではドライバが完全に動作できる状態としては十分ではありません。 このメッセージがブート時に出力されて、 ドライバがデバイスをネットワークインタフェースとして追加できなかったら、 デバイスが正しく設定できるように 2 回目のウォームブートを行う必要があるでしょう。

この状態は他のオペレーティングシステムから ウォームブートを行ったときのみ発生します。 FreeBSD をブートする前にシステムの電源を落していたら、カードは正常に設定されます。

xl%d: WARNING: no media options bits set in the media options register! 3c905-TX アダプタを内蔵した Dell Latitude のドッキングステーションで このドライバを使っているときに、この警告メッセージが表示されることがあります。 この機器でのメディアオプションレジスタの「MII 有効」ビットは、 MII が使用可能な状態 (3c905-TX は常に外部 PHY トランシーバを使用します) でもセットされません。 ドライバは PCI デバイス ID に基づいて正しいメディアタイプを推測しようとします。 ドライバの作者はこれを製造上の欠点だと考えており、 ドライバはこの状態では沢山のノイズ (訳注: メッセージ) を出すようにしています。

関連項目
arp(4), netintro(4), ifconfig(8)

歴史
xl デバイスドライバは FreeBSD 3.0 で最初に登場しました。

作者
xl ドライバは Bill Paul <wpaul@ctr.columbia.edu> が書きました。