структура PCI_SLOT_NUMBER (miniport.h)
Структура PCI_SLOT_NUMBERустаревшей. Он определяет формат параметра слота устаревшим HalXxxBusData при вызове со значением BusDataTypePCIConfiguration.
Синтаксис
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;
Члены
u
u.bits
Указывает конкретное устройство на мультифункционном адаптере в заданном слоте, который настраивается. DeviceNumber указывает номер логического слота для адаптера; FunctionNumber указывает конкретное устройство на этом адаптере.
u.bits.DeviceNumber
u.bits.FunctionNumber
u.bits.Reserved
u.AsULONG
Указывает логический номер слота настраиваемого устройства.
Замечания
Драйверы устройств PCI могут вызывать HalGetBusData или HalGetBusDataByOffset более одного и того же номера слота, чтобы получить сведения о конфигурации для своих устройств.
Например, водитель может искать устройства, которые он поддерживает во всех автобусах PCI на компьютере, а затем снова вызвать HalGetBusData(ByOffset)
, чтобы запросить дополнительные сведения о конфигурации устройств, интересующих вас. Такой драйвер может закодировать цикл, вызывающий HalGetBusData(ByOffset)
с входным Buffer
достаточного Length
только для того чтобы содержать достаточно PCI_COMMON_CONFIG, чтобы определить VendorID
и DeviceID
каждого устройства PCI. После поиска номеров Slot
для любых перспективных устройств PCI драйвер вызовет HalGetBusData или HalGetBusDataByOffset один или несколько раз с дополнительным буферным пространством, чтобы получить сведения, необходимые для настройки своих устройств.
Требования
Требование | Ценность |
---|---|
заголовка | miniport.h (включая Wdm.h, Ntddk.h, Ntifs.h, Miniport.h) |