Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all bug

名前

       setpci - PCI デバイスを設定する

書式

       setpci [options] devices operations...

説明

       setpci は PCI デバイスの情報を取得したり設定したりするユーティリティである。

       全ての数値は 16 進数表記で入力される。

オプション

       -v     setpci に状況を詳細に報告させ、設定空間アクセスの詳細な情報を表示させる。

       -f     (デバイスが選択されなかったり) 何もすることがなくても、 setpci にエラーを表示させな
              い。 このオプションは広く配布されている設定スクリプトで使うことを意図している。  こ
              の設定スクリプトでは、問題としているデバイスが マシンに存在するか否かが確かでないた
              めである。

       -D     「デモモード」 -- 実際に実行しないで設定空間アクセスをシミュレートする。 setpci -vD
              を試してみると、実際に実行する前に どれだけ複雑な setpci 操作のシーケンスが実行され
              るかを見ることができて、役に立つ。

       --version
              setpci のバージョンを表示する。 このオプションは単独で使用すべきである。

デバイスの選択

       操作のシーケンスの前に、操作の対象としたいデバイスを選択する必要がある。

       -s [[<bus>]:][<slot>][.[<func>]]
              指定されたバス (bus)・スロット (slot)・機能 (func) のデバイスを選択する。  デバイス
              の指定の各要素は省略可能で、また  "*" は「任意の値」を意味する。 全ての数値は 16 進
              数で入力する。 例えば、"0:" はバス 0 の全てのデバイスを、 "0"  は全てのバスのデバイ
              ス  0  で全ての機能を意味し、  "0.3" は全てのバスのデバイス 0 で 3 番目の機能を選択
              し、 ".4" は各デバイスの 4 番目の機能を選択する。

       -d [<vendor>]:[<device>]
              指定されたベンダ ID とデバイス ID を持つデバイスを選択する。 両 ID とも 16 進で与え
              られる。省略も可能である。  また、「任意の値」を意味する "*" を指定することも可能で
              ある。

操作

       設定レジスタの値を取得するには、単に名前を指定すること (名前を入力してもよいし、  レジスタ
       のアドレスを入力してもよい。  レジスタのアドレスには、オプションとして .B, .W, .L というバ
       イト・ワード・ロングワードのレジスタ長を指定する サフィックスを付けることもできる)。

       レジスタを設定するには reg=values と書くこと。 ここで  reg  はレジスタの情報を取得するのに
       使ったのと同じ書式であり、 values は指定したアドレスを開始点として書き込むコンマ区切りの値
       のリストである。

レジスタ名

       setpci は以下の設定レジスタ名を認識する。 これらの正確な意味については、PCI バスの仕様を参
       照するか、 /usr/include/linux/pci.h にあるいくつかのコメントを見よ。

       VENDOR_ID
       DEVICE_ID
       COMMAND
       STATUS
       REVISION
       CLASS_PROG
       CLASS_DEVICE
       CACHE_LINE_SIZE
       LATENCY_TIMER
       HEADER_TYPE
       BIST
       BASE_ADDRESS_0
       BASE_ADDRESS_1
       BASE_ADDRESS_2
       BASE_ADDRESS_3
       BASE_ADDRESS_4
       BASE_ADDRESS_5
       CARDBUS_CIS
       SUBSYSTEM_VENDOR_ID
       SUBSYSTEM_ID
       ROM_ADDRESS
       INTERRUPT_LINE
       INTERRUPT_PIN
       MIN_GNT
       MAX_LAT
       PRIMARY_BUS
       SECONDARY_BUS
       SUBORDINATE_BUS
       SEC_LATENCY_TIMER
       IO_BASE
       IO_LIMIT
       SEC_STATUS
       MEMORY_BASE
       MEMORY_LIMIT
       PREF_MEMORY_BASE
       PREF_MEMORY_LIMIT
       PREF_BASE_UPPER32
       PREF_LIMIT_UPPER32
       IO_BASE_UPPER16
       IO_LIMIT_UPPER16
       BRIDGE_ROM_ADDRESS
       BRIDGE_CONTROL
       CB_CARDBUS_BASE
       CB_CAPABILITIES
       CB_SEC_STATUS
       CB_BUS_NUMBER
       CB_CARDBUS_NUMBER
       CB_SUBORDINATE_BUS
       CB_CARDBUS_LATENCY
       CB_MEMORY_BASE_0
       CB_MEMORY_LIMIT_0
       CB_MEMORY_BASE_1
       CB_MEMORY_LIMIT_1
       CB_IO_BASE_0
       CB_IO_BASE_0_HI
       CB_IO_LIMIT_0
       CB_IO_LIMIT_0_HI
       CB_IO_BASE_1
       CB_IO_BASE_1_HI
       CB_IO_LIMIT_1
       CB_IO_LIMIT_1_HI
       CB_SUBSYSTEM_VENDOR_ID
       CB_SUBSYSTEM_ID
       CB_LEGACY_MODE_BASE

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     ライブラリのデバッグレベルを上げる。(全てのシステムで有効)

       `setpci -d *:* latency_timer=40' レイテンシタイマを 64 (16 進数の 40) に設定する。

       `setpci  -s  0 device_id vendor_id' 全てのバスのスロット 0 にある デバイスの ID をリストす
       る。

       `setpci -s 12:3.4 3c.l=1,2,3' バス 12・スロット 3・機能 4 のデバイスの レジスタ 3c  にロン
       グワード 1、レジスタ 3d に 2、 レジスタ 3e に 3 を書き込む。

関連項目

       lspci(8)

作者

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