pciconf(8) FreeBSD 一般コマンドマニュアル

pciconf

前のページ 上に戻る 次のページ

pciconf


     pciconf -a selector
     pciconf -r selector [-b | -h] reg[:reg2]
     pciconf -w selector [-b | -h] reg value


解説

     pciconf コマンドは、 /dev/pciioctl(2) インタフェースにより提供されて
     いる機能へのコマンドラインインタフェースを提供します。 -l オプションを付
     けると、ブート時のプローブにより見つかったすべてのデバイスを以下の書式で
     表示します:

     foo0@pci0:4:0: class=0x010000 card=0x00000000 chip=0x000f1000 rev=0x01 hdr=0x00
     bar0@pci0:5:0: class=0x000100 card=0x00000000 chip=0x88c15333 rev=0x00 hdr=0x00
     none0@pci0:6:0: class=0x020000 card=0x00000000 chip=0x802910ec rev=0x00 hdr=0x00

     最初の欄は、デバイス名、ユニット番号、 セレクタを表示します。対象の PCI
     デバイスに関して、カーネル内のデバイスの設定がなされていない場合、デバイ
     ス名は ``none'' になります。設定されていないデバイスのユニット番号は 0 か
     ら開始し、設定されていないデバイスに出会う度に増やされます。 セレクタは、
     このコマンドの他の書式で直接使えるような形で表示されます。 2 番目の欄はク
     ラスコードで、2 桁の 16 進数で表されるクラスバイトとサブクラスバイト、イ
     ンタフェースバイトからなります。 3 番目の欄は PCI 規格のリビジョン 2.1 で
     導入されたサブベンダ ID レジスタの内容です。今日のほとんどの PCI カード
     (2.0) ではこれは 0 となりますが、新しく開発された PCI カードではそのカー
     ド固有の識別コード (unique card identification code) が入れられます。この
     値は上位 2 バイトのカード ID と、下位 2 バイトのカードベンダ ID から構成
     されます。

     4 番目の欄にはこのカードがどのチップに基づいているか識別するチップデバイ
     ス ID が含まれます。この値は上記と同様に二つのフィールドに分けられ、チッ
     プとベンダを識別します。 5 番目の欄はチップのリビジョンを表示します。 6
     番目の欄はヘッダタイプを示します。現在割り当てられているヘッダタイプは
     PCI - PCI ブリッジのチップが 1 となる以外はすべて 0 となります。ヘッダタ
     イプレジスタが 0 となっている PCI デバイスの最上位ビットがセットされてい
     ると、そのデバイスは 多機能 (multi-function) デバイスであり、ひとつのチッ
     プにいくつかの (似たものかもしれないし、まったく異なるものかもしれない)
     機能を備えています。

     -l オプションは root ではないユーザが使うことのできる唯一のものです。
     pciconf を他の方法で実行するには pcibus:device (オプションで :function が
     続きます) という形式で セレクタを指定する必要があります。最後にコロンを付
     けても構いませんが無視されますので、 pciconf -l の出力の最初の欄をそのま
     ま使うことができます。すべての番号は 10 進数で表します。

     -a フラグを付けると、 selector で識別したデバイスになんらかのドライバが割
     り当てられているかを、 pciconf は判定します。終了状態 0 はデバイスがドラ
     イバを持つことを意味します; 非 0 はデバイスがドライバを持たないことを意味
     します。

     -r オプションはデバイス selector のバイトオフセット reg の所のコンフィ
     ギュレーションスペースレジスタ (configuration space register) を読み取
     り、その値を 16 進数で表示します。省略可能な第 2 引数 reg2 は、読み取る範
     囲を指定します。 -w オプションはデバイス selector のバイトオフセット reg


バグ

     -b オプションと -h オプションは pciconf の内部で実装されており、 ioctl(2)
     に基づいているわけではありません。

     root ではないユーザが -a オプションと -r オプションを使うことを許可するこ
     とは有用かもしれませんが、 KLD ドライバでデバイスを供給するために kldload
     を実行できるのは root だけでしょうし、一部の粗悪な PCI チップではコンフィ
     ギュレーションスペースレジスタの読み込みが故障を引き起こす場合があるので
     す。

FreeBSD 4.4                    February 7, 1997                    FreeBSD 4.4

ABELNET VPSサービス