DXGKARG_DPI2CIOTRANSMISSION结构(dispmprt.h)

DXGKARG_DPI2CIOTRANSMISSION 结构是 DXGKDDI_DPI2CIOTRANSMISSION 回调的参数。

语法

typedef struct _DXGKARG_DPI2CIOTRANSMISSION {
  struct {
    UINT Read : 1;
    UINT Write : 1;
    UINT EDDCMode : 1;
    UINT OffsetSizeInBytes : 3;
    UINT CanUseCachedData : 1;
    UINT Reserved : 25;
  };
  UINT   RootPortIndex;
  UINT   I2CAddress;
  union {
    struct {
      UINT WordOffset : 8;
      UINT SegmentPointer : 7;
      UINT Reserved1 : 17;
    };
    UINT Offset;
  };
  UINT   BufferSizeSupplied;
  UINT   BytesToWrite;
  UINT   BytesToRead;
  UINT   DPNativeError;
  UINT   BytesWritten;
  UINT   BytesRead;
  BYTE   Data[1];
} DXGKARG_DPI2CIOTRANSMISSION, *PDXGKARG_DPI2CIOTRANSMISSION;

成员

Read

如果已设置,请通过 AUX 读取作执行 DP I2C。

Write

如果设置,请通过 AUX 写入作执行 DP I2C。

EDDCMode

如果设置,则 I2CAddress 上的设备是增强型显示数据通道(E-DDC)。

OffsetSizeInBytes

偏移量大小,偏移量(以字节为单位),用于为非 E-DDC 设备写入数据。

CanUseCachedData

如果设置,驱动程序可以使用缓存的数据。

Reserved

保留;请勿使用。

RootPortIndex

支持 DP 的连接器的索引值,用于通过 AUX 读取或写入作执行 DP I2C。 驱动程序在调用 DXGKDDI_QUERYDPCAPS之前返回 GPU 上支持 DP 的连接器总数。 后续调用 DXGKDDI_DPI2CIOTRANSMISSION 引用 RootPortIndex 的 DP 连接器,范围从 0NumRootPorts - 1

I2CAddress

I2C 地址。 设置为 EDID 的0xA0,或 displayID 的0xA4。

WordOffset

Word 偏移量(以字节为单位)。

SegmentPointer

设置 EDDCMode 时,驱动程序应将 SegmentPointer 写入 I2C 地址0x60。 SegmentPointer 标识正在为 E-DDC 设备访问的 256 字节数据块。

Reserved1

保留;请勿使用。

Offset

设备中 IO 的地址。

BufferSizeSupplied

数据 缓冲区的大小(以字节为单位)。 BufferSizeSupplied 应大于或等于 BytesToWriteBytesToWrite

BytesToWrite

写入作要写入的字节数。

BytesToRead

读取作要读取的字节数。

DPNativeError

DXGKDDI_DPI2CIOTRANSMISSION返回STATUS_DEVICE_PROTOCOL_ERROR时,驱动程序可以编码有关错误的更多详细信息的字段。

BytesWritten

写入的字节数。 如果发生故障,驱动程序应尽可能准确地返回此值。

BytesRead

读取的字节数。 如果发生故障,驱动程序应尽可能准确地返回此值。

Data[1]

包含写入作要写入的数据的缓冲区,以及/或要接收读取作的数据的缓冲区。

言论

设置 EDDCMode 时,驱动程序应 WordOffset 写入 OffsetSizeInBytes

EDDCMode 时,I2CAddress(0xA0 EDID、displayID 0xA4)有 E-DDC 设备。 在这种情况下,驱动程序应将 SegmentPointer 写入 I2C 地址0x60,WordOffsetI2CAddress,然后执行 IO作。 对于所有其他 I2C 设备,驱动程序应根据 OffsetSizeInBytes写入 Offset 的字节数。

如果发生故障,驱动程序应尽可能准确地返回 BytesWrittenBytesRead

对于 Windows 10 版本 2004,仅允许 MCCS I2C 地址的写入作0x6E。 在添加访问控制之前,将阻止所有其他作, 直到以后的 OS 版本发布。

要求

要求 价值
最低支持的客户端 Windows 10 版本 2004
标头 dispmprt.h

另请参阅

DXGKDDI_DPI2CIOTRANSMISSION

DXGKDDI_QUERYDPCAPS