estructura DXGK_DSI_PACKET (dispmprt.h)

Un controlador de panel OEM usa estructuras de DXGK_DSI_PACKET para transmitir paquetes de interfaz serie digital (DSI) al controlador de bus (kernel de gráficos).

Sintaxis

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;

Miembros

DataId

Valor de 8 bits, donde los 6 bits inferiores forman dataType y los 2 bits superiores son VirtualChannel.

DataType

Tipo de datos que se transmiten, que define implícitamente la transacción como lectura o escritura, así como el número de parámetros y si la transacción se forma como un paquete corto o largo.

VirtualChannel

Indica la subconsulta del periférico que se está solucionando. Puede ser uno de 0, 1, 2 o 3.

Data0

Valor de 8 bits usado en paquetes cortos para transferir parámetros. Los paquetes cortos tienen 0, 1 o 2 bytes de parámetros, donde dataType determina el número y el significado.

Data1

Valor de 8 bits usado en paquetes cortos para transferir parámetros. Los paquetes cortos tienen 0, 1 o 2 bytes de parámetros, donde dataType determina el número y el significado.

LongWriteWordCount

Word recuento, en bytes, de la carga de un paquete largo de escritura.

EccFiller

Un campo de 8 bits que ocupa el espacio que tomará el código de corrección de errores (ECC) en la secuencia de bytes transmitidos. El cuarto byte de la transmisión siempre es un ECC y, para escrituras largas, la carga sigue directamente al ECC, por lo que este relleno permite construir un comando de escritura largo en memoria como un comando completo. Es responsabilidad del controlador de gráficos sobrescribir el valor del relleno con el valor ECC correcto antes de la transmisión.

Payload[DXGK_DSI_PACKET_EMBEDDED_PAYLOAD_SIZE]

Matriz de 8 bytes que permite enviar secuencias de escrituras pequeñas como una matriz de paquetes en la misma transmisión, pero limita el tamaño de los datos. El paquete final de una transmisión puede anexar más datos en la memoria directamente después del último byte de la carga incrustada. Los paquetes de lectura solo se permiten como el último de una transmisión, pero pueden estar en forma de un paquete largo o corto y, en cualquier caso, los datos de lectura deben colocarse en el búfer de carga, con espacio adicional en el búfer para dar cabida a respuestas más largas.

Comentarios

El controlador del panel llama a IOCTL_MIPI_DSI_TRANSMISSION con una matriz de estructuras de DSI_PACKET en una estructura DXGK_DSI_TRANSMISSION .

Requisitos

Requisito Value
Cliente mínimo compatible Windows 10, versión 2004
Encabezado dispmprt.h

Consulte también

**IOCTL_MIPI_DSI_QUERY_CAPS

IOCTL_MIPI_DSI_RESET

IOCTL_MIPI_DSI_TRANSMISSION