共用方式為


IDE_HW_INTERRUPT回呼函式 (irb.h)

IdeHwInterrupt 迷你埠驅動程式例程會處理從迷你埠驅動程式控制器連線到的主機總線適配卡 (HBA) 中斷。

附注 ATA 埠驅動程式和 ATA 迷你埠驅動程式模型未來可能會改變或無法使用。 相反地,我們建議使用 Storport 驅動程式Storport miniport 驅動程式模型。
 

語法

IDE_HW_INTERRUPT IdeHwInterrupt;

BOOLEAN IdeHwInterrupt(
  [in] PVOID ChannelExtension
)
{...}

參數

[in] ChannelExtension

通道延伸模組的指標。

傳回值

AtaHwInterrrupt 如果中斷是由其中一個控制器通道產生,則會傳回 true。 如果通道未產生中斷,例程應該儘快傳回 FALSE

言論

IdeHwInterrupt 例程會完成中斷驅動的 I/O 作業。

如果指定的通道未產生中斷,迷你埠驅動程序應該對 IdeHwInterrupt 例程進行第二次(遞歸)呼叫,以處理控制器其他通道所預期的中斷。

如果迷你埠驅動程式需要大量的時間來處理中斷,則必須遵循下列步驟:

  1. 關閉 HBA 上的中斷。
  2. 停用通道上的中斷,ChannelExtension 參數表示。
  3. 使用 AtaPortRequestWorkerRoutine來要求背景工作例程。
  4. 在背景工作例程中完成其他處理。
  5. 在通道上啟用中斷。
下列 ATA 連接埠例程不得從 IdeHwInterrupt 例程呼叫: 不過,迷你連接埠驅動程式可以要求背景工作例程,並在背景工作例程中呼叫 。

背景工作例程在傳回 TRUE 之前,必須先清除 HBA 上的中斷。

要求

要求 價值
目標平臺 桌面
標頭 irb.h (包括 Irb.h)

另請參閱

AtaPortCompleteAllActiveRequests

AtaPortDeviceBusy

AtaPortRequestWorkerRoutine