.\" Copyright (c) 1997, 1998 .\" Bill Paul . All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" 3. All advertising materials mentioning features or use of this software .\" must display the following acknowledgement: .\" This product includes software developed by Bill Paul. .\" 4. Neither the name of the author nor the names of any co-contributors .\" may be used to endorse or promote products derived from this software .\" without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY Bill Paul AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD .\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR .\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN .\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF .\" THE POSSIBILITY OF SUCH DAMAGE. .\" .\" %Id: wb.4,v 1.2 1998/12/05 09:31:25 rnordier Exp % .\" $FreeBSD$ .\" .Dd November 4, 1998 .Dt WB 4 i386 .Os FreeBSD .Sh 名称 .Nm wb .Nd Winbond W89C840F ファーストイーサネットデバイスドライバ .Sh 書式 .Cd "device wb0" .Sh 解説 .Nm ドライバは、Winbond W89C840F ファーストイーサネットコントローラを 利用した、PCI イーサネットアダプタ、 及び組み込み型コントローラをサポートしています。 このドライバには、Trendware TE100-PCIE など、 他の様々な安価なボードを含んでいます。 840F と 940F を混同しないでください。 940F は NE2000 クローンのため、10Mbps のみサポートしています。 .Pp Winbond コントローラは、バスマスタ DMA を使っています。 また、DECの 'tulip' と同性能になるようにデザインされています。 DEC の標準な設計とは、いくつかの点において異なっています: コントロールレジスタとステータスレジスタは 8 バイトではなく 4 バイト間隔になっています。 また、受信フィルタの設定は、 DMA 転送エンジンを経由した、特別なセットアップフレームを ダウンロードする方式ではなく、レジスタを通して行います。 外部の PHY を使うことによって、Winbond チップは、全二重または半二重に よる、10Mbps および 100Mbps の転送速度をサポートしています。 .Pp .Nm ドライバは次に挙げるメディアタイプをサポートしています: .Pp .Bl -tag -width xxxxxxxxxxxxxxxxxxxx .It autoselect メディアタイプ及びオプションの自動設定を有効にします。このオプションは、 Winbond コントローラに取り付けられた PHY チップが NWAY オートネゴシエーションをサポートする場合のみ利用可能です。 .Pa /etc/rc.conf にメディアオプションを追加することによって、 自動的に設定されたモードをユーザが手動で変更可能となります。 .It 10baseT/UTP 転送方式を 10Mbps に設定します。 .Ar mediaopt オプションを指定することによって、 .Ar 全二重 モード、または .Ar 半二重 モードのどちらかひとつを利用できます。 .It 100baseTX 転送方式を 100Mbps (ファーストイーサネット) に設定します。 .Ar mediaopt オプションを指定することによって、 .Ar 全二重 モード、または .Ar 半二重 モードのどちらかひとつを利用できます。 .El .Pp .Nm ドライバは次に挙げるメディアオプションをサポートしています: .Pp .Bl -tag -width xxxxxxxxxxxxxxxxxxxx .It full-duplex 強制的に全二重に設定します。 .It half-duplex 強制的に半二重に設定します。 .El .Pp 100baseTX メディアタイプは、アダプタがサポートしているときに限って使用可能 であることに注意してください。 このデバイスの設定に関する、さらに詳しい情報については .Xr ifconfig 8 を参照してください。 .Sh 診断 .Bl -diag .It "wb%d: couldn't map memory" 致命的な初期化エラーが発生しました。 .It "wb%d: couldn't map interrupt" 致命的な初期化エラーが発生しました。 .It "wb%d: watchdog timeout" デバイスがネットワークに応答するのを停止したか、あるいは、 ネットワーク接続 (ケーブル) に関する問題が発生しました。 .It "wb%d: no memory for rx list" ドライバは、mbuf を受信リングに割り当てられませんでした。 .It "wb%d: no memory for tx list" パッドバッファを割り当てる際、 あるいは mbuf チェーン をクラスタに分割する際に、 ドライバは mbuf を送信リングに割り当てられませんでした。 .It "wb%d: chip is in D3 power state -- setting to D0" このメッセージは、 パワーマネジメントをサポートするアダプタだけにあてはまります。 オペレーティングシステムによっては、 シャットダウン時にコントローラを低消費電力モードに設定します。 しかし、PCI BIOS によっては、チップの設定を開始するまでに、 チップを低消費電力モードから回復させることができないものがあります。 コントローラは D3 状態になると、PCI に関する設定を全て失ってしまいます。 従って、 BIOS が時間内にコントローラをフルパワーモードに戻すことができない場合、 PCI に関する設定を正常に行うことができません。 ドライバはこのような状態を検知したとき、アダプタを D0 (フルパワー) 状態に戻すことを試みます。 しかし、ドライバを完全に操作可能な状態まで、 復帰させることができないことがあります。 もしブート時にこのようなメッセージが表示され、 ドライバがネットワークインタフェースとして デバイスにアタッチできなかった場合には、 デバイスを正しく設定するために もう一回ウォームブートを行う必要があります。 .Pp このような状況は、他のオペレーティングシステムから ウォームブートを行った場合にのみ発生します。 .Fx をブートする前にマシンの電源を落しておけば、 カードは正しく認識されるはずです。 .El .Sh 関連項目 .Xr arp 4 , .Xr netintro 4 , .Xr ifconfig 8 .Sh 歴史 .Nm デバイスドライバは .Fx 3.0 で登場しました。 .Sh 作者 .Nm ドライバは .An Bill Paul Aq wpaul@ctr.columbia.edu が作成しました。 .Sh バグ 接続先がモードを切り換える際、Winbond チップは 奇妙な振舞いを起しているように思われます。 例として、両方を 10Mbps 半二重の状態にセットしたとします。 それから片方を 100Mbps 全二重に設定すると、 Winbond チップのレシーバは RX 記述子の至るところにゴミを 書き始めます。 .Nm ドライバは、コントローラチップと付属の PHY を 強制的にリセットすることによってこの問題に対処します。 荒治療ではありますが、このような状態から正しく回復するための 唯一の方法に思えます。