dwww Home | Manual pages | Find package

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 errno
              is set to indicate the error.

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

       pciconfig_iobase()
              Returns information on locations of various I/O regions in physi-
              cal 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 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
       Linux.

HISTORY
       Linux 2.0.26/2.1.11.

SEE ALSO
       capabilities(7)

Linux man-pages 6.9.1              2024-05-02                 pciconfig_read(2)

Generated by dwww version 1.16 on Tue Dec 16 04:15:29 CET 2025.