PCI_SLOT_NUMBER - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// miniport.h

typedef struct _PCI_SLOT_NUMBER {
  union {
    struct {
      ULONG DeviceNumber : 5;
      ULONG FunctionNumber : 3;
      ULONG Reserved : 24;
    } bits;
    ULONG AsULONG;
  } u;
} PCI_SLOT_NUMBER, *PPCI_SLOT_NUMBER;

View the official Windows Driver Kit DDI reference
// wdm.h

typedef struct _PCI_SLOT_NUMBER {
  union {
    struct {
      ULONG DeviceNumber : 5;
      ULONG FunctionNumber : 3;
      ULONG Reserved : 24;
    } bits;
    ULONG AsULONG;
  } u;
} PCI_SLOT_NUMBER, *PPCI_SLOT_NUMBER;

View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ns-miniport-_pci_slot_number)

_PCI_SLOT_NUMBER structure (miniport.h)

Description

The PCI_SLOT_NUMBER structure is obsolete. It defines the format of the Slot parameter to the obsolete HalXxxBusData routines when they are called with the BusDataType value PCIConfiguration.

Members

u

u.bits

Specifies the particular device on a multifunction adapter at the given slot that is being configured. The DeviceNumber indicates the logical slot number for the adapter; the FunctionNumber indicates the particular device on that adapter.

u.bits.DeviceNumber

u.bits.FunctionNumber

u.bits.Reserved

u.AsULONG

Specifies the logical slot number of the device being configured.

Remarks

Drivers of PCI devices can call HalGetBusData or HalGetBusDataByOffset more than once for the same slot number to get the configuration information for their device(s).

For example, a driver might search for devices it supports on all PCI buses in the machine first, and then call HalGetBusData(ByOffset) again to request more configuration information about devices of interest. Such a driver could code a loop that calls HalGetBusData(ByOffset) with an input Buffer of sufficient Length only to contain enough of the PCI_COMMON_CONFIG to determine the VendorID and DeviceID of each PCI device. After finding the Slot numbers for any promising PCI devices, the driver would call HalGetBusData or HalGetBusDataByOffset one or more times with additional buffer space to get the information needed to configure its devices.

See also

HalAssignSlotResources

HalGetBusData

HalGetBusDataByOffset

HalSetBusData

HalSetBusDataByOffset

PCI_COMMON_CONFIG


Windows Driver Kit DDI reference (ns-wdm-_pci_slot_number)

_PCI_SLOT_NUMBER structure (wdm.h)

Description

The PCI_SLOT_NUMBER structure is obsolete. It defines the format of the Slot parameter to the obsolete HalXxxBusData routines when they are called with the BusDataType value PCIConfiguration.

Members

u

u.bits

Specifies the particular device on a multifunction adapter at the given slot that is being configured. The DeviceNumber indicates the logical slot number for the adapter; the FunctionNumber indicates the particular device on that adapter.

u.bits.DeviceNumber

u.bits.FunctionNumber

u.bits.Reserved

u.AsULONG

Specifies the logical slot number of the device being configured.

Remarks

Drivers of PCI devices can call HalGetBusData or HalGetBusDataByOffset more than once for the same slot number to get the configuration information for their device(s).

For example, a driver might search for devices it supports on all PCI buses in the machine first, and then call HalGetBusData(ByOffset) again to request more configuration information about devices of interest. Such a driver could code a loop that calls HalGetBusData(ByOffset) with an input Buffer of sufficient Length only to contain enough of the PCI_COMMON_CONFIG to determine the VendorID and DeviceID of each PCI device. After finding the Slot numbers for any promising PCI devices, the driver would call HalGetBusData or HalGetBusDataByOffset one or more times with additional buffer space to get the information needed to configure its devices.

See also

HalAssignSlotResources

HalGetBusData

HalGetBusDataByOffset

HalSetBusData

HalSetBusDataByOffset

PCI_COMMON_CONFIG