Compartir a través de


EVT_WDF_DMA_TRANSACTION_CONFIGURE_DMA_CHANNEL función de devolución de llamada (wdfdmatransaction.h)

[Solo se aplica a KMDF]

La función de devolución de llamada de eventos EvtDmaTransactionConfigureDmaChannel de un controlador configura el adaptador DMA para un habilitador DMA en modo sistema.

Sintaxis

EVT_WDF_DMA_TRANSACTION_CONFIGURE_DMA_CHANNEL EvtWdfDmaTransactionConfigureDmaChannel;

BOOLEAN EvtWdfDmaTransactionConfigureDmaChannel(
  [in]           WDFDMATRANSACTION DmaTransaction,
  [in]           WDFDEVICE Device,
  [in]           PVOID Context,
  [in, optional] PMDL Mdl,
  [in]           size_t Offset,
  [in]           size_t Length
)
{...}

Parámetros

[in] DmaTransaction

Identificador de un objeto de transacción DMA que representa la transacción que se está ejecutando.

[in] Device

Identificador del objeto de dispositivo de marco que el controlador especificó cuando llamó a WdfDmaTransactionCreate.

[in] Context

Puntero de contexto que el controlador especificó en una llamada anterior a WdfDmaTransactionSetChannelConfigurationCallback.

[in, optional] Mdl

Puntero a una única lista de descriptores de memoria (MDL) o cadena MDL que describe el búfer asociado a la transferencia actual, o NULL si se ha completado la última transferencia y se libera el adaptador.

[in] Offset

Desplazamiento de bytes en el búfer especificado en el parámetro Mdl donde se inicia la transferencia actual.

[in] Length

Número de bytes que se transfieren en la transferencia actual.

Valor devuelto

La función de devolución de llamada EvtDmaTransactionConfigureDmaChannel devuelve TRUE si configura correctamente el canal DMA. Si esta función de devolución de llamada devuelve FALSE, el marco detiene la transacción y no llama a EvtProgramDma.

Comentarios

Los controladores registran una función de devolución de llamada de eventos EvtDmaTransactionConfigureDmaChannel llamando a WdfDmaTransactionSetChannelConfigurationCallback.

El marco llama a EvtDmaTransactionConfigureDmaChannel una vez para cada transferencia DMA del perfil del sistema en la transacción, después de asignar el canal del adaptador, pero antes de asignar la transferencia y llamar a EvtProgramDma.

El controlador puede usar la devolución de llamada EvtDmaTransactionConfigureDmaChannel para establecer cualquier programación personalizada para el adaptador DMA antes de asignar una transferencia.

Si el controlador experimenta un error al configurar el canal, puede detener la transferencia DMA llamando a WdfDmaTransactionDmaCompletedFinal y, si es necesario, completando la solicitud. A continuación, el controlador debe devolver FALSE de esta función de devolución de llamada.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 8
Plataforma de destino Universal
Versión mínima de KMDF 1.11
Encabezado wdfdmatransaction.h (incluya Wdf.h)
IRQL DISPATCH_LEVEL

Consulte también

WdfDmaTransactionDmaCompletedFinal

WdfDmaTransactionSetChannelConfigurationCallback