Condividi tramite


DXGK_DSI_TRANSMISSION struttura (dispmprt.h)

La struttura DXGK_DSI_TRANSMISSION viene usata per trasmettere pacchetti DSI (Display Serial Interface) al driver del bus (kernel grafico).

Sintassi

typedef struct _DXGK_DSI_TRANSMISSION {
  UINT            TotalBufferSize;
  BYTE            PacketCount;
  BYTE            FailedPacket;
  struct {
    WORD TransmissionMode : 2;
    WORD ReportMipiErrors : 1;
    WORD ClearMipiErrors : 1;
    WORD SecondaryPort : 1;
    WORD ManufacturingMode : 1;
    WORD Reserved : 10;
  };
  WORD            ReadWordCount;
  WORD            FinalCommandExtraPayload;
  WORD            MipiErrors;
  WORD            HostErrors;
  DXGK_DSI_PACKET Packets[1];
} DXGK_DSI_TRANSMISSION, *PDXGK_DSI_TRANSMISSION;

Members

TotalBufferSize

Numero di byte nell'intera struttura, tra cui intestazione, comandi e payload.

PacketCount

Numero di elementi DXGK_DSI_PACKET nella matrice Pacchetti .

FailedPacket

Indice, quando noto, di DXGK_DSI_PACKET nella matrice Pacchetti che ha avuto un errore. Se non è noto o non è presente alcun errore di pacchetto rilevato, il valore DXGK_DSI_INVALID_PACKET_INDEX è impostato.

TransmissionMode

Uno dei valori di DXGK_MIPI_CONTROL_TRANSMISSIONMODE.

ReportMipiErrors

Se impostato, il driver grafico deve richiedere eventuali errori MIPI accumulati nel riconoscimento del comando finale e segnalarli nel campo MipiErrors.

ClearMipiErrors

Se impostato e il driver grafico ha inviato comandi avviati dal pannello non OEM, il driver deve assicurarsi che eventuali errori MIPI accumulati vengano cancellati prima di iniziare a inviare questa sequenza.

SecondaryPort

Impostare se la trasmissione deve essere inviata a un pannello secondario, non a quella primaria.

ManufacturingMode

Impostare per disattivare la convalida del sistema operativo dei comandi DCS quando il sistema è in modalità di produzione.

Reserved

Riservato.

ReadWordCount

FinalCommandExtraPayload

MipiErrors

Combinazione dei valori di errore seguenti, che indicano gli errori segnalati dalla comunicazione con la periferica.

DXGK_MIPI_DSI_XXX errore Significato
DXGK_MIPI_DSI_SOT_ERROR Possibile errore nell'inizio della sequenza di leader di trasmissione High-Speed
DXGK_MIPI_DSI_SOT_SYNC_ERROR Errore nell'inizio della sequenza di leader di trasmissione High-Speed
DXGK_MIPI_DSI_EOT_SYNC_ERROR La periferica ha rilevato byte incompleti nella trasmissione High-Speed
DXGK_MIPI_DSI_ESCAPE_MODE_ENTRY_COMMAND_ERROR Errore o periferica non riconosce la sequenza di escape
DXGK_MIPI_DSI_LOW_POWER_TRANSMIT_SYNC_ERROR La periferica ha rilevato byte incompleti nella trasmissione Low-Speed
DXGK_MIPI_DSI_FALSE_CONTROL_ERROR Errore rilevato dalla periferica nella sequenza di escape o nella sequenza di turnaround
DXGK_MIPI_DSI_CONTENTION_DETECTED Contesa rilevata
DXGK_MIPI_DSI_CHECKSUM_ERROR_CORRECTED Errore checksum rilevato e corretto
DXGK_MIPI_DSI_CHECKSUM_ERROR_NOT_CORRECTED È stato rilevato un errore checksum, ma non è stato possibile correggere
DXGK_MIPI_DSI_LONG_PACKET_PAYLOAD_CHECKSUM_ERROR Il checksum del payload non è corretto per un pacchetto lungo
DXGK_MIPI_DSI_DSI_DATA_TYPE_NOT_RECOGNIZED La periferica non riconosce il tipo di dati inviato a esso
DXGK_MIPI_DSI_DSI_VC_ID_INVALID La periferica è stata inviata un comando per un canale virtuale che non supporta
DXGK_MIPI_DSI_INVALID_TRANSMISSION_LENGTH La periferica ha rilevato che il numero di byte trasmessi non corrisponde a quello specificato nell'intestazione
DXGK_MIPI_DSI_DSI_PROTOCOL_VIOLATION La periferica ha rilevato la mancanza di EoTP in una trasmissione o host non è riuscito a segnalare il turno del bus per una lettura

HostErrors

Combinazione di errori DXGK_HOST_DSI_XXX che indicano gli errori segnalati dal driver grafico o dal sistema operativo.

errore DXGK_HOST_DSI_XXX Significato
DXGK_HOST_DSI_DEVICE_NOT_READY L'host ha rilevato che è stata effettuata una richiesta per un dispositivo che non è nello stato corretto per poter ricevere la richiesta.
DXGK_HOST_DSI_INTERFACE_RESET Il driver grafico ha rilevato un errore che richiedeva una reimpostazione dell'interfaccia DSI con il pannello. Il driver del pannello deve verificare lo stato del dispositivo prima di riprendere le normali trasmissioni.
DXGK_HOST_DSI_DEVICE_RESET Il driver grafico ha rilevato un errore che richiedeva la reimpostazione del pannello e lo stato devono essere persi. Il driver del pannello deve riapplicare qualsiasi stato del dispositivo privato prima di riprendere le normali trasmissioni.
DXGK_HOST_DSI_TRANSMISSION_CANCELLED L'host ha annullato la trasmissione, che era in corso, perché il bus era necessario per le trasmissioni con priorità superiore, ad esempio l'aggiornamento dei pixel. Il driver del pannello deve assicurarsi che gli effetti di una trasmissione parziale potrebbero avere non sono stati annullati o verificati prima di procedere con le trasmissioni. Se questo errore si verifica spesso, può significare che la trasmissione è troppo grande da completare in modo affidabile e il driver del pannello deve essere modificato per suddividerlo in più trasmissioni.
DXGK_HOST_DSI_TRANSMISSION_DROPPED L'host ha eliminato la trasmissione prima di avviarla perché le trasmissioni con priorità superiore hanno causato il ritardo della trasmissione oltre il limite consentito. Il driver del pannello può riprovare la stessa trasmissione, se è ancora rilevante. Questo errore indica che la larghezza di banda del collegamento DSI non è adeguata, pertanto non deve verificarsi in un ambiente retail. Se la trasmissione è sufficientemente grande, ciò può indicare che la trasmissione deve essere divisa in modo affidabile.
DXGK_HOST_DSI_TRANSMISSION_TIMEOUT L'host ha rilevato un timeout hardware durante la comunicazione con la periferica. Il driver del pannello deve assicurarsi che gli effetti di una trasmissione parziale potrebbero avere non sono stati annullati o verificati prima di procedere con le trasmissioni. A meno che la trasmissione non stia causando l'immissione del pannello di uno stato non valido, non esiste alcuna mitigazione per questo nel driver del pannello, quindi dovrebbe tornare indietro e tentare di riprendere.
DXGK_HOST_DSI_INVALID_TRANSMISSION La convalida del sistema operativo del buffer di DXGK_DSI_TRANSMISSION ha rilevato errori in modo che la trasmissione sia stata annullata senza chiamare il driver grafico o controllare i pacchetti vietati. Ciò è causato da un errore nel driver del pannello OEM o dalla convalida del sistema operativo. Il FailedPacket campo indica il primo pacchetto non valido se l'errore è specifico di un pacchetto.
DXGK_HOST_DSI_OS_REJECTED_PACKET Il sistema operativo ha trovato pacchetti che sono vietati in modo che la trasmissione sia stata annullata senza chiamare il driver grafico. Il FailedPacket campo indica il primo pacchetto non valido.
DXGK_HOST_DSI_DRIVER_REJECTED_PACKET Il driver grafico ha trovato pacchetti che non possono elaborare in modo sicuro in modo che la trasmissione sia stata annullata senza alcuna interazione periferica. Il FailedPacket campo indica il primo pacchetto non valido.
DXGK_HOST_DSI_BAD_TRANSMISSION_MODE Il driver grafico non è riuscito a usare il DXGK_DSI_CONTROL_TRANSMISSION_MODE specificato. Il FailedPacket campo indica il primo pacchetto incompatibile con la modalità di trasmissione.

Packets[1]

Matrice di strutture di DSI_PACKET .

Commenti

Una struttura DXGK_DSI_TRANSMISSION viene fornita alla funzione di callback dxgkDsiTransmission di un driver grafico.

Requisiti

Requisito Valore
Client minimo supportato Windows 10, versione 2004
Intestazione dispmprt.h

Vedi anche

DXGK_DSI_PACKET

**IOCTL_MIPI_DSI_QUERY_CAPS

IOCTL_MIPI_DSI_RESET

IOCTL_MIPI_DSI_TRANSMISSION