Главная » 2017 » Ноябрь » 21 » man 2 pciconfig_read
01:11
man 2 pciconfig_read

SEO sprint - Всё для максимальной раскрутки!





ИМЯ


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()
Выполняет чтение в буфер 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(). Возвращается, если

capabilities(7)



Категория: (2) Системные вызовы ядра (функции языка Си) | Просмотров: 348 | Добавил: Администратор | Рейтинг: 0.0/0
Всего комментариев: 0
avatar