Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
IOMMU_PASID_DEVICE_CREATE toma un token de IOMMU_DMA_DEVICE y genera un nuevo sub device PASID que representa el ASID recién asignado.
Sintaxis
IOMMU_PASID_DEVICE_CREATE IommuPasidDeviceCreate;
NTSTATUS IommuPasidDeviceCreate(
PIOMMU_DMA_DEVICE DmaDevice,
PIOMMU_DMA_PASID_DEVICE *PasidDeviceOut,
PULONG AsidOut
)
{...}
Parámetros
DmaDevice
[in] Puntero al token de IOMMU_DMA_DEVICE desde el que se generan los subelementos.
[in] Puntero al token de IOMMU_DMA_DEVICE desde el que se generan los subelementos.
PasidDeviceOut
[out] Puntero a una estructura de IOMMU_DMA_PASID_DEVICE opaca que representa el subproceso IOMMU DMA PASID recién creado.
AsidOut
[out] Puntero para contener el PASID asignado por el sistema.
Valor devuelto
IOMMU_PASID_DEVICE_CREATE devuelve un valor NTSTATUS. Los valores posibles son:
| Código de retorno | Descripción |
|---|---|
| STATUS_SUCCESS | El subconsulta se creó correctamente. PasidDeviceOut devuelve un puntero válido. |
| STATUS_INVALID_PARAMETER_1 | El token de dispositivo proporcionado no está configurado para los DMA o PASID etiquetados con PASID no se admiten. |
| STATUS_INSUFFICIENT_RESOURCES | Memoria insuficiente para asignar una estructura de IOMMU_DMA_PASID_DEVICE. |
| STATUS_NONE_MAPPED | No se pudo asignar un ASID. |
Requisitos
| Requisito | Importancia |
|---|---|
| encabezado | wdm.h |
| irQL | PASSIVE_LEVEL |