Condividi tramite


IOMMU_PASID_DEVICE_CREATE funzione di callback (wdm.h)

IOMMU_PASID_DEVICE_CREATE accetta un token IOMMU_DMA_DEVICE e genera un nuovo sotto-dispositivo PASID che rappresenta l'ASID appena assegnato.

Sintassi

IOMMU_PASID_DEVICE_CREATE IommuPasidDeviceCreate;

NTSTATUS IommuPasidDeviceCreate(
  PIOMMU_DMA_DEVICE DmaDevice,
  PIOMMU_DMA_PASID_DEVICE *PasidDeviceOut,
  PULONG AsidOut
)
{...}

Parametri

DmaDevice

[in] Puntatore al token IOMMU_DMA_DEVICE da cui vengono generati i sotto-dispositivi.

[in] Puntatore al token IOMMU_DMA_DEVICE da cui vengono generati i sotto-dispositivi.

PasidDeviceOut

[out] Puntatore a una struttura IOMMU_DMA_PASID_DEVICE opaca che rappresenta il sotto-dispositivo PASID IOMMU DMA appena creato.

AsidOut

[out] Puntatore per contenere il PASID assegnato dal sistema.

Valore restituito

IOMMU_PASID_DEVICE_CREATE restituisce un valore NTSTATUS. I valori possibili includono:

Codice restituito Descrizione
STATUS_SUCCESS Il sotto-dispositivo è stato creato correttamente. PasidDeviceOut restituisce un puntatore valido.
STATUS_INVALID_PARAMETER_1 Il token del dispositivo fornito non è configurato per DMA o PASIDs con tag PASID non sono supportati.
STATUS_INSUFFICIENT_RESOURCES Memoria insufficiente per allocare una struttura IOMMU_DMA_PASID_DEVICE.
STATUS_NONE_MAPPED Impossibile allocare un ASID.

Requisiti

Requisito Valore
Intestazione wdm.h
IRQL LIVELLO PASSIVO

Vedere anche

IOMMU_PASID_DEVICE_DELETE

IOMMU_DOMAIN_ATTACH_PASID_DEVICE

IOMMU_DOMAIN_DETACH_PASID_DEVICE