Caution: This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs.

pci_write_config32()

Write 32-bit values to the configuration space of a device

Synopsis:

#include <hw/pci.h>

int pci_write_config32( unsigned bus,
                        unsigned dev_func,
                        unsigned offset,
                        unsigned count,
                        char* buff );

Arguments:

bus
The bus number.
dev_func
The device or function ID. The device number is in bits 7 through 3, and the function number in bits 2 through 0.
offset
The register offset into the configuration space. This must be aligned to a 32-bit boundary (that is 0, 4, 8, ..., 252 bytes).
count
The number of 32-bit values to write.
buff
A pointer to a buffer containing the data to be written into the configuration space.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The pci_write_config32() function writes individual 32-bit values to the configuration space of the specified device.


Note: You must successfully call pci_attach() before calling any of the other PCI functions.

Returns:

PCI_BAD_REGISTER_NUMBER
An invalid register offset was given.
PCI_SUCCESS
The device or function was found.
-1
You haven't called pci_attach(), or the call to it failed.

Classification:

QNX Neutrino

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_config(), pci_read_config8(), pci_read_config16(), pci_read_config32(), pci_rescan_bus(), pci_write_config(), pci_write_config8(), pci_write_config16()