Find the PCI device with a given device ID and vendor ID
#include <hw/pci.h> int pci_find_device( unsigned device, unsigned vendor, unsigned index, unsigned* bus, unsigned* dev_func );
- The device ID. For a list of supported device IDs, see <hw/pci_devices.h>.
- The vendor ID. For a list of supported vendor IDs, see <hw/pci_devices.h>.
- The index (n) of the device or function sought.
- A pointer to a location where the function can store the bus number of the device or function found.
- A pointer to a location where the function can store the device or function ID of the nth device or function found with the specified device and vendor IDs. The device number is in bits 7 through 3, and the function number in bits 2 through 0.
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The pci_find_device() function returns the location of the nth PCI device that has the specified device and vendor IDs.
You can find all the devices having the same device and vendor IDs by making successive calls to this function, starting with an index of 0, and incrementing it until PCI_DEVICE_NOT_FOUND is returned.
- The device or function wasn't found.
- The device or function was found.
- You haven't called pci_attach() , or the call to it failed.