IDE_HW_INTERRUPT回调函数 (irb.h)
IdeHwInterrupt 微型端口驱动程序例程处理从主机总线适配器(HBA)连接到的微型端口驱动程序的控制器中断。
注意 ATA 端口驱动程序和 ATA 微型端口驱动程序模型将来可能会更改或不可用。 相反,我们建议使用 Storport 驱动程序,Storport 微型端口 驱动程序模型。
语法
IDE_HW_INTERRUPT IdeHwInterrupt;
BOOLEAN IdeHwInterrupt(
[in] PVOID ChannelExtension
)
{...}
参数
[in] ChannelExtension
指向通道扩展的指针。
返回值
AtaHwInterrrupt 如果某个控制器的通道生成中断,TRUE 返回。 如果通道未生成中断,则例程应尽快返回 FALSE。
言论
IdeHwInterrupt 例程完成中断驱动的 I/O作。
如果指示的通道未生成中断,微型端口驱动程序应对 IdeHwInterrupt 例程进行第二次(递归)调用,以处理适用于控制器的其他通道的中断。
如果微型端口驱动程序需要大量的时间来处理中断,则必须执行以下步骤:
- 消除 HBA 上的中断。
- 禁用 ChannelExtension 参数指示的通道上的中断。
- 使用 AtaPortRequestWorkerRoutine请求辅助角色例程。
- 完成辅助角色例程中的其他处理。
- 在通道上启用中断。
在返回 TRUE 之前,辅助角色例程必须清除 HBA 上的中断。
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | irb.h (包括 Irb.h) |