wdm.h) (CM_EISA_SLOT_INFORMATION 结构

CM_EISA_SLOT_INFORMATION 结构定义 HalGetBusData 为输入 BusDataType = EisaConfiguration 返回的 EISA 配置标头信息,或输入 BusDataTypeEisaConfigurationOffset = 0 返回的 HalGetBusDataByOffset = 返回的 EISA 配置标头信息,前提是调用方分配的缓冲区长度足够。

语法

typedef struct _CM_EISA_SLOT_INFORMATION {
  UCHAR  ReturnCode;
  UCHAR  ReturnFlags;
  UCHAR  MajorRevision;
  UCHAR  MinorRevision;
  USHORT Checksum;
  UCHAR  NumberFunctions;
  UCHAR  FunctionInformation;
  ULONG  CompressedId;
} CM_EISA_SLOT_INFORMATION, *PCM_EISA_SLOT_INFORMATION;

成员

ReturnCode

如果查询 EISA BIOS 时发生错误,则包含状态代码。 可能的状态代码包括:

  • EISA_INVALID_SLOT
  • EISA_INVALID_FUNCTION
  • EISA_INVALID_CONFIGURATION
  • EISA_EMPTY_SLOT
  • EISA_INVALID_BIOS_CALL

ReturnFlags

返回标志。

MajorRevision

制造商提供的信息。

MinorRevision

制造商提供的信息。

Checksum

校验和值,允许验证配置数据。

NumberFunctions

此槽上的数字。

FunctionInformation

此槽是否有可用的 CM_EISA_FUNCTION_INFORMATION

CompressedId

此槽上的设备的 EISA 压缩标识。 此值与 CM_EISA_FUNCTION_INFORMATION 结构的 CompressedId 成员相同。 可以读取此成员,以确定调用方是否应再次调用 HalGetBusDataHalGetBusDataByOffset ,并具有足够的缓冲区空间来获取它所支持设备的更详细的 CM_EISA_FUNCTION_INFORMATION

注解

HalGetBusDataHalGetBusDataByOffsetCM_EISA_SLOT_INFORMATION 以及紧随其后的CM_EISA_FUNCTION_INFORMATION返回的信息是只读的。

EISA 设备的驱动程序可能会为系统中每个 EISA 总线上的每个槽调用 HalGetBusDataHalGetBusDataByOffset ,并仅请求 CM_EISA_SLOT_INFORMATION ,以便通过检查返回的 CompressedId 值来查找设备 (支持) 。 然后,此类驱动程序可以分配足够的缓冲区空间,以再次调用 HalGetBusData (ByOffset) 以便在可以找到其设备 () 的 槽CM_EISA_SLOT_INFORMATION和 CM_EISA_FUNCTION_INFORMATION。

要求

要求
Header wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h、Miniport.h)

另请参阅

CM_EISA_FUNCTION_INFORMATION

HalGetBusData

HalGetBusDataByOffset