INtime SDK Help
PciSetConfigRegister, PcieSetConfigRegister
INtime SDK v7.1 > About INtime > Other system libraries > PCI Library > PciSetConfigRegister, PcieSetConfigRegister

Writes a value to a given PCI configuration register. The register address is computed from the wBusNum, wDeviceNum, and wFunction fields of the PCIDEV structure, and the byOffset/wOffset parameter. The register size is determined by the bySize parameter.

The PciGetConfigRegister call uses the PCI 2.2 method for accessing the configuration space reigster. The PciegetConfigRegister call uses the PCIe 1.1 method for accessing the registers.

void PciSetConfigRegister(
    PCIDEV *pPciDevice, 
    BYTE byOffset, 
    BYTE bySize, 
    DWORD dwValue

void PcieSetConfigRegister(
    PCIDEV *pPciDevice, 
    WORD wOffset, 
    BYTE bySize, 
    DWORD dwValue


A pointer to a PCIDEV structure, initialized as described above.
byOffset, wOffset
The offset to the desired register in the given PCI device header.
A value of T_BYTE, T_WORD or T_DWORD sets the word size to be written.
Contains the value of the register to be written. This may be truncated according to the value of the bySize parameter.

Return Values



The PCI 2.2. specification defines a method of accessing the configuration space using a pair of I/O registers. The configuration header for each device extends for up to 256 bytes in this space per device function. The PCI Express 1.1 specification defines a method of accessing the configuration space by mapping the space to physical memory. Each device header extends for up to 4096 bytes per device function. The first 256 bytes are common to both methods.

Note that the extended PCI Express calls are only available in the ACPI MCFG record is presented to the operating system by the system firmware. If this is not available the PcieSetConfigRegister call will have no effect.


Versions Defined in Include Link to
INtime 3.0 intime/rt/include/pcibus.h pcibus.h pcibus.lib
See Also