Read 16-bit values from the configuration space of a device
#include <hw/pci.h> int pci_read_config16( unsigned bus, unsigned dev_func, unsigned offset, unsigned count, char* buff );
- The bus number.
- The name of the device or function.
- The register offset into the configuration space. This offset must be aligned to a 16-bit boundary (that is 0, 2, 4, …, 254 bytes).
- The number of 16-bit values to read.
- A pointer to a buffer where the requested 16-bit values are placed.
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The pci_read_config16() function reads the specified number of 16-bit values from the configuration space of the given device or function.
- An invalid offset register number was given.
- The PCI BIOS server reads only 50 words at a time; count is too large.
- The device or function was found.
- You haven't called pci_attach() , or the call to it failed.