Compartir a través de


estructura SERCX2_CUSTOM_TRANSMIT_CONFIG (sercx.h)

La estructura SERCX2_CUSTOM_TRANSMIT_CONFIG contiene información que usa la versión 2 de la extensión de marco serie (SerCx2) para configurar un nuevo objeto de transmisión personalizada.

Sintaxis

typedef struct _SERCX2_CUSTOM_TRANSMIT_CONFIG {
  ULONG   Size;
  ULONG   Alignment;
  ULONG   MinimumTransactionLength;
  ULONG   MaximumTransactionLength;
  ULONG   MinimumTransferUnit;
  BOOLEAN Exclusive;
} SERCX2_CUSTOM_TRANSMIT_CONFIG, *PSERCX2_CUSTOM_TRANSMIT_CONFIG;

Miembros

Size

Tamaño, en bytes, de esta estructura. El método SerCx2CustomTransmitCreate usa este miembro para determinar qué versión de la estructura usa el autor de la llamada. El tamaño de esta estructura puede cambiar en versiones futuras del archivo de encabezado Sercx.h.

Alignment

Requisito de alineación de datos. Especifica cómo se debe alinear la dirección inicial de una transferencia en una transacción de transmisión personalizada en la memoria. Establezca este miembro en la constante_ALIGNMENT XXX FILE_adecuada en el archivo de encabezado Wdm.h. Por ejemplo, FILE_WORD_ALIGNMENT indica que la dirección inicial debe alinearse con el límite de dos bytes en la memoria, FILE_LONG_ALIGNMENT indica que la dirección debe alinearse con un límite de cuatro bytes, etc.

MinimumTransactionLength

Longitud mínima, en bytes, de una transferencia de datos en una transacción de transmisión personalizada. Si la longitud del búfer en una solicitud de escritura (IRP_MJ_WRITE) es inferior a esta longitud mínima, SerCx2 usa E/S programada (PIO) para la transacción.

MaximumTransactionLength

Longitud máxima, en bytes, de una transferencia de datos en una transacción de transmisión personalizada. Si el tamaño del búfer de la solicitud de escritura es mayor que esta longitud máxima, SerCx2 usa varias transacciones de transmisión personalizadas para controlar la solicitud y limita cada transacción a la longitud máxima.

MinimumTransferUnit

Unidad de transferencia mínima. El número de bytes que se van a transferir en una transacción de transmisión personalizada debe ser un entero múltiplo de la unidad de transferencia mínima. Para indicar que se debe usar la unidad de transferencia mínima predeterminada, establezca este miembro en cero. Para obtener más información sobre la unidad de transferencia mínima predeterminada, consulte DMA_ADAPTER_INFO_V1.

Exclusive

Si se usan transacciones de transmisión personalizadas exclusivamente para controlar las solicitudes de escritura (IRP_MJ_WRITE). Establézcalo en TRUE para indicar que las solicitudes de escritura deben usar transacciones de transmisión personalizada exclusivamente. Establézcalo en FALSE para indicar que las solicitudes de escritura pueden usar una combinación de transacciones de transmisión personalizadas y transacciones pio-transmit.

Establezca este miembro en TRUE solo si la unidad de transferencia mínima para transacciones de transmisión personalizada es de un byte, la longitud mínima de la transacción es de un byte y el búfer de escritura para la transacción puede iniciarse en cualquier límite de bytes en la memoria.

Si exclusivo es TRUE, los miembros MinimumTransferUnit, Alignmenty MinimumTransactionLength deben ser cero.

Observaciones

El método SerCx2CustomTransmitCreate acepta un puntero a una estructura SERCX2_CUSTOM_TRANSMIT_CONFIG como parámetro de entrada. Antes de llamar a SerCx2CustomTransmitCreate, llame a la función SERCX2_CUSTOM_TRANSMIT_CONFIG_INIT para inicializar esta estructura.

Requisitos

Requisito Valor
cliente mínimo admitido Se admite a partir de Windows 8.1.
encabezado de sercx.h

Consulte también

DMA_ADAPTER_INFO_V1

IRP_MJ_WRITE

SERCX2_CUSTOM_TRANSMIT_CONFIG_INIT

SerCx2CustomTransmitCreate