Provided by: manpages-dev_3.54-1ubuntu1_all bug

NAME

       pciconfig_read, pciconfig_write, pciconfig_iobase - pci device information handling

SYNOPSIS

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

DESCRIPTION

       Most of the interaction with PCI devices is already handled by the kernel PCI layer, and thus these calls
       should not normally need to be accessed 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 either 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 errno is set appropriately.

       pciconfig_write()
              On success zero is returned.  On error, -1 is returned and errno is set appropriately.

       pciconfig_iobase()
              Returns  information on locations of various I/O regions in physical 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 pciconfig_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 defined).

       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().

CONFORMING TO

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

SEE ALSO

       capabilities(7)

COLOPHON

       This page is part of release 3.54 of the Linux man-pages project.  A  description  of  the  project,  and
       information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.