kazmax - Linux で自宅サーバー

lspci - システム管理コマンドの説明 - Linux コマンド集 一覧表

  1. 名前
  2. 書式
  3. 説明
  4. オプション
  5. PCILIB のオプション
  6. ファイル
  7. 関連項目
  8. 著者

名前

lspci - 全ての PCI デバイスを表示する

書式

lspci [ options ]

説明

lspci はシステムの全ての PCI バスと、そこにつながっている全てのデバイスに関する 情報を表示するユーティリティである。
もし、PCI デバイスのドライバ、または lspci 自身についてのバグを報告するなら、 "lspci -vvx" の出力を含めるようにして欲しい。

オプション

-v
lspci の出力を詳細にして、全てのデバイスに関して詳しい情報を表示する。
-vv
lspci の出力をより詳細にし、さらに多くの情報 (PCI デバイスが渡す情報の本当に全て) を表示する。 これらのデータの正確な意味は、このマニュアルページでは説明しない。 詳しく知りたければ /usr/include/pci.h または、PCIの規格を参照せよ。
-n
PCI ID データベースを調べる代わりに、 PCI ベンダとデバイスコードを数字で表示する。
-x
(標準のヘッダである) PCI 設定空間 (PCI configuration space) の 先頭 64 バイトの 16 進ダンプを表示する。 ドライバまたは lspci 自身のデバッグに有用である。
-xxx
PCI 設定空間の全ての 16 進ダンプを表示する。 これは root のみが利用できる。 何故ならば、幾つかの PCI デバイスは 設定空間の未定義部分を読み込もうとすると クラッシュ するからである (この動作は多分 PCI 標準には違反しないが、少なくとも恐ろしく間抜けではある)。
-b
バスから見た表示をする。 カーネルから見える IRQ とアドレスの代わりに、 カードと PCI バスから見える IRQ とアドレスを全て表示する。
-t
全てのバス・ブリッジ・デバイスと、それらの間の接続を含む図を木構造で表示する。
-s
指定されたバス (bus)・スロット (slot)・機能 (func) のデバイスのみを表示する。 デバイスの指定の各要素は省略可能で、また "*" は「任意の値」を意味する。 全ての数値は 16 進数で入力する。 例えば、"0:" はバス 0 の全てのデバイスを、 "0" は全てのバスのデバイス 0 で全ての機能を意味し、 "0.3" は全てのバスのデバイス 0 で 3 番目の機能を選択し、 ".4" は各デバイスの 4 番目の機能を表示する。
-d [<vendor>]:[<device>]
指定されたベンダ ID とデバイス ID を持つデバイスのみを表示する。 両 ID とも 16 進で与えられる。省略も可能である。 また、「任意の値」を意味する "*" を指定することも可能である。
-i <file>
<file> を /usr/share/pci.ids の代わりの PCI ID データベースとして用いる。
-p <dir>
<dir> を /proc/bus/pci の代わりに、PCI バスの情報を持つディレクトリとして用いる。
-m
スクリプトで簡単にパースできるように、 機械可読形式で PCI デバイスのデータをダンプする (通常のフォーマットと、詳細なフォーマットとの両方がサポートされている)。
-M
バスマッピングモード (bus mapping mode) で起動する。 これは設定に失敗したブリッジの後にあるものを含めて、 全てのデバイスを見つけるために広範囲にスキャンする。 これはデバッグのみを意図している事に注意すること。 これはマシンをクラッシュさせるかもしれない (バグのあるデバイスの場合のみではあるが、不幸にもそれは存在する) ので、 root のみが使える。 ハードウェアに直接は触らないような PCI のアクセス方法において、 -M を使う事は意味がない。 何故ならば、(lspci のモジュール関連バグを除けば) 実行結果は 通常の表示モードと同じだからである。
--version
lspci のバージョンを表示する。このオプションは、単独で使用すべきである。

PCILIB のオプション

PCI utilities は PCI カードとやりとりするために PCILIB (PCI 設定空間にアクセスするための機能を提供する、 プラットフォームに依存せず移植性の高いライブラリ) を用いている。 以下のオプションはライブラリのパラメータ、 特にどのアクセス方法が使われるか、を制御する。 デフォルトでは PCILIB はアクセス方法で可能なもののうち最初のものを用い、 何らデバッグ情報を表示しない。 各々のスイッチには、そのスイッチに対応している ハードウェア/ソフトウェアの設定リストが付随する。

-P <dir>
/proc/bus/pci の代わりに、 <dir> を使った Linux /proc/bus/pci スタイルの設定でアクセスを行わせる。 (Linux 2.1 またはそれ以降でのみ有効)
-H1
インテル設定メカニズム 1 (Intel configuration mechanism 1) を使って、 ハードウェアに直接アクセスする。(i386 及びその互換でのみ有効)
-H2
インテル設定メカニズム 2 (Intel configuration mechanism 2) を使って、 ハードウェアに直接アクセスする。 警告: この方法では各バスの最初の 16 デバイスしか扱えず、 多くの場合殆んど信頼できない。(i386 及びその互換でのみ有効)
-S
PCI アクセスシステムコールを使う。(Alpha/Linux と UltraSparc でのみ有効)
-F <file>
lspci -x の実行結果を格納しているファイルから、全ての情報を取り出す。 ユーザーから提供されたバグ報告の解析に役立つ。 なぜならば、さらなるダンプをユーザーに要求する事なく、 ハードウェアの設定をあなたの好きなやり方で表示する事ができる。 (全てのシステムで有効)
-G
ライブラリのデバッグレベルを上げる。(全てのシステムで有効)

ファイル

/usr/share/pci.ids
既知の PCI ID (ベンダ・デバイス・クラス・サブクラス) のリスト。
/proc/bus/pci
2.1.82 以降の Linux カーネルで提供される PCI バス設定空間へのインタフェース。 バスごとのディレクトリには、カードごとの設定空間を表すファイルがあり、 さらに devices ファイルは全ての PCI デバイスのリストを表す。

関連項目

setpci (8),   update-pciids (8) 

著者

Linux PCI Utilities は Martin Mares <mj@ucw.cz> に よって保守されている。