![]() |
![]() |
![]() |
![]() |
pci_read_config()
Read from the configuration space of a PCI device
Synopsis:
#include <hw/pci.h>
int pci_read_config( void* handle,
unsigned offset,
unsigned count,
size_t size,
void* buff );
Arguments:
- handle
- The handle returned by pci_attach_device().
- offset
- The offset into the configuration space where you want to read from.
- count
- The number of objects that you want to read.
- size
- The size of each object.
- buff
- A pointer to a buffer where the function can store the objects that it reads.
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
The pci_read_config() function reads count objects of the specified size into buff at the given offset from the configuration space of the PCI device specified by handle.
Returns:
- PCI_BAD_REGISTER_NUMBER
- The offset is invalid.
- PCI_BUFFER_TOO_SMALL
- The PCI BIOS server reads only 100 bytes at a time; size is too large.
- PCI_DEVICE_NOT_FOUND
- The handle is invalid.
- PCI_SUCCESS
- Success.
- -1
- You haven't called pci_attach(), or the call to it failed.
Classification:
| Safety: | |
|---|---|
| Cancellation point | Yes |
| Interrupt handler | No |
| Signal handler | Yes |
| Thread | Yes |
See also:
pci_attach(), pci_attach_device(), pci_detach(), pci_detach_device(), pci_find_class(), pci_find_device(), pci_present(), pci_read_config8(), pci_read_config16(), pci_read_config32(), pci_rescan_bus(), pci_write_config(), pci_write_config8(), pci_write_config16(), pci_write_config32()
![]() |
![]() |
![]() |
![]() |

![[Previous]](../prev.gif)
![[Contents]](../contents.gif)
![[Index]](../keyword_index.gif)
![[Next]](../next.gif)
