Partager via


structure DXGK_DSI_PACKET (dispmprt.h)

Un pilote de panneau OEM utilise des structures DXGK_DSI_PACKET 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 en tant que lecture ou é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 d’adressage. Peut être l’un des 0, 1, 2 ou 3.

Data0

Valeur 8 bits utilisée dans des paquets courts pour transférer des 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 dataType.

Data1

Valeur 8 bits utilisée dans des paquets courts pour transférer des 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 dataType.

LongWriteWordCount

Nombre de mots, en octets, de la charge utile pour un paquet long d’écriture.

EccFiller

Champ 8 bits qui occupe l’espace que le code de correction d’erreur (ECC) prend 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 afin que ce remplissage permet de construire une longue commande d’écriture en mémoire en tant que commande complète. Il incombe au pilote graphique de remplacer la valeur de remplissage avec 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 dernier paquet 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 ne sont autorisés qu’en tant que dernier dans une transmission, mais peuvent être sous la forme d’un paquet long ou court et de manière ou d’une autre, 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 des réponses plus longues.

Remarques

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

Exigences

Exigence Valeur
client minimum pris en charge Windows 10, version 2004
d’en-tête dispmprt.h

Voir aussi

**IOCTL_MIPI_DSI_QUERY_CAPS

IOCTL_MIPI_DSI_RESET

IOCTL_MIPI_DSI_TRANSMISSION