WUDF_INTERRUPT_CONFIG 結構 (wudfinterrupt.h)

[警告: UMDF 2 是最新版的 UMDF,並取代 UMDF 1。 所有新的 UMDF 驅動程式都應該使用 UMDF 2 來撰寫。 未將新功能新增至 UMDF 1,且較新版本的 #DB49668CFD72E471DA8ED93ED1F61A08A 上不支援 UMDF 1。 通用 Windows 驅動程式必須使用 UMDF 2。 如需詳細資訊,請參閱使用 UMDF 使用者入門。]

WUDF_INTERRUPT_CONFIG 結構包含裝置中斷的組態資訊。

語法

typedef struct _WUDF_INTERRUPT_CONFIG {
  ULONG                           Size;
  WDF_TRI_STATE                   ShareVector;
  BOOLEAN                         AutomaticSerialization;
  PFN_WUDF_INTERRUPT_ISR          OnInterruptIsr;
  PFN_WUDF_INTERRUPT_ENABLE       OnInterruptEnable;
  PFN_WUDF_INTERRUPT_DISABLE      OnInterruptDisable;
  PFN_WUDF_INTERRUPT_WORKITEM     OnInterruptWorkItem;
  PCM_PARTIAL_RESOURCE_DESCRIPTOR InterruptRaw;
  PCM_PARTIAL_RESOURCE_DESCRIPTOR InterruptTranslated;
} WUDF_INTERRUPT_CONFIG, *PWUDF_INTERRUPT_CONFIG;

成員

Size

這個結構的大小,以位元組為單位。

ShareVector

WDF_TRI_STATE型別值。 如果此值為 WdfTrue,則可以共用中斷向量。 如果值為 WdfFalse,則無法共享中斷向量。 如果值為 WdfDefault 且中斷為層級觸發,則 隨插即用 管理員會使用總線驅動程式的值。 如果值為 WdfDefault 且中斷不是層級觸發,則無法共享中斷向量。

AutomaticSerialization

布爾值,如果為 TRUE,表示架構會同步處理中斷物件的 OnInterruptWorkItem 回呼函式的執行,以及使用架構回 呼同步 處理功能的其他回呼函式。 如需詳細資訊,請參閱「備註」。

OnInterruptIsr

驅動程式 OnInterruptIsr 回呼函式或 NULL 的指標。

OnInterruptEnable

驅動程式 OnInterruptEnable 回呼函式或 NULL 的指標。

OnInterruptDisable

驅動程式 OnInterruptDisable 回呼函式或 NULL 的指標。

OnInterruptWorkItem

驅動程式 OnInterruptWorkItem 回呼 函式或 NULL 的指標。

InterruptRaw

CM_PARTIAL_RESOURCE_DESCRIPTOR 結構的指標,描述系統指派給中斷的原始資源。 只有在 在 OnPrepareHardware 回呼中建立中斷時,才會使用此成員。

InterruptTranslated

CM_PARTIAL_RESOURCE_DESCRIPTOR 結構的指標,描述系統指派給中斷的已轉譯資源。 只有在 在 OnPrepareHardware 回呼中建立中斷時,才會使用此成員。

備註

WUDF_INTERRUPT_CONFIG 結構是用來做為 IWDFDevice3::CreateInterrupt 的輸入。

若要初始化 WUDF_INTERRUPT_CONFIG 結構,您的驅動程式應該先呼叫 WUDF_INTERRUPT_CONFIG_INIT ,然後填入 WUDF_INTERRUPT_CONFIG_INIT 未初始化的結構成員。

AutomaticSerialization 設定為 TRUE 之前,驅動程式必須先呼叫 IWDFDeviceInitialize::SetLockingConstraint ,並將 LockType 參數設定為 WdfDeviceLevel

您的驅動程式應該包含 Wudfwdm.h,其中包含CM_PARTIAL_RESOURCE_DESCRIPTOR的定義。

UMDF 支援所有架構支援的操作系統上 (MSI) 的邊緣觸發、行型中斷和訊息訊號中斷。 由於這些類型的中斷資源並未共用,因此使用這些資源的驅動程序應該將此結構的 ShareVector 成員設定為 WdfFalse 或 WdfUseDefault。 如果驅動程式指定無效的 ShareVector 值,驅動程式將無法啟動。

規格需求

需求
最低UMDF版本 1.11
標頭 wudfinterrupt.h

另請參閱

IWDFDevice3::CreateInterrupt

IWDFDeviceInitialize::SetLockingConstraint

WUDF_INTERRUPT_CONFIG_INIT