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 要求背景工作例程。
- 在背景工作例程中完成其他處理。
- 啟用通道上的中斷。
背景工作例程必須清除 HBA 上的中斷,才能傳回 TRUE。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | irb.h (包含 Irb.h) |