PORT_CONFIGURATION_INFORMATION 结构 (strmini.h)
PORT_CONFIGURATION_INFORMATION介绍了流式处理微型驱动程序设备的硬件设置。 类驱动程序使用操作系统提供的信息填充大多数成员。
语法
typedef struct _PORT_CONFIGURATION_INFORMATION {
ULONG SizeOfThisPacket;
PVOID HwDeviceExtension;
PDEVICE_OBJECT ClassDeviceObject;
PDEVICE_OBJECT PhysicalDeviceObject;
ULONG SystemIoBusNumber;
INTERFACE_TYPE AdapterInterfaceType;
ULONG BusInterruptLevel;
ULONG BusInterruptVector;
KINTERRUPT_MODE InterruptMode;
ULONG DmaChannel;
ULONG NumberOfAccessRanges;
PACCESS_RANGE AccessRanges;
ULONG StreamDescriptorSize;
PIRP Irp;
PKINTERRUPT InterruptObject;
PADAPTER_OBJECT DmaAdapterObject;
PDEVICE_OBJECT RealPhysicalDeviceObject;
ULONG Reserved[1];
} PORT_CONFIGURATION_INFORMATION, *PPORT_CONFIGURATION_INFORMATION;
成员
SizeOfThisPacket
此结构的大小(以字节为单位)。 类驱动程序将填充此成员。
HwDeviceExtension
指向微型驱动程序的设备扩展的指针。 微型驱动程序可以使用此缓冲区向微型驱动程序记录全局私人信息。 微型驱动程序在通过 StreamClassRegisterMinidriver 自行注册时,在它传递的HW_INITIALIZATION_DATA结构中设置此缓冲区的大小。 类驱动程序还会将指针传递到HW_STREAM_OBJECT的 HwDeviceExtension 成员中的此缓冲区,HW_STREAM_REQUEST_BLOCK,并将HW_TIME_CONTEXT结构传递给微型驱动程序。
ClassDeviceObject
指向类驱动程序提供的功能设备对象 (驱动程序的 FDO) 。
PhysicalDeviceObject
当类驱动程序附加到驱动程序堆栈时,指向驱动程序堆栈顶部的驱动程序的设备对象。 驱动程序在调用 IoCallDriver 时使用此成员来与驱动程序堆栈通信。 RealPhysicalDeviceObject 成员指向驱动程序设备的实际 PDO。
SystemIoBusNumber
类驱动程序使用设备的系统总线 ID 号填充此成员。 总线 0 是主系统总线。
AdapterInterfaceType
指定设备连接到的系统总线的类型。 可能的值包括 Isa、 Eisa、 MicroChannel、 PCIBus 和 PCMCIABus。
BusInterruptLevel
类驱动程序使用 IRQL 填充此成员,以便在此总线上中断。
BusInterruptVector
类驱动程序使用设备使用的中断向量填充此成员。
InterruptMode
类驱动程序在此成员中填充中断模式(闩锁模式或 LevelSensitive)。
DmaChannel
如果设备连接到 ISA 总线,则类驱动程序会用设备的 DMA 通道填充此成员。
NumberOfAccessRanges
AccessRanges 数组中的条目数。
AccessRanges
AccessRanges 数组中的条目数。
StreamDescriptorSize
微型驱动程序使用其 HW_STREAM_DESCRIPTOR 结构的大小填充此成员。
Irp
指向 PnP 设备的指针启动触发此SRB_INITIALIZE_DEVICE请求的 IRP。
InterruptObject
如果设备使用中断,则类驱动程序将使用指向关联 Interrupt 对象的指针填充此成员。
DmaAdapterObject
如果设备使用 DMA,则类驱动程序将使用指向关联的 DmaAdapter 对象的指针填充此成员。
RealPhysicalDeviceObject
指向驱动程序设备的 PDO 的指针。
Reserved[1]
预留给系统使用。 请勿使用。
注解
PORT_CONFIGURATION_INFORMATION的大多数成员向微型驱动程序提供有关其硬件资源使用情况的信息,例如其中断向量和用于中断的 IRQL。
要求
要求 | 值 |
---|---|
Header | strmini.h (包括 Strmini.h) |