Condividi tramite


struttura SERCX2_CUSTOM_TRANSMIT_CONFIG (sercx.h)

La struttura SERCX2_CUSTOM_TRANSMIT_CONFIG contiene informazioni usate dalla versione 2 dell'estensione del framework seriale (SerCx2) per configurare un nuovo oggetto di trasmissione personalizzato.

Sintassi

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;

Membri

Size

Dimensione, in byte, di questa struttura. Il metodo SerCx2CustomTransmitCreate utilizza questo membro per determinare quale versione della struttura sta utilizzando il chiamante. Le dimensioni di questa struttura potrebbero cambiare nelle versioni future del file di intestazione Sercx.h.

Alignment

Requisito di allineamento dei dati. Specifica il modo in cui l'indirizzo iniziale di un trasferimento in una transazione di trasmissione personalizzata deve essere allineato in memoria. Impostare questo membro sulla costante_ALIGNMENT FILE_XXX appropriata nel file di intestazione Wdm.h. Ad esempio, FILE_WORD_ALIGNMENT indica che l'indirizzo iniziale deve essere allineato al limite a due byte in memoria, FILE_LONG_ALIGNMENT indica che l'indirizzo deve essere allineato a un limite a quattro byte e così via.

MinimumTransactionLength

Lunghezza minima, in byte, di un trasferimento di dati in una transazione di trasmissione personalizzata. Se la lunghezza del buffer in una richiesta di scrittura (IRP_MJ_WRITE) è inferiore a questa lunghezza minima, SerCx2 usa le operazioni di I/O programmate per la transazione.

MaximumTransactionLength

Lunghezza massima, in byte, di un trasferimento di dati in una transazione di trasmissione personalizzata. Se la dimensione del buffer nella richiesta di scrittura è maggiore di questa lunghezza massima, SerCx2 usa più transazioni di trasmissione personalizzate per gestire la richiesta e limita ogni transazione alla lunghezza massima.

MinimumTransferUnit

Unità di trasferimento minima. Il numero di byte da trasferire in una transazione di trasmissione personalizzata deve essere un multiplo intero dell'unità di trasferimento minima. Per indicare che l'unità di trasferimento minima predefinita deve essere usata, impostare questo membro su zero. Per altre informazioni sull'unità di trasferimento minima predefinita, vedere DMA_ADAPTER_INFO_V1.

Exclusive

Indica se usare transazioni di trasmissione personalizzate esclusivamente per gestire le richieste di scrittura (IRP_MJ_WRITE). Impostare su TRUE per indicare che le richieste di scrittura devono usare esclusivamente transazioni di trasmissione personalizzate. Impostare su false per indicare che le richieste di scrittura possono usare una combinazione di transazioni di trasmissione personalizzate e transazioni di trasmissione PIO.

Impostare questo membro su TRUE solo se l'unità di trasferimento minima per le transazioni di trasmissione personalizzata è di un byte, la lunghezza minima della transazione è di un byte e il buffer di scrittura per la transazione può iniziare su qualsiasi limite di byte in memoria.

Se esclusivo è TRUE, i membri MinimumTransferUnit, Alignmente MinimumTransactionLength devono essere pari a zero.

Osservazioni

Il metodo SerCx2CustomTransmitCreate accetta un puntatore a una struttura SERCX2_CUSTOM_TRANSMIT_CONFIG come parametro di input. Prima di chiamare SerCx2CustomTransmitCreate, chiamare la funzione SERCX2_CUSTOM_TRANSMIT_CONFIG_INIT per inizializzare questa struttura.

Fabbisogno

Requisito Valore
client minimo supportato Supportato a partire da Windows 8.1.
intestazione sercx.h

Vedere anche

DMA_ADAPTER_INFO_V1

IRP_MJ_WRITE

SERCX2_CUSTOM_TRANSMIT_CONFIG_INIT

SerCx2CustomTransmitCreare