SK(4) | FreeBSD Kernel Interfaces Manual | SK(4) |
名称
sk — SysKonnect SK-984x と SK-982x PCI ギガビットイーサネットアダプタドライバ書式
このドライバをカーネルにコンパイルするためには、次の行を利用者のカーネル設定ファイルに置きます:
device sk
もう一つの方法として、ブート時にモジュールとしてドライバをロードするためには、次の行を loader.conf(5) に置きます:
if_sk_load="YES"
解説
sk ドライバは、SysKonnect SK-984x と SK-982x シリーズ PCI ギガビットイーサネットアダプタのサポートを行ないます。SysKonnect アダプタは、2 つの主要な構成要素から成ります: XaQti Corp. の XMAC II ギガビット MAC と SysKonnect GEnesis コントローラ ASIC です。 XMAC は、ギガビット MAC と PHY サポートを行ないますが、 GEnesis は、PCI バスへのインタフェース、DMA サポート、パケットバッファリング、アービトレイション (調停) を提供します。 GEnesis は、デュアル (2 つの) ポート NIC の設定を許可して、同時に最大 2 つの XMAC を制御することができます。
SK-982x 1000baseT アダプタは、また XMAC の内部の PHY の代わりに使用される Broadcom BCM5400 1000baseTX PHY を含んでいます。 Broadcom PHY は、GMII ポートを通して XMAC に接続されます。
sk ドライバは、デュアルポート SysKonnect アダプタを設定するので、各 XMAC は、別個の論理的なネットワークインタフェースとして扱われます。両方のポートは、互いとは無関係に操作することができて、別個のネットワークと接続することができます。 SysKonnect ドライバソフトウェアは、現在、フェイルオーバ (障害迂回) の目的のためにデュアルポートアダプタ上の 2 番目のポートを使用するだけです: プライマリポート上のリンクが失敗すると、SysKonnect ドライバは、自動的にトラフィックを 2 番目のポートに切り換えます。
Marvell Semiconductor 88E100* ギガビット PHY もサポートされています。
XaQti XMAC II は、自動ネゴシエーションで全二重と半二重オペレーションをサポートします。 XMAC は、無制限のフレームサイズもサポートします。ジャンボフレームは、インタフェース MTU 設定によってサポートを行ないます。ジャンボフレームを受信し送信するためのアダプタを設定する ifconfig(8) ユーティリティで 1500 バイトより大きい MTU を選択します。ジャンボフレームの使用によって、ファイル転送やデータストリーミングなどの特定のタスクのための性能を大いに向上させることができます。
sk ドライバは、次のメディアタイプをサポートします:
- autoselect
- メディアタイプとオプションの自動選択を有効にします。ユーザは、 /etc/rc.conf ファイルにメディアオプションを加えることによって、手動で自動選択モードを無効にできます。
- 1000baseTX
- ツイストペア上の 1000baseTX オペレーションを設定します。これは、1000baseT ポートがある SK-982x シリーズアダプタでのみ利用可能です。 全二重 または 半二重 モードの両方がサポートされます。
- 1000baseSX
- 1000Mbps (ギガビットイーサネット) オペレーションを設定します。 全二重 または 半二重 モードの両方がサポートされます。
sk ドライバは、次のメディアオプションをサポートします:
- full-duplex
- 全二重オペレーションを強制的に設定します。
- half-duplex
- 半二重オペレーションを強制的に設定します。
このデバイスの設定についてのより詳しい情報については、 ifconfig(8) を参照してください。
ハードウェア
sk ドライバによってサポートされたアダプタは、次を含みます:
- 3Com 3C940 シングルポート, 1000baseT アダプタ
- 3Com 3C2000-T シングルポート, 1000baseT アダプタ
- Belkin F5D5005 シングルポート, 1000baseT アダプタ
- D-Link DGE-530T シングルポート, 1000baseT アダプタ
- Linksys (revision 2) シングルポート, 1000baseT アダプタ
- SK-9521 SK-NET GE-T シングルポート, 1000baseT アダプタ
- SK-9821 SK-NET GE-T シングルポート, 1000baseT アダプタ
- SK-9822 SK-NET GE-T デュアルポート, 1000baseT アダプタ
- SK-9841 SK-NET GE-LX シングルポート, シングルモードファイバアダプタ
- SK-9842 SK-NET GE-LX デュアルポート, シングルモードファイバアダプタ
- SK-9843 SK-NET GE-SX シングルポート, マルチモードファイバアダプタ
- SK-9844 SK-NET GE-SX デュアルポート, マルチモードファイバアダプタ
- SMC 9452TX シングルポート, 1000baseT アダプタ
ローダ調整変数
カーネルをブートする前に loader(8) プロンプトで、または loader.conf(5) に格納して調整変数を設定することができます。- hw.skc.jumbo_disable
- ジャンボフレームのサポートを無効にします。より少ないメモリがあるシステムは、メモリを節約するために 0 以外の値に設定することができます。デフォルト値は、0 です。
SYSCTL 変数
次の変数は、 sysctl(8) 変数と loader(8) 調整変数の両方として利用可能です:- dev.skc.%d.int_mod
- この変数は、割り込みモデレーションを制御します。受け付けられる範囲は、10 から 10000 です。デフォルト値は、100 マイクロ秒です。インタフェースは、効力を生じる変更の前に、再びダウンしてアップしていなければなりません。
診断
- sk%d: couldn't map memory
- 致命的な初期化エラーが発生しました。
- sk%d: couldn't map ports
- 致命的な初期化エラーが発生しました。
- sk%d: couldn't map interrupt
- 致命的な初期化エラーが発生しました。
- sk%d: no memory for softc struct!
- ドライバは、初期化の間、デバイス毎のインスタンス情報のためのメモリの割り付けに失敗しました。
- sk%d: failed to enable memory mapping!
- ドライバは、PCI 共有メモリマッピングの初期化に失敗しました。カードがバスマスタスロットにないなら、これは起こるかもしれません。
- sk%d: no memory for jumbo buffers!
- ドライバは、初期化の間、ジャンボフレームのためのメモリの割り付けに失敗しました。
- sk%d: watchdog timeout
- デバイスは、ネットワークに応答することを停止しているか、またはネットワーク接続 (ケーブル) に問題があります。
関連項目
altq(4), arp(4), miibus(4), netintro(4), ng_ether(4), vlan(4), ifconfig(8) XaQti XMAC II datasheet, http://people.freebsd.org/~wpaul/SysKonnect/xmacii_datasheet_rev_c_9-29.pdf. SysKonnect GEnesis programming manual, http://www.syskonnect.com.歴史
sk デバイスドライバは、 FreeBSD 3.0 ではじめて登場しました。作者
sk ドライバは、 <wpaul@ctr.columbia.edu>によって書かれました。August 29, 2012 | FreeBSD |