structure DXGK_DSI_PACKET (dispmprt.h)

Un pilote de panneau OEM utilise DXGK_DSI_PACKET structures pour transmettre des paquets DSI (Digital Serial Interface) au pilote de bus (noyau graphique).

Syntaxe

typedef struct _DXGK_DSI_PACKET {
  union {
    BYTE DataId;
    struct {
      BYTE DataType : 6;
      BYTE VirtualChannel : 2;
    };
  };
  union {
    struct {
      BYTE Data0;
      BYTE Data1;
    };
    WORD LongWriteWordCount;
  };
  BYTE  EccFiller;
  BYTE  Payload[DXGK_DSI_PACKET_EMBEDDED_PAYLOAD_SIZE];
} DXGK_DSI_PACKET, *PDXGK_DSI_PACKET;

Membres

DataId

Valeur 8 bits, où les 6 bits inférieurs forment le DataType et les 2 bits les plus élevés sont VirtualChannel.

DataType

Type de données transmises, qui définit implicitement la transaction comme une lecture ou une écriture, ainsi que le nombre de paramètres et si la transaction est formée sous forme de paquet court ou long.

VirtualChannel

Indique la sous-unité du périphérique en cours de résolution. Il peut s’agir de 0, 1, 2 ou 3.

Data0

Valeur 8 bits utilisée dans les paquets courts pour transférer les paramètres. Les paquets courts ont 0, 1 ou 2 octets de paramètres, où le nombre et la signification sont déterminés par le DataType.

Data1

Valeur 8 bits utilisée dans les paquets courts pour transférer les paramètres. Les paquets courts ont 0, 1 ou 2 octets de paramètres, où le nombre et la signification sont déterminés par le DataType.

LongWriteWordCount

Word compte, en octets, de la charge utile d’un paquet long d’écriture.

EccFiller

Champ 8 bits qui occupe l’espace que le code de correction d’erreur (ECC) prendra dans la séquence d’octets transmis. Le quatrième octet de la transmission est toujours un ECC et pour les écritures longues, la charge utile suit directement l’ECC de sorte que ce remplissage permet de construire une commande d’écriture longue en mémoire comme une commande complète. Il incombe au pilote graphique de remplacer la valeur de remplissage par la valeur ECC correcte avant la transmission.

Payload[DXGK_DSI_PACKET_EMBEDDED_PAYLOAD_SIZE]

Tableau de 8 octets qui permet d’envoyer des séquences de petites écritures en tant que tableau de paquets dans la même transmission, mais limite la taille des données. Le paquet final d’une transmission peut ajouter d’autres données en mémoire directement après le dernier octet de la charge utile incorporée. Les paquets de lecture sont autorisés uniquement en tant que dernier d’une transmission, mais ils peuvent se présenter sous la forme d’un paquet long ou court et, de toute façon, les données de lecture doivent être placées dans la mémoire tampon de charge utile, avec un espace supplémentaire dans la mémoire tampon pour prendre en charge les réponses plus longues.

Remarques

Le pilote de panneau appelle IOCTL_MIPI_DSI_TRANSMISSION avec un tableau de structures DSI_PACKET dans une structure de DXGK_DSI_TRANSMISSION .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10, version 2004
En-tête dispmprt.h

Voir aussi

**IOCTL_MIPI_DSI_QUERY_CAPS

IOCTL_MIPI_DSI_RESET

IOCTL_MIPI_DSI_TRANSMISSION