.\" Contributed by Niki A. Rahimi, LTC Security Development .\" narahimi@us.ibm.com .\" .\" %%%LICENSE_START(FREELY_REDISTRIBUTABLE) .\" May be freely distributed. .\" %%%LICENSE_END .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .\" .\" Japanese Version Copyright (c) 2004 Yuichi SATO .\" all rights reserved. .\" Translated Sat Jun 19 17:51:11 JST 2004 .\" by Yuichi SATO .\" .TH PCICONFIG_READ 2 2003\-07\-14 Linux "Linux Programmer's Manual" .SH 名前 pciconfig_read, pciconfig_write, pciconfig_iobase \- pci デバイス情報を扱う .SH 書式 .nf \fB#include \fP .sp \fBint pciconfig_read(unsigned long \fP\fIbus\fP\fB, unsigned long \fP\fIdfn\fP\fB,\fP \fB unsigned long \fP\fIoff\fP\fB, unsigned long \fP\fIlen\fP\fB, void *\fP\fIbuf\fP\fB);\fP \fBint pciconfig_write(unsigned long \fP\fIbus\fP\fB, unsigned long \fP\fIdfn\fP\fB,\fP \fB unsigned long \fP\fIoff\fP\fB, unsigned long \fP\fIlen\fP\fB, void *\fP\fIbuf\fP\fB);\fP \fBint pciconfig_iobase(long \fP\fIwhich\fP\fB, unsigned long \fP\fIbus\fP\fB,\fP \fB unsigned long \fP\fIdevfn\fP\fB);\fP .fi .SH 説明 .PP PCI デバイスとのやり取り (interaction) は カーネル PCI レイヤですでに処理されているので、 通常はこららの関数をユーザー空間からアクセスする必要はない。 .TP \fBpciconfig_read\fP() デバイス \fIdev\fP のオフセット \fIoff\fP の値を \fIbuf\fP に読み込む。 .TP \fBpciconfig_write\fP() デバイス \fIdev\fP のオフセット \fIoff\fP に \fIbuf\fP の値を書き込む。 .TP \fBpciconfig_iobase\fP() bus/devfn ペアをこの関数に渡し、 メモリーオフセット (prep のようなものでは、この値は 0xc0000000 である) と PIO サイクルの IO ベースの物理アドレスを取得する。 また、もしあるならば ISA hole の物理アドレスを取得する。 .SH 返り値 .TP \fBpciconfig_read\fP() 成功した場合、0 が返される。 エラーの場合、\-1 が返され、 \fIerrno\fP が適切に設定される。 .TP \fBpciconfig_write\fP() 成功した場合、0 が返される。 エラーの場合、\-1 が返され、 \fIerrno\fP が適切に設定される。 .TP \fBpciconfig_iobase\fP() \fIwhich\fP の値に基づいて、物理メモリー内の様々な I/O 領域の位置情報が返される。 \fIwhich\fP の値は、 \fBIOBASE_BRIDGE_NUMBER\fP, \fBIOBASE_MEMORY\fP, \fBIOBASE_IO\fP, \fBIOBASE_ISA_IO\fP, \fBIOBASE_ISA_MEM\fP である。 .SH エラー .TP \fBEINVAL\fP \fIlen\fP の値が無効である。 このエラーは \fBpciconfig_iobase\fP() には適用されない。 .TP \fBEIO\fP I/O エラー。 .TP \fBENODEV\fP \fBpciconfig_iobase\fP() の場合、でホース (hose) の値が NULL である。 他の呼び出しの場合、スロット (slot) が見つからない。 .TP \fBENOSYS\fP このシステムはこれらの呼び出しを実装していない。 (\fBCONFIG_PCI\fP が定義されていない)。 .TP \fBEOPNOTSUPP\fP この返り値は \fBpciconfig_iobase\fP() でのみ有効である。 このエラーは \fIwhich\fP の値が無効であるときに返される。 .TP \fBEPERM\fP ユーザーが \fBCAP_SYS_ADMIN\fP 権限を持っていない。 このエラーは \fBpciconfig_iobase\fP() には適用されない。 .SH 準拠 これらの呼び出しは Linux 特有のものであり、 Linux 2.0.26/2.1.11 から使用可能である。 .SH 関連項目 \fBcapabilities\fP(7) .SH この文書について この man ページは Linux \fIman\-pages\fP プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man\-pages/ に書かれている。