Partager via


structure SERCX2_CUSTOM_RECEIVE_CONFIG (sercx.h)

La structure SERCX2_CUSTOM_RECEIVE_CONFIG contient des informations que la version 2 de l’extension de framework série (SerCx2) utilise pour configurer un nouvel objet de réception personnalisé.

Syntaxe

typedef struct _SERCX2_CUSTOM_RECEIVE_CONFIG {
  ULONG   Size;
  ULONG   Alignment;
  ULONG   MinimumTransactionLength;
  ULONG   MaximumTransactionLength;
  ULONG   MinimumTransferUnit;
  BOOLEAN Exclusive;
} SERCX2_CUSTOM_RECEIVE_CONFIG, *PSERCX2_CUSTOM_RECEIVE_CONFIG;

Membres

Size

Taille, en octets, de cette structure. La méthode SerCx2CustomReceiveCreate utilise ce membre pour déterminer la version de la structure utilisée par l’appelant. La taille de cette structure peut changer dans les futures versions du fichier d’en-tête Sercx.h.

Alignment

Exigence d’alignement des données. Spécifie comment l’adresse de départ d’un transfert dans une transaction de réception personnalisée doit être alignée en mémoire. Définissez ce membre sur la constante_ALIGNMENT XXX FILE_appropriée dans le fichier d’en-tête Wdm.h. Par exemple, FILE_WORD_ALIGNMENT indique que l’adresse de départ doit être alignée sur une limite à deux octets en mémoire, FILE_LONG_ALIGNMENT indique que l’adresse doit être alignée sur une limite de quatre octets, et ainsi de suite.

MinimumTransactionLength

Longueur minimale, en octets, d’un transfert de données dans une transaction de réception personnalisée. Si la longueur de la mémoire tampon dans une requête de lecture (IRP_MJ_READ) est inférieure à cette longueur minimale, SerCx2 utilise des E/S programmées (PIO) pour la transaction.

MaximumTransactionLength

Longueur maximale, en octets, d’un transfert de données dans une transaction de réception personnalisée. Si la taille de la mémoire tampon dans la demande de lecture est supérieure à cette longueur maximale, SerCx2 utilise plusieurs transactions de réception personnalisées pour gérer la requête et limite chaque transaction à la longueur maximale.

MinimumTransferUnit

Unité de transfert minimale. Le nombre d’octets spécifiés par un élément d’une liste de points/regroupements doit être un multiple entier de l’unité de transfert minimale. Pour indiquer que l’unité de transfert minimale par défaut doit être utilisée, définissez ce membre sur zéro. Pour plus d’informations sur l’unité de transfert minimale par défaut, consultez DMA_ADAPTER_INFO_V1.

Exclusive

Indique s’il faut utiliser des transactions de réception personnalisées exclusivement pour gérer les requêtes d’écriture (IRP_MJ_READ). Défini sur TRUE pour indiquer que les demandes de lecture doivent utiliser des transactions de réception personnalisées exclusivement. Défini sur FALSE pour indiquer que les demandes de lecture peuvent utiliser une combinaison de transactions de réception personnalisées et de transactions de réception d’authentification unique.

Définissez ce membre sur TRUE uniquement si l’unité de transfert minimale pour les transactions de réception personnalisée est d’un octet, la longueur minimale de la transaction est d’un octet et la mémoire tampon de lecture de la transaction peut démarrer sur n’importe quelle limite d’octets en mémoire.

Si exclusif est TRUE, les membres MinimumTransferUnitOverride, Alignmentet MinimumTransactionLength membres doivent être zéro.

Quelle que soit la valeur de ce membre, les transactions piO-receive sont utilisées pour enregistrer les données non lues dans le FIFO de réception avant que le contrôleur série ne quitte l’état d’alimentation de l’appareil D0 pour entrer un état à faible alimentation.

Remarques

La méthode SerCx2CustomReceiveCreate accepte un pointeur vers une structure SERCX2_CUSTOM_RECEIVE_CONFIG en tant que paramètre d’entrée. Avant d’appeler SerCx2CustomReceiveCreate, appelez la fonction SERCX2_CUSTOM_RECEIVE_CONFIG_INIT pour initialiser cette structure.

Exigences

Exigence Valeur
client minimum pris en charge Prise en charge à partir de Windows 8.1.
d’en-tête sercx.h

Voir aussi

DMA_ADAPTER_INFO_V1

IRP_MJ_READ

SERCX2_CUSTOM_RECEIVE_CONFIG_INIT

SerCx2CustomReceiveCreate