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

名称

sisSiS 900, SiS 7016 と NS DP83815/DP83816 ファーストイーサネットデバイスドライバ

書式

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

device miibus
device sis

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

if_sis_load="YES"

解説

sis ドライバは、Silicon Integrated Systems SiS 900 と SiS 7016 ファーストイーサネットコントローラチップに基づく PCI イーサネットアダプタと組み込みコントローラのサポートを行ないます。

また、このドライバは、National Semiconductor DP83815 (MacPhyter) と DP83816 PCI イーサネットコントローラチップに基づくアダプタもサポートします。

SiS 900 は、100Mbps イーサネットの MAC で単一パッケージの MII 規格トランシーバです。それは、バスマスタ DMA とスキャッタ(散乱)/ギャザ(収集) 記述子スキームを使用します。 SiS 7016 は、内部の PHY も持たないことを除いて SiS 900 と同様です、代わりに MII インタフェースに取り付けられた外部のトランシーバが必要です。 SiS 900 と SiS 7016 は、両方とも 128 ビットのマルチキャストハッシュフィルタとステーションアドレスのための単一の完全なフィルタエントリを持っています。

また、NS DP83815 は、統合 PHY が一体となった 100Mbps イーサネット MAC です。 NatSemi チップと SiS 900 は、多くの同じ特徴でかなり似ているプログラミングインタフェースを共有しています。したがって、両方のチップは、同じドライバによってサポートされます。

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

autoselect
メディアタイプとオプションの自動選択を有効にします。ユーザは、 rc.conf(5) にメディアオプションを加えることによって、手動で自動選択モードを無効にできます。
10baseT/UTP
10Mbps オペレーションを設定します。 ifconfig(8) mediaopt オプションも‘全二重’または‘半二重’モードのいずれかを選択するために使用できます。
100baseTX
100Mbps (ファーストイーサネット) オペレーションを設定します。 ifconfig(8) mediaopt オプションも‘全二重’または‘半二重’モードのいずれかを選択するために使用できます。

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

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

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

ハードウェア

sis ドライバは、Silicon Integrated Systems SiS900 と SiS 7016 ベースのファーストイーサネットアダプタと組み込みコントローラをサポートし、同様に National Semiconductor DP83815 (MacPhyter) と DP83816 チップに基づくファーストイーサネットアダプタもサポートします。サポートしているアダプタは、次を含みます:

  • @Nifty FNECHARD IFC USUP-TX
  • MELCO LGY-PCI-TXC
  • Netgear FA311-TX (DP83815)
  • Netgear FA312-TX (DP83815)
  • SiS 630, 635, and 735 motherboard chipsets
  • Soekris Engineering net45xx, net48xx, lan1621, and lan1641

SYSCTL 変数

次の変数は、 sysctl(8) 変数と loader(8) 調整変数の両方で利用可能です:
dev.sis.%unit.manual_pad
この変数は、指定されたデバイスで DP83815/DP83816 コントローラのために短いフレームに詰め物を行う方法を制御します。 DP83815/DP83816 コントローラは、RFC 1042 違反である短いフレームのために 0xFF の詰め物を行うことが知られています。この変数を、余分な CPU サイクルの費用が 0 で、ドライバに各短いフレームを手動で詰め物をさせる 0 以外の値に設定します。デフォルト値は、ハードウェアプラットフォームに自動詰め物を行なわせる 0 です。

診断

sis%d: couldn't map ports/memory
致命的な初期化エラーが生じました。
sis%d: couldn't map interrupt
致命的な初期化エラーが生じました。
sis%d: watchdog timeout
デバイスがネットワークに応答を止めたか、またはネットワーク接続 (例えば、ケーブルの欠陥) に関する問題があります。
sis%d: no memory for rx list
ドライバは、受信リングのための mbuf の割り付けに失敗しました。
sis%d: no memory for tx list
パッドバッファを割り付けるか、クラスタへ mbuf チェーンを折りたたむ場合、ドライバは、送信リングのための mbuf の割り付けに失敗しました。
sis%d: chip is in D3 power state -- setting to D0
このメッセージは、パワーマネージメントをサポートするアダプタだけにあてはまります。いくつかのオペレーティングシステムは、シャットダウンするとき、コントローラを低消費電力モードにし、いくつかの PCI BIOS は、それを設定する前に、この状態でチップを明らかにすることに失敗します。コントローラは、D3 状態で PCI 設定のすべてを失うので、BIOS が時間内にそれをフルパワーモードに戻せない場合、正しくそれを設定することができません。ドライバは、この状態を検出して、D0 (フルパワー) 状態にアダプタを戻しますが、これは、ドライバを完全な操作状態に復帰するためには十分ではありません。利用者がブート時にこのメッセージを見つけ、ドライバがネットワークインタフェースとしてデバイスのアタッチに失敗した場合、利用者は、デバイスを適切に設定させるためにウォームブートを実行しなければなりません。

この状態は、別のオペレーティングシステムからウォームブートするときのみ生じることに注意してください。 FreeBSD をブートする前に利用者のシステムをパワーダウンする場合、カードは、正しく設定されるはずです。

関連項目

altq(4), arp(4), miibus(4), netintro(4), ng_ether(4), polling(4), vlan(4), ifconfig(8) SiS 900 and SiS 7016 datasheets, http://www.sis.com.tw. NatSemi DP83815 datasheet, http://www.national.com.

歴史

sis デバイスドライバは、 FreeBSD 3.0 ではじめて登場しました。

作者

sis ドライバは、 Bill Paul <wpaul@ee.columbia.edu>によって書かれました。
September 2, 2010 FreeBSD