pciconfig_read - システムコールの説明 - Linux コマンド集 一覧表
- 名前
- 書式
- 説明
- 返り値
- エラー
- 準拠
- 関連項目
名前
pciconfig_read, pciconfig_write, pciconfig_iobase - pci デバイス情報を扱う
書式
#include <pci.h>
int pciconfig_read(unsigned long bus, unsigned long dfn,
unsigned long off, unsigned long len, void *buf);
int pciconfig_write(unsigned long bus, unsigned long dfn,
unsigned long off, unsigned long len, void *buf);
int pciconfig_iobase(long which, unsigned long bus,
unsigned long devfn);
説明
PCI デバイスとのインタラクションは
カーネル PCI レイヤで既に扱われているので、
通常はこららの関数をユーザ空間からアクセスする必要はない。
-
pciconfig_read
()
-
デバイス
dev
のオフセット
off
の値を
buf
に読み込む。
-
pciconfig_write
()
-
デバイス
dev
のオフセット
off
に
buf
の値を書き込む。
-
pciconfig_iobase
()
-
bus/devfn ペアをこの関数に渡し、
メモリオフセット (prep のようなものでは、この値は 0xc0000000 である) と
PIO サイクルの IO ベースの物理アドレスを取得する。
また、もしあるならば ISA hole の物理アドレスを取得する。
返り値
-
pciconfig_read
()
-
成功した場合、0 が返される。
エラーの場合、-1 が返され、errno が適切に設定される。
-
pciconfig_write
()
-
成功した場合、0 が返される。
エラーの場合、-1 が返され、errno が適切に設定される。
-
pciconfig_iobase
()
-
which
の値に基づいて、物理メモリ内の様々な I/O 領域の位置情報が返される。
which
の値は、
IOBASE_BRIDGE_NUMBER, IOBASE_MEMORY, IOBASE_IO, IOBASE_ISA_IO, IOBASE_ISA_MEM
である。
エラー
-
EINVAL
-
len
の値が無効である。
これは pci_iobase には適用されない。
-
EIO
-
I/O エラー。
-
ENODEV
-
pci_iobase でホース (hose) の値が NULL である。
他の呼び出しで、スロット (slot) が見つからない。
-
ENOSYS
-
このシステムはこれらの呼び出しを実装していない。
(CONFIG_PCI が定義されていない)。
-
EOPNOTSUPP
-
この返り値は pci_iobase でのみ有効である。
これは
which
の値が無効であるときに返される。
-
EPERM
-
ユーザが CAP_SYS_ADMIN 権限を持っていない。
これは pci_iobase には適用されない。
準拠
これらの呼び出しは Linux 特有のものであり、
Linux 2.0.26/2.1.11 から使用可能である。
関連項目
- Linux Tips 関連記事
- Linux Tips(目次)
- Linux ディストリビューション一覧
- rpm のファイル名にあるi386とかi686とは
- 自分のマシンの情報を調べる
- cron の設定
- ssh の root ログインを禁止する
- ssh を、ユーザ、IPでアクセス制限
- 鍵交換方式によるssh接続
- 鍵交換方式によるssh接続( windowsから )
- 複数ファイル内の文字列を置換して上書き保存する
- あるグループをイニシャルグループとするユーザー一覧出力
- 複数ファイルのファイル名を一括変換する
- 連番ファイルをコマンド一発で作成する
- 中身がランダムなファイルを任意のサイズで作成する
- Linux ユーザーアカウントをロック・アンロックする