miniport.h) (CM_EISA_SLOT_INFORMATION 结构
CM_EISA_SLOT_INFORMATION 结构定义 HalGetBusData 为输入 BusDataType = EisaConfiguration 返回的 EISA 配置标头信息,或输入 BusDataTypeEisaConfiguration 且 Offset = 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 成员相同。 可以读取此成员,以确定调用方是否应再次调用 HalGetBusData 或 HalGetBusDataByOffset ,并具有足够的缓冲区空间来获取它所支持设备的更详细的 CM_EISA_FUNCTION_INFORMATION 。
注解
HalGetBusData 或 HalGetBusDataByOffset 在 CM_EISA_SLOT_INFORMATION 以及紧随其后的CM_EISA_FUNCTION_INFORMATION返回的信息是只读的。
EISA 设备的驱动程序可能会为系统中每个 EISA 总线上的每个槽调用 HalGetBusData 或 HalGetBusDataByOffset ,并仅请求 CM_EISA_SLOT_INFORMATION ,以便通过检查返回的 CompressedId 值来查找设备 (支持) 。 然后,此类驱动程序可以分配足够的缓冲区空间,以再次调用 HalGetBusData (ByOffset) , 以便在可以找到其设备 () 的 槽CM_EISA_SLOT_INFORMATION和 CM_EISA_FUNCTION_INFORMATION。
要求
要求 | 值 |
---|---|
Header | miniport.h (包括 Wdm.h、Ntddk.h、Ntifs.h、Miniport.h) |