Función WdfDmaTransactionInitializeUsingOffset (wdfdmatransaction.h)
[Solo se aplica a KMDF]
El método WdfDmaTransactionInitializeUsingOffset inicializa una transacción DMA especificada mediante un desplazamiento de bytes en una cadena MDL.
Sintaxis
NTSTATUS WdfDmaTransactionInitializeUsingOffset(
[in] WDFDMATRANSACTION DmaTransaction,
[in] PFN_WDF_PROGRAM_DMA EvtProgramDmaFunction,
[in] WDF_DMA_DIRECTION DmaDirection,
[in] PMDL Mdl,
[in] size_t Offset,
[in] size_t Length
);
Parámetros
[in] DmaTransaction
Identificador de un objeto de transacción DMA que el controlador obtuvo de una llamada anterior a WdfDmaTransactionCreate.
[in] EvtProgramDmaFunction
Puntero a la función de devolución de llamada de eventos EvtProgramDma del controlador.
[in] DmaDirection
Valor con tipo WDF_DMA_DIRECTION.
[in] Mdl
Puntero a una lista de descriptores de memoria (MDL) que describe el búfer que se usará para la transacción DMA. Vea más información en Comentarios.
[in] Offset
Desplazamiento de bytes en la cadena MDL para la transacción actual.
[in] Length
Número de bytes que se van a transferir. Este valor debe ser mayor que cero.
Valor devuelto
WdfDmaTransactionInitializeUsingOffset devuelve STATUS_SUCCESS si la operación se realiza correctamente. De lo contrario, el método podría devolver uno de los valores descritos en la sección Valores devueltos de WdfDmaTransactionInitialize.
Este método también podría devolver otros valores NTSTATUS.
Se produce una comprobación de errores si el controlador proporciona un identificador de objeto no válido.
Comentarios
WdfDmaTransactionInitializeUsingOffset equivale a WdfDmaTransactionInitialize , salvo que toma un desplazamiento en el búfer descrito por la cadena MDL en lugar de una dirección virtual.
El controlador puede especificar una cadena MDL en el parámetro Mdl de este método. Una cadena MDL es una secuencia de estructuras MDL que el controlador encadenó mediante el miembro Next de la estructura MDL.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.11 |
Encabezado | wdfdmatransaction.h (incluya Wdf.h) |
Library | Wdf01000.sys (consulte Control de versiones de la biblioteca de marcos). |
IRQL | <=DISPATCH_LEVEL |
Reglas de cumplimiento de DDI | DriverCreate(kmdf) |