Freigeben über


DXGKDDI_DPI2CIOTRANSMISSION Rückruffunktion (dispmprt.h)

Der DXGKDDI_DPI2CIOTRANSMISSION Rückruf führt DP I2C über AUX-Lese-/Schreibvorgänge auf Geräten aus, die direkt an die GPU angeschlossen sind.

Syntax

DXGKDDI_DPI2CIOTRANSMISSION DxgkddiDpi2ciotransmission;

NTSTATUS DxgkddiDpi2ciotransmission(
  HANDLE Context,
  PDXGKARG_DPI2CIOTRANSMISSION pArgs
)
{...}

Parameter

Context

Kontextzeiger, der beim Abfragen der Schnittstelle bereitgestellt wird.

pArgs

Zeiger auf eine DXGKARG_DPI2CIOTRANSMISSION Struktur.

Rückgabewert

DXGKDDI_DPI2CIOTRANSMISSION gibt STATUS_SUCCESS zurück, wenn dies erfolgreich ist; andernfalls wird ein Fehlercode zurückgegeben, z. B. einer der folgenden:

Fehlercode Bedeutung
STATUS_DRIVER_INTERNAL_ERROR Es ist ein interner Softwarefehler aufgetreten.
STATUS_ACCESS_DENIED Die Anforderung wird nicht unterstützt. Für Windows 10, Version 2004, wird nur I2C über AUX-Lesevorgang unterstützt.
STATUS_BUFFER_TOO_SMALL Der Puffer ist für den Vorgang zu klein.
STATUS_DEVICE_HARDWARE_ERROR Ein Hardwarefehler ist aufgetreten.
STATUS_DEVICE_POWERED_OFF Das Gerät ist ausgeschaltet.
STATUS_DEVICE_NOT_CONNECTED Das Gerät ist nicht verbunden.
STATUS_DEVICE_PROTOCOL_ERROR Fehler auf I2C-Ebene über AUX-Protokollebene. Der Treiber kann DPNativeError- verwenden, um weitere Details zum Fehler zu codieren.

Bemerkungen

Dieser DDI-Aufruf wird verwendet, um DP I2C über AUX-Lese-/Schreibzugriff auf Geräten auszuführen, die direkt an GPU angeschlossen sind.

Bei I2C beträgt die maximale Größe Daten puffers in der DXGKARG_DPI2CIOTRANSMISSION Struktur, auf die pArgs verweist, 128 Byte. Das Kombinieren eines Schreibvorgangs vor einem Lesevorgang in einer einzelnen Bustransaktion/-zyklus wird für MCCS und andere Protokolle unterstützt. Der Daten- Puffer ist BufferSizeSupplied, der größer als oder gleich dem größeren Wert von BytesToWrite- und BytesToRead-sein soll.

Offset- ist die Adresse für E/A innerhalb des Geräts. Wenn EDDCMode- festgelegt ist, gibt es E-DDC-Geräte I2CAddress (0xA0 für EDID, 0xA4 für DisplayID). Der Treiber sollte SegmentPointer- in die I2C-Adresse 0x60 schreiben, WordOffset- in I2CAddress- und dann den E/A-Vorgang ausführen. Für alle anderen I2C-Geräte sollte der Treiber Bytes von Offset- gemäß OffsetSizeInBytes-schreiben.

Im Falle eines Fehlers sollte der Treiber BytesWritten- zurückgeben und BytesRead- so genau wie möglich zurückgeben.

Für Windows 10, Version 2004, ist der Schreibvorgang nur für die MCCS I2C-Adresse von 0x6E zulässig. Alle anderen Vorgänge werden blockiert, bis eine spätere Betriebssystemfreigabe beim Hinzufügen der Zugriffssteuerung erfolgt.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 10, Version 2004
Header- dispmprt.h

Siehe auch

DXGKARG_DPI2CIOTRANSMISSION