pciconfig_read(2)

SECCIÓN: 2 - Llamadas al sistema

pciconfig_read(2) System Calls Manual pciconfig_read(2)

NAME

pciconfig_read, pciconfig_write, pciconfig_iobase - pci device informa‐

tion handling

LIBRARY

Standard C library (libc, -lc)

SYNOPSIS

#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);

DESCRIPTION

Most of the interaction with PCI devices is already handled by the ker‐

nel PCI layer, and thus these calls should not normally need to be ac‐

cessed from user space.

pciconfig_read()

Reads to buf from device dev at offset off value.

pciconfig_write()

Writes from buf to device dev at offset off value.

pciconfig_iobase()

You pass it a bus/devfn pair and get a physical address for ei‐

ther the memory offset (for things like prep, this is

0xc0000000), the IO base for PIO cycles, or the ISA holes if

any.

RETURN VALUE

pciconfig_read()

On success, zero is returned. On error, -1 is returned and er‐

rno is set to indicate the error.

pciconfig_write()

On success, zero is returned. On error, -1 is returned and er‐

rno is set to indicate the error.

pciconfig_iobase()

Returns information on locations of various I/O regions in phys‐

ical memory according to the which value. Values for which are:

IOBASE_BRIDGE_NUMBER, IOBASE_MEMORY, IOBASE_IO, IOBASE_ISA_IO,

IOBASE_ISA_MEM.

ERRORS

EINVAL len value is invalid. This does not apply to pcicon‐

fig_iobase().

EIO I/O error.

ENODEV For pciconfig_iobase(), "hose" value is NULL. For the other

calls, could not find a slot.

ENOSYS The system has not implemented these calls (CONFIG_PCI not de‐

fined).

EOPNOTSUPP

This return value is valid only for pciconfig_iobase(). It is

returned if the value for which is invalid.

EPERM User does not have the CAP_SYS_ADMIN capability. This does not

apply to pciconfig_iobase().

STANDARDS

These calls are Linux-specific, available since Linux 2.0.26/2.1.11.

SEE ALSO

capabilities(7)

Linux man-pages 6.03 2022-10-30 pciconfig_read(2)

***

Índice de la Sección 2

Índice General