1 .\" Contributed by Niki A. Rahimi, LTC Security Development
2 .\" narahimi@us.ibm.com
4 .\" %%%LICENSE_START(FREELY_REDISTRIBUTABLE)
5 .\" May be freely distributed.
8 .\"*******************************************************************
10 .\" This file was generated with po4a. Translate the source file.
12 .\"*******************************************************************
14 .\" Japanese Version Copyright (c) 2004 Yuichi SATO
15 .\" all rights reserved.
16 .\" Translated Sat Jun 19 17:51:11 JST 2004
17 .\" by Yuichi SATO <ysato444@yahoo.co.jp>
19 .TH PCICONFIG_READ 2 2003\-07\-14 Linux "Linux Programmer's Manual"
21 pciconfig_read, pciconfig_write, pciconfig_iobase \- pci デバイス情報を扱う
24 \fB#include <pci.h>\fP
26 \fBint pciconfig_read(unsigned long \fP\fIbus\fP\fB, unsigned long \fP\fIdfn\fP\fB,\fP
27 \fB unsigned long \fP\fIoff\fP\fB, unsigned long \fP\fIlen\fP\fB, void *\fP\fIbuf\fP\fB);\fP
28 \fBint pciconfig_write(unsigned long \fP\fIbus\fP\fB, unsigned long \fP\fIdfn\fP\fB,\fP
29 \fB unsigned long \fP\fIoff\fP\fB, unsigned long \fP\fIlen\fP\fB, void *\fP\fIbuf\fP\fB);\fP
30 \fBint pciconfig_iobase(long \fP\fIwhich\fP\fB, unsigned long \fP\fIbus\fP\fB,\fP
31 \fB unsigned long \fP\fIdevfn\fP\fB);\fP
35 PCI デバイスとのやり取り (interaction) は カーネル PCI レイヤですでに処理されているので、
36 通常はこららの関数をユーザ空間からアクセスする必要はない。
38 \fBpciconfig_read\fP()
39 デバイス \fIdev\fP のオフセット \fIoff\fP の値を \fIbuf\fP に読み込む。
41 \fBpciconfig_write\fP()
42 デバイス \fIdev\fP のオフセット \fIoff\fP に \fIbuf\fP の値を書き込む。
44 \fBpciconfig_iobase\fP()
45 bus/devfn ペアをこの関数に渡し、 メモリオフセット (prep のようなものでは、この値は 0xc0000000 である) と PIO
46 サイクルの IO ベースの物理アドレスを取得する。 また、もしあるならば ISA hole の物理アドレスを取得する。
49 \fBpciconfig_read\fP()
50 成功した場合、0 が返される。 エラーの場合、\-1 が返され、 \fIerrno\fP が適切に設定される。
52 \fBpciconfig_write\fP()
53 成功した場合、0 が返される。 エラーの場合、\-1 が返され、 \fIerrno\fP が適切に設定される。
55 \fBpciconfig_iobase\fP()
56 \fIwhich\fP の値に基づいて、物理メモリ内の様々な I/O 領域の位置情報が返される。 \fIwhich\fP の値は、
57 \fBIOBASE_BRIDGE_NUMBER\fP, \fBIOBASE_MEMORY\fP, \fBIOBASE_IO\fP, \fBIOBASE_ISA_IO\fP,
58 \fBIOBASE_ISA_MEM\fP である。
62 \fIlen\fP の値が無効である。 このエラーは \fBpciconfig_iobase\fP() には適用されない。
68 \fBpciconfig_iobase\fP() の場合、でホース (hose) の値が NULL である。 他の呼び出しの場合、スロット (slot)
72 このシステムはこれらの呼び出しを実装していない。 (\fBCONFIG_PCI\fP が定義されていない)。
75 この返り値は \fBpciconfig_iobase\fP() でのみ有効である。 このエラーは \fIwhich\fP の値が無効であるときに返される。
78 ユーザが \fBCAP_SYS_ADMIN\fP 権限を持っていない。 このエラーは \fBpciconfig_iobase\fP() には適用されない。
80 これらの呼び出しは Linux 特有のものであり、 Linux 2.0.26/2.1.11 から使用可能である。
84 この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.53 の一部
85 である。プロジェクトの説明とバグ報告に関する情報は
86 http://www.kernel.org/doc/man\-pages/ に書かれている。