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;

Members

Size

Dimensione, in byte, della struttura. Il metodo SerCx2CustomTransmitCreate usa questo membro per determinare la versione della struttura utilizzata dal 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 FILE_XXX_ALIGNMENT 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 i/O programmati per la transazione.

MaximumTransactionLength

Lunghezza massima, in byte, di un trasferimento di dati in una transazione di trasmissione personalizzata. Se le dimensioni del buffer nella richiesta di scrittura sono maggiori 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 deve essere utilizzata l'unità di trasferimento minima predefinita, 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 Exclusive è TRUE, i membri MinimumTransferUnit, Alignment e MinimumTransactionLength devono essere zero.

Commenti

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.

Requisiti

Requisito Valore
Client minimo supportato Supportato a partire da Windows 8.1.
Intestazione sercx.h

Vedi anche

DMA_ADAPTER_INFO_V1

IRP_MJ_WRITE

SERCX2_CUSTOM_TRANSMIT_CONFIG_INIT

SerCx2CustomTransmitCreate