DMA_SUSPEND_HANDLER función de devolución de llamada (netdma.h)

Nota No se admite la interfaz NetDMA

en Windows 8 y versiones posteriores.

 
La función ProviderSuspendDma suspende las transferencias DMA que están actualmente en curso en un canal DMA.

Sintaxis

DMA_SUSPEND_HANDLER DmaSuspendHandler;

NTSTATUS DmaSuspendHandler(
  [in]  PVOID ProviderChannelContext,
  [out] PPHYSICAL_ADDRESS *pLastDescriptor
)
{...}

Parámetros

[in] ProviderChannelContext

Puntero que identifica el área de contexto de un canal DMA. El proveedor DMA devolvió este identificador a NetDMA en la ubicación especificada en el parámetro pProviderChannelContext del . Función ProviderAllocateDmaChannel .

[out] pLastDescriptor

Puntero a una variable que contiene la dirección física del último descriptor DMA procesado correctamente. El proveedor DMA proporciona esta dirección antes de volver de ProviderSuspendDma.

Valor devuelto

ProviderSuspendDma devuelve uno de los siguientes valores de estado:

Código devuelto Descripción
STATUS_SUCCESS
La operación se ha completado correctamente.
STATUS_UNSUCCESSFUL
Error en la operación por motivos no especificados.

Comentarios

La función ProviderSuspendDma es una función opcional para los proveedores netDMA. La interfaz NetDMA puede llamar a la función ProviderSuspendDma , si existe, para suspender temporalmente cualquier transferencia de DMA que esté en curso en un canal DMA.

El proveedor DMA completa la transferencia del descriptor DMA actual antes de que devuelva de ProviderSuspendDma. Si se habilita la notificación de estado de finalización, el motor DMA escribe el estado NetDmaTransferStatusSuspend en la dirección especificada en los miembros CompletionVirtualAddress y CompletionPhysicalAddress en la dirección especificada en los miembros CompletionVirtualAddress NET_DMA_CHANNEL_PARAMETERS estructura.

Mientras se suspenden las transferencias DMA, la interfaz NetDMA puede modificar la lista vinculada del descriptor DMA (por ejemplo, para insertar o eliminar descriptores).

La interfaz NetDMA llama a la función ProviderResumeDma para reanudar las operaciones DMA suspendidas mediante una llamada a ProviderSuspendDma.

NetDMA llama a ProviderSuspendDma en IRQL <= DISPATCH_LEVEL.

Requisitos

Requisito Value
Cliente mínimo compatible Compatible con controladores netDMA 1.0 en Windows Vista.
Plataforma de destino Windows
Encabezado netdma.h (incluir Netdma.h)
IRQL <= DISPATCH_LEVEL

Consulte también

NET_DMA_CHANNEL_PARAMETERS

ProviderAllocateDmaChannel

ProviderResumeDma