Provided by: manpages-ru-dev_4.26.0-1_all 

НАИМЕНОВАНИЕ
pciconfig_read, pciconfig_write, pciconfig_iobase - работа с информацией устройства PCI
БИБЛИОТЕКА
Стандартная библиотека языка C (libc, -lc)
ОБЗОР
#include <pci.h>
int pciconfig_read(unsigned long bus, unsigned long dfn,
unsigned long off, unsigned long len,
unsigned char *buf);
int pciconfig_write(unsigned long bus, unsigned long dfn,
unsigned long off, unsigned long len,
unsigned char *buf);
int pciconfig_iobase(int which, unsigned long bus,
unsigned long devfn);
ОПИСАНИЕ
Всё взаимодействие с устройствами PCI, в основном, уже выполнено в ядре на уровне PCI, и поэтому данные
вызовы, обычно, ненужны при вызове из пользовательского пространства.
pciconfig_read()
Выполняет чтение в буфер buf из устройства dev со смещением off.
pciconfig_write()
Выполняет запись буфера buf в устройство dev со смещением off.
pciconfig_iobase()
Принимает пару шина/функция_устройства и возвращает физический адрес или смещения в памяти (для
таких вещей как prep, это 0xc0000000), базы ввода-вывода для циклов PIO, или промежутки (holes)
ISA, если они есть.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
pciconfig_read()
При успешном выполнении возвращается ноль. В случае ошибки возвращается -1, а errno
устанавливается в соответствующее значение ошибки.
pciconfig_write()
При успешном выполнении возвращается ноль. В случае ошибки возвращается -1, а errno
устанавливается в соответствующее значение ошибки.
pciconfig_iobase()
Возвращает информацию о расположении различных областей ввода-вывода в физической памяти согласно
значению which. Значениями which могут быть: IOBASE_BRIDGE_NUMBER, IOBASE_MEMORY, IOBASE_IO,
IOBASE_ISA_IO, IOBASE_ISA_MEM.
ОШИБКИ
EINVAL Неправильное значение len. Не применимо к pciconfig_iobase().
EIO Ошибка ввода-вывода.
ENODEV Для pciconfig_iobase() значение «рукава (hose)» равно NULL. Для других вызовов не удаётся найти
слот.
ENOSYS Данные вызовы в системе не реализованы (не определён макрос CONFIG_PCI).
EOPNOTSUPP
Данное значение верно только для pciconfig_iobase(). Возвращается, если указано неверное значение
which.
EPERM Пользователь не имеет мандата CAP_SYS_ADMIN. Не применимо к pciconfig_iobase().
СТАНДАРТЫ
Linux.
ИСТОРИЯ
Linux 2.0.26/2.1.11.
СМОТРИТЕ ТАКЖЕ
capabilities(7)
ПЕРЕВОД
Русский перевод этой страницы руководства разработал(и) Alexey, Azamat Hackimov
<azamat.hackimov@gmail.com>, kogamatranslator49 <r.podarov@yandex.ru>, Darima Kogan
<silverdk99@gmail.com>, Max Is <ismax799@gmail.com>, Yuri Kozlov <yuray@komyakino.ru>, Иван Павлов
<pavia00@gmail.com> и Kirill Rekhov <krekhov.dev@gmail.com>
Этот перевод является свободной программной документацией; он распространяется на условиях общедоступной
лицензии GNU (GNU General Public License - GPL, https://www.gnu.org/licenses/gpl-3.0.html версии 3 или
более поздней) в отношении авторского права, но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ.
Если вы обнаружите какие-либо ошибки в переводе этой страницы руководства, пожалуйста, сообщите об этом
разработчику(ам) по его(их) адресу(ам) электронной почты или по адресу списка рассылки русских
переводчиков.
Справочные страницы Linux 6.9.1 2 мая 2024 г. pciconfig_read(2)