IOMMU_DEVICE_CREATE回呼函式 (wdm.h)
取得實體裝置物件,並建立不透明的令牌,代表可與IOMMU介面 API 搭配使用的 IOMMU_DMA_DEVICE。
語法
IOMMU_DEVICE_CREATE IommuDeviceCreate;
NTSTATUS IommuDeviceCreate(
PDEVICE_OBJECT DeviceObject,
PIOMMU_DEVICE_CREATION_CONFIGURATION DeviceConfig,
PIOMMU_DMA_DEVICE *DmaDeviceOut
)
{...}
參數
DeviceObject
[in]所建立 IOMMU_DMA_DEVICE 所建立之裝置實體裝置物件的指標。
DeviceConfig
[在中,選擇性]視系統而定,裝置建立可能需要之組態清單的選擇性指標。 目前,ARM64 上的 ACPI 裝置需要此專案。
DmaDeviceOut
[out]代表所建立 IOMMU_DMA_DEVICE之不透明令牌的指標。
傳回值
如果作業成功,STATUS_SUCCESS。 可能的錯誤傳回值包括下列狀態代碼。
傳回碼 | 描述 |
---|---|
|
提供的 PDO 代表不在 IOMMU 後方的裝置。 |
|
提供的輸入不符合系統支援。 |
|
例程無法配置 **IOMMU_DMA_DEVICE** 結構所需的資源。 |
|
基礎 IOMMU 介面未針對 『GetDeviceId』 函式正確實作。 |
|
提供的 PDO 代表不在 IOMMU 後方的裝置。
如果裝置在 IOMMU 後方找不到,則它應該已經有直接的實體記憶體存取權,而且平臺不符合 DMA Guard 規範。 |
如需詳細資訊,請參閱 NTSTATUS 值。
言論
ARM64 系統上的 ACPI 裝置必須透過 DeviceConfig
參數提供輸入對應。 ARM64 系統上的所有其他裝置類型,以及非 ARM64 系統上的任何裝置,都應該 NOT 提供任何裝置設定;否則,呼叫會在 STATUS_INVALID_PARAMETER_2失敗。
要求
要求 | 價值 |
---|---|
支援的最低伺服器 | Windows Server 2022 |
標頭 | wdm.h (包括 Wdm.h) |