共用方式為


DXGK_DSI_PACKET結構(dispmprt.h)

OEM 面板驅動程式會使用 DXGK_DSI_PACKET 結構,將數位序列介面 (DSI) 封包傳輸至總線驅動程式(圖形核心)。

語法

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;

成員

DataId

8 位值,其中較低的 6 位會形成 DataType,而較高的 2 位是 VirtualChannel。

DataType

要傳輸的數據類型,以隱含方式將交易定義為讀取或寫入,以及參數數目,以及交易是否形成為短或長封包。

VirtualChannel

表示所尋址周邊的子單位。 可以是 0、1、2 或 3 之一。

Data0

短封包中用來傳輸參數的8位值。 簡短封包有 0、1 或 2 個字節的參數,其中數位和意義是由 DataType 所決定。

Data1

短封包中用來傳輸參數的8位值。 簡短封包有 0、1 或 2 個字節的參數,其中數位和意義是由 DataType 所決定。

LongWriteWordCount

寫入長封包之 Payload 的字數,以位元組為單位。

EccFiller

8 位欄位元段,佔用錯誤更正碼 (ECC) 將採用傳輸位元組序列的空間。 傳輸的第四個字節一律是 ECC,而且對於長時間寫入,承載會直接遵循 ECC,讓此填充程式允許在記憶體中建構長寫入命令做為完整命令。 圖形驅動程式有責任在傳輸之前使用正確的 ECC 值覆寫填充值。

Payload[DXGK_DSI_PACKET_EMBEDDED_PAYLOAD_SIZE]

8 個字節的陣列,可讓小型寫入序列以相同傳輸中的封包陣列傳送,但會限制數據的大小。 傳輸中最後一個封包可以直接在內嵌承載的最後一個字節之後,在記憶體中附加進一步的數據。 讀取封包只允許作為傳輸中的最後一個封包,但可能採用長或短封包的形式,無論哪種方式,讀取數據都應該放在Payload緩衝區中,緩衝區中額外的空間以容納較長的回應。

言論

面板驅動程式會使用 DXGK_DSI_TRANSMISSION 結構中的 DSI_PACKET 結構數位來呼叫 IOCTL_MIPI_DSI_TRANSMISSION

要求

要求 價值
最低支援的用戶端 Windows 10 版本 2004
標頭 dispmprt.h

另請參閱

**IOCTL_MIPI_DSI_QUERY_CAPS

IOCTL_MIPI_DSI_RESET

IOCTL_MIPI_DSI_TRANSMISSION