1 .\" Contributed by Niki A. Rahimi, LTC Security Development
2 .\" narahimi@us.ibm.com
3 .\" May be freely distributed.
5 .\"*******************************************************************
7 .\" This file was generated with po4a. Translate the source file.
9 .\"*******************************************************************
10 .TH PCICONFIG_READ 2 2003\-07\-14 Linux "Linux Programmer's Manual"
12 pciconfig_read, pciconfig_write, pciconfig_iobase \- pci デバイス情報を扱う
15 \fB#include <pci.h>\fP
17 \fBint pciconfig_read(unsigned long \fP\fIbus\fP\fB, unsigned long \fP\fIdfn\fP\fB,\fP
18 \fB unsigned long \fP\fIoff\fP\fB, unsigned long \fP\fIlen\fP\fB, void *\fP\fIbuf\fP\fB);\fP
19 \fBint pciconfig_write(unsigned long \fP\fIbus\fP\fB, unsigned long \fP\fIdfn\fP\fB,\fP
20 \fB unsigned long \fP\fIoff\fP\fB, unsigned long \fP\fIlen\fP\fB, void *\fP\fIbuf\fP\fB);\fP
21 \fBint pciconfig_iobase(long \fP\fIwhich\fP\fB, unsigned long \fP\fIbus\fP\fB,\fP
22 \fB unsigned long \fP\fIdevfn\fP\fB);\fP
26 PCI デバイスとのやり取り (interaction) は カーネル PCI レイヤですでに処理されているので、
27 通常はこららの関数をユーザ空間からアクセスする必要はない。
29 \fBpciconfig_read\fP()
30 デバイス \fIdev\fP のオフセット \fIoff\fP の値を \fIbuf\fP に読み込む。
32 \fBpciconfig_write\fP()
33 デバイス \fIdev\fP のオフセット \fIoff\fP に \fIbuf\fP の値を書き込む。
35 \fBpciconfig_iobase\fP()
36 bus/devfn ペアをこの関数に渡し、 メモリオフセット (prep のようなものでは、この値は 0xc0000000 である) と PIO
37 サイクルの IO ベースの物理アドレスを取得する。 また、もしあるならば ISA hole の物理アドレスを取得する。
40 \fBpciconfig_read\fP()
41 成功した場合、0 が返される。 エラーの場合、\-1 が返され、 \fIerrno\fP が適切に設定される。
43 \fBpciconfig_write\fP()
44 成功した場合、0 が返される。 エラーの場合、\-1 が返され、 \fIerrno\fP が適切に設定される。
46 \fBpciconfig_iobase\fP()
47 \fIwhich\fP の値に基づいて、物理メモリ内の様々な I/O 領域の位置情報が返される。 \fIwhich\fP の値は、
48 \fBIOBASE_BRIDGE_NUMBER\fP, \fBIOBASE_MEMORY\fP, \fBIOBASE_IO\fP, \fBIOBASE_ISA_IO\fP,
49 \fBIOBASE_ISA_MEM\fP である。
53 \fIlen\fP の値が無効である。 このエラーは \fBpciconfig_iobase\fP() には適用されない。
59 \fBpciconfig_iobase\fP() の場合、でホース (hose) の値が NULL である。 他の呼び出しの場合、スロット (slot)
63 このシステムはこれらの呼び出しを実装していない。 (\fBCONFIG_PCI\fP が定義されていない)。
66 この返り値は \fBpciconfig_iobase\fP() でのみ有効である。 このエラーは \fIwhich\fP の値が無効であるときに返される。
69 ユーザが \fBCAP_SYS_ADMIN\fP 権限を持っていない。 このエラーは \fBpciconfig_iobase\fP() には適用されない。
71 これらの呼び出しは Linux 特有のものであり、 Linux 2.0.26/2.1.11 から使用可能である。