INFO: HalSetBusData Does Not Allow Programming PCI Bridge Device

ID: Q197529


The information in this article applies to:
  • Microsoft Win32 Device Driver Kit (DDK) for Windows NT


SUMMARY

A call to HalSetBusData or HalSetBusDataByOffset fails if the target device is a PCI bridge device and the data to be written is within the PCI common configuration space header. This behavior is by-design, because these functions are used only for programming nonbridge devices.

The Windows NT DDK documentation will be updated to include this information.


MORE INFORMATION

HalSetBusData and HalSetBusDataByOffset can only be used to program PCI devices with a type 0x00 configuration space header. The Header Type register (bits 6 through 0) in the PCI configuration space identifies the device type.

Currently, the following header types are defined:


   0x00  PCI device type
   0x01  PCI bridge type
   0x02  PCI cardbus bridge type 

Bit 7 of the HeaderType register indicates whether the device is a multifunction device (bit is 1) or a single function device (bit is 0).


REFERENCES

Refer to the Windows NT DDK for information about the HalSetBusData and HalSetBusDataByOffset functions. Refer to the PCI Local Bus Specification for information about PCI.

Additional query words: card bus

Keywords : kbDDK kbKMode kbNTOS400
Version : winnt:
Platform : winnt
Issue type : kbinfo


Last Reviewed: March 18, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.