Condividi tramite


struttura DXGK_DSI_TRANSMISSION (dispmprt.h)

La struttura DXGK_DSI_TRANSMISSION viene usata per trasmettere pacchetti DSI (Display Serial Interface) al driver 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;

Membri

TotalBufferSize

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

PacketCount

Numero di elementi DXGK_DSI_PACKET nella matrice pacchetti.

FailedPacket

Indice, se noto, di DXGK_DSI_PACKET nella matrice Pacchetti che presentava un errore. Se non è noto o non viene rilevato alcun errore di pacchetto, viene impostato il valore DXGK_DSI_INVALID_PACKET_INDEX.

TransmissionMode

Uno dei valori DXGK_MIPI_CONTROL_TRANSMISSIONMODE.

ReportMipiErrors

Se impostato, il driver di grafica deve richiedere eventuali errori MIPI accumulati nell'acknowledgement finale del comando e segnalarli nel campo MipiErrors.

ClearMipiErrors

Se impostato e il driver grafico ha inviato comandi non OEM avviati dal pannello, 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.

errore DXGK_MIPI_DSI_XXX 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 guida di trasmissione High-Speed
DXGK_MIPI_DSI_EOT_SYNC_ERROR Le periferiche hanno 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 Le periferiche hanno 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 Rilevata contesa
DXGK_MIPI_DSI_CHECKSUM_ERROR_CORRECTED È stato rilevato e corretto un errore di checksum
DXGK_MIPI_DSI_CHECKSUM_ERROR_NOT_CORRECTED È stato rilevato un errore di 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
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 è riuscita 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 perdita di un ripristino del pannello e dello stato. 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à più alta, ad esempio l'aggiornamento pixel. Il conducente del pannello deve assicurarsi che qualsiasi effetto che una trasmissione parziale avrebbe potuto avere sia annullata o verificata prima di procedere con le trasmissioni. Se questo errore si verifica spesso, può significare che la trasmissione è troppo grande per essere completata 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à più alta hanno causato un ritardo della trasmissione oltre il limite consentito. Il conducente del pannello può provare di nuovo 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 di vendita al dettaglio. Se la trasmissione è sufficientemente grande, ciò può indicare che la trasmissione deve essere divisa per avere successo in modo affidabile.
DXGK_HOST_DSI_TRANSMISSION_TIMEOUT L'host ha rilevato un timeout hardware durante la comunicazione con la periferica. Il conducente del pannello deve assicurarsi che qualsiasi effetto che una trasmissione parziale avrebbe potuto avere sia annullata o verificata prima di procedere con le trasmissioni. A meno che la trasmissione non causi l'ingresso del pannello in uno stato non valido, non vi è 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 DXGK_DSI_TRANSMISSION ha rilevato errori in modo che la trasmissione sia stata annullata senza chiamare il driver grafico o verificare la presenza di pacchetti proibiti. Ciò è causato da un errore nel driver del pannello OEM o dalla convalida del sistema operativo. Il campo FailedPacket 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 campo FailedPacket indica il primo pacchetto non valido.
DXGK_HOST_DSI_DRIVER_REJECTED_PACKET Il driver grafico ha trovato pacchetti che non può elaborare in modo sicuro in modo che la trasmissione sia stata annullata senza alcuna interazione periferica. Il campo FailedPacket 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 campo FailedPacket indica il primo pacchetto incompatibile con la modalità di trasmissione.

Packets[1]

Matrice di strutture di DSI_PACKET.

Osservazioni

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

Fabbisogno

Requisito Valore
client minimo supportato Windows 10, versione 2004
intestazione dispmprt.h

Vedere anche

DXGK_DSI_PACKET

**IOCTL_MIPI_DSI_QUERY_CAPS

IOCTL_MIPI_DSI_RESET

IOCTL_MIPI_DSI_TRANSMISSION