struktur DXGK_DRIVERCAPS (d3dkmddi.h)

Struktur DXGK_DRIVERCAPS menjelaskan kemampuan driver miniport tampilan yang disediakan driver melalui panggilan ke fungsi DxgkDdiQueryAdapterInfo .

Sintaks

typedef struct _DXGK_DRIVERCAPS {
  [out] PHYSICAL_ADDRESS                   HighestAcceptableAddress;
  [out] UINT                               MaxAllocationListSlotId;
  [out] SIZE_T                             ApertureSegmentCommitLimit;
  [out] UINT                               MaxPointerWidth;
  [out] UINT                               MaxPointerHeight;
  [out] DXGK_POINTERFLAGS                  PointerCaps;
  [out] UINT                               InterruptMessageNumber;
  [out] UINT                               NumberOfSwizzlingRanges;
  [out] UINT                               MaxOverlays;
  union {
    [out] DXGK_GAMMARAMPCAPS      GammaRampCaps;
    [out] DXGK_COLORTRANSFORMCAPS ColorTransformCaps;
  };
  [out] DXGK_PRESENTATIONCAPS              PresentationCaps;
  [out] UINT                               MaxQueuedFlipOnVSync;
  [out] DXGK_FLIPCAPS                      FlipCaps;
  [out] DXGK_VIDSCHCAPS                    SchedulingCaps;
  [out] DXGK_VIDMMCAPS                     MemoryManagementCaps;
  [out] DXGK_GPUENGINETOPOLOGY             GpuEngineTopology;
  [out] DXGK_WDDMVERSION                   WDDMVersion;
        DXGK_VIRTUALADDRESSCAPS_DEPRECATED Reserved;
        DXGK_DMABUFFERCAPS_DEPRECATED      Reserved1;
  [out] D3DKMDT_PREEMPTION_CAPS            PreemptionCaps;
  [out] BOOLEAN                            SupportNonVGA;
  [out] BOOLEAN                            SupportSmoothRotation;
  [out] BOOLEAN                            SupportPerEngineTDR;
  [out] BOOLEAN                            SupportDirectFlip;
  [out] BOOLEAN                            SupportMultiPlaneOverlay;
  [out] BOOLEAN                            SupportRuntimePowerManagement;
  [out] BOOLEAN                            SupportSurpriseRemovalInHibernation;
  [out] BOOLEAN                            HybridDiscrete;
  [out] UINT                               MaxOverlayPlanes;
        BOOLEAN                            HybridIntegrated;
        D3DGPU_VIRTUAL_ADDRESS             InternalGpuVirtualAddressRangeStart;
        D3DGPU_VIRTUAL_ADDRESS             InternalGpuVirtualAddressRangeEnd;
        BOOLEAN                            SupportSurpriseRemoval;
  [out] BOOLEAN                            SupportMultiPlaneOverlayImmediateFlip;
  [out] BOOLEAN                            CursorScaledWithMultiPlaneOverlayPlane0;
        BOOLEAN                            HybridAcpiChainingRequired;
  [out] UINT                               MaxQueuedMultiPlaneOverlayFlipVSync;
  union {
    struct {
      UINT SupportContextlessPresent : 1;
      UINT Detachable : 1;
      UINT VirtualGpuOnly : 1;
      UINT ComputeOnly : 1;
      UINT IndependentVidPnVSyncControl : 1;
      UINT NoHybridDiscreteDListDllSupport : 1;
      UINT DisplayableSupport : 1;
#if ...
      UINT Reserved : 25;
#elif
      UINT Reserved : 26;
#elif
      UINT Reserved : 27;
#elif
      UINT Reserved : 28;
#elif
      UINT Reserved : 29;
#else
      UINT Reserved : 30;
#endif
    };
          UINT Value;
  } MiscCaps;
        UINT                               MaxHwQueuedFlips;
        DXGK_HWQUEUEDFLIP_CAPS             HwQueuedFlipCaps;
} DXGK_DRIVERCAPS;

Anggota

[out] HighestAcceptableAddress

Jenis data PHYSICAL_ADDRESS (yang didefinisikan sebagai LARGE_INTEGER) yang menunjukkan alamat fisik memori sistem (RAM) tertinggi yang dapat diterima untuk digunakan.

[out] MaxAllocationListSlotId

Jumlah maksimum pengidentifikasi slot daftar alokasi. Slot daftar alokasi mewakili tempat alokasi diarahkan dalam buffer akses memori langsung (DMA).

[out] ApertureSegmentCommitLimit

Jumlah maksimum byte memori fisik yang didukung driver miniport tampilan untuk pemetaan ke segmen aperture. Manajer memori video tidak akan memetakan lebih banyak memori fisik ke dalam segmen aperture daripada batas yang ditentukan ApertureSegmentCommitLimit .

[out] MaxPointerWidth

Lebar maksimum penunjuk mouse, dalam piksel.

[out] MaxPointerHeight

Tinggi maksimum penunjuk mouse, dalam garis pemindaian.

[out] PointerCaps

Struktur DXGK_POINTERFLAGS yang mengidentifikasi kemampuan penunjuk mouse, dalam bendera bidang bit, yang dapat didukung driver.

[out] InterruptMessageNumber

Nomor pesan yang digunakan jika interupsi bertanda pesan digunakan dan driver memanggil fungsi DxgkCbNotifyInterrupt dari handler interupsi yang sesuai dengan nomor pesan tetap.

[out] NumberOfSwizzlingRanges

Jumlah rentang berdengung yang dapat didukung driver.

[out] MaxOverlays

Jumlah maksimum overlay yang dapat didukung driver.

[out] GammaRampCaps

Struktur DXGK_GAMMARAMPCAPS yang mengidentifikasi kemampuan gamma-ramp, dalam bendera bit-field, yang dapat didukung driver.

[out] ColorTransformCaps

Bendera untuk menggambarkan kemampuan transformasi gamma dan ruang warna dari alur tampilan. CATATAN: Bidang ini menggantikan GammaRampCaps dalam versi pra-WDDM 2.2 dari struktur ini.

[out] PresentationCaps

Struktur DXGK_PRESENTATIONCAPS yang mengidentifikasi kemampuan presentasi, dalam bendera bit-field, yang dapat didukung driver.

[out] MaxQueuedFlipOnVSync

Jumlah flip yang dapat diantrekan dan tertunda pada perangkat keras grafis. Setiap flip dikaitkan ke pengonversi digital-ke-analog (DAC) di setiap gangguan VSync, secara berurutan, karena perangkat keras grafis mengantre flip.

[out] FlipCaps

Struktur DXGK_FLIPCAPS yang mengidentifikasi kemampuan membalik, dalam bendera bidang bit, yang dapat didukung driver.

[out] SchedulingCaps

Struktur DXGK_VIDSCHCAPS yang mengidentifikasi kemampuan penjadwalan unit pemrosesan grafis (GPU), dalam bendera bidang bit, yang dapat didukung driver.

[out] MemoryManagementCaps

Struktur DXGK_VIDMMCAPS yang mengidentifikasi kemampuan manajemen memori video yang dapat didukung driver.

[out] GpuEngineTopology

Struktur DXGK_GPUENGINETOPOLOGY yang menjelaskan topologi mesin GPU yang dapat didukung driver.

[out] WDDMVersion

Nilai DXGK_WDDMVERSION yang mengidentifikasi versi WDDM. Didukung dimulai dengan Windows 7.

Jika driver mendukung fitur Windows 7 atau yang lebih baru (DXGKDDI_INTERFACE_VERSION ≥ DXGKDDI_INTERFACE_VERSION_WIN7), anggota ini dicadangkan dan harus diatur ke nol.

Untuk driver lama yang tidak mendukung fitur Windows 7 atau yang lebih baru (DXGKDDI_INTERFACE_VERSION < DXGKDDI_INTERFACE_VERSION_WIN7):

  • Untuk mengkompilasi driver dengan Windows 7 WDK (Versi 7600), atur anggota ini ke DXGKDDI_WDDMv1.
  • Untuk mengkompilasi driver dengan Windows 8 WDK, atur anggota ini ke DXGKDDI_WDDMv1_2.

Reserved

Dicadangkan.

Reserved1

Dicadangkan.

[out] PreemptionCaps

Struktur D3DKMDT_PREEMPTION_CAPS yang menjelaskan kemampuan untuk pendahuluan permintaan grafis GPU yang didukung driver.

Didukung dimulai dengan Windows 8.

[out] SupportNonVGA

Jika TRUE, driver mendukung pengaturan ulang perangkat tampilan dan melepaskan kepemilikan perangkat uji mandiri (POST) saat ini dengan menggunakan fungsi DxgkDdiStopDeviceAndReleasePostDisplayOwnership .

Didukung dimulai dengan Windows 8.

[out] SupportSmoothRotation

Jika TRUE, driver mendukung pembaruan rotasi jalur pada adaptor dengan menggunakan fungsi DxgkDdiUpdateActiveVidPnPresentPath , sementara tidak memerlukan VidPN baru untuk dibuat dan diatur.

Didukung dimulai dengan Windows 8.

[out] SupportPerEngineTDR

Jika TRUE, driver mendukung pengaturan ulang mesin GPU individual.

Jika anggota ini diatur, driver miniport tampilan harus menerapkan fungsi DxgkDdiQueryDependentEngineGroup, DxgkDdiQueryEngineStatus, dan DxgkDdiResetEngine .

Didukung dimulai dengan Windows 8.

[out] SupportDirectFlip

Jika TRUE, driver mendukung pembuatan dan pembukaan alokasi utama terkelola bersama. Nilai TRUE juga menunjukkan hal berikut:

  • Driver miniport tampilan menjamin bahwa ketika fungsi DxgkDdiSetVidPnSourceAddress dipanggil, driver tidak mengizinkan memori video dibalik ke alokasi yang tidak kompatibel.
  • Driver mode pengguna memvalidasi sumber daya Direct Flip sebelum Desktop Windows Manager (DWM) menggunakannya.

Hanya DWM yang dapat membalik memori video ke sumber daya Direct Flip. DWM memvalidasi sumber daya ini menggunakan fungsi CheckDirectFlipSupport mode pengguna.

Didukung dimulai dengan Windows 8.

[out] SupportMultiPlaneOverlay

Jika TRUE, driver miniport tampilan mendukung overlay multiplane, dan driver juga harus menetapkan nilai untuk anggota MaxOverlayPlanes . Jika FALSE, subsistem kernel grafis DirectX tidak akan memanggil fungsi overlay multiplane.

Didukung dimulai dengan Windows 8.1.

[out] SupportRuntimePowerManagement

Jika TRUE, driver miniport tampilan mendukung manajemen daya run-time.

Jika anggota ini diatur, driver miniport tampilan harus mengimplementasikan fungsi DxgkDdiSetPowerComponentFState dan DxgkDdiPowerRuntimeControlRequest .

Didukung dimulai dengan Windows 8.

[out] SupportSurpriseRemovalInHibernation

Jika TRUE, driver miniport tampilan mendukung pembersihan sumber daya perangkat lunak setelah perangkat tampilan eksternal dalam mode hibernasi terputus dari sistem.

Jika anggota ini diatur, driver miniport tampilan harus mengimplementasikan fungsi DxgkDdiNotifySurpriseRemoval dengan parameter RemovalType yang diatur ke DxgkRemovalHibernation.

Untuk informasi selengkapnya, lihat Menggunakan sumber daya lintas adaptor dalam sistem hibrid.

Didukung dimulai dengan Windows 8.

[out] HybridDiscrete

Jika TRUE, driver miniport tampilan adalah GPU diskrit dalam sistem hibrid.

Jika anggota ini diatur, driver miniport tampilan harus:

  • mendukung WDDM 1.3
  • mendukung sumber daya lintas adaptor
  • tidak memiliki output tampilan

Untuk informasi selengkapnya, lihat Menggunakan sumber daya lintas adaptor dalam sistem hibrid.

Didukung dimulai dengan Windows 8.1.

[out] MaxOverlayPlanes

Jika SupportRuntimePowerManagementTRUE, driver miniport tampilan harus mengatur MaxOverlayPlanes ke jumlah maksimum bidang overlay yang dapat ditampilkan secara bersamaan pada satu output, termasuk permukaan utama, yang dapat didukungnya. Jika jumlah bidang yang tersedia akan berubah ketika mode operasi berubah, driver harus menggunakan angka yang mencerminkan skenario terbaik.

Didukung dimulai dengan Windows 8.1.

HybridIntegrated

Menunjukkan apakah GPU saat ini adalah hibrid.

InternalGpuVirtualAddressRangeStart

Rentang alamat virtual GPU internal dimulai.

InternalGpuVirtualAddressRangeEnd

Rentang alamat virtual GPU internal berakhir.

SupportSurpriseRemoval

Jika TRUE, driver miniport tampilan mendukung penghapusan kejutan.

[out] SupportMultiPlaneOverlayImmediateFlip

Jika TRUE, driver miniport tampilan mendukung balik langsung ke bidang overlay multiplane selama satu-satunya nilai yang berubah adalah alamat fisik yang akan ditampilkan.

[out] CursorScaledWithMultiPlaneOverlayPlane0

Jika TRUE, perangkat keras tampilan akan selalu menerapkan faktor penskalaan yang sama ke kursor perangkat keras seperti yang diterapkan pada bidang 0 ketika per perpanjangan overlay multiplane bidang diterapkan.

HybridAcpiChainingRequired

Menunjukkan bahwa driver diskrit hibrid ini memerlukan penautan peristiwa ACPI yang dipicu pada adaptor terintegrasi.

[out] MaxQueuedMultiPlaneOverlayFlipVSync

Menunjukkan jumlah maksimum pembaruan untuk satu bidang dapat dilakukan dalam satu periode Vsync, di mana pembaruan terbaru mengambil alih pembaruan sebelumnya. Jika driver mendukung antrean balik perangkat keras, OS akan mengabaikan nilai ini.

MiscCaps

Kemampuan lain-lain.

MiscCaps.SupportContextlessPresent

Mendukung konteks null dalam panggilan DDI. Ketika nilai ini diatur, OS akan melewati konteks NULL di DDI terkait saat ini. Didukung mulai dari WDDM 2.4.

MiscCaps.Detachable

Dapat dilepas, yaitu hot-pluggable. Driver akan mengatur bit ini selama inisialisasi adaptor jika adaptor dapat dicolokkan panas. Didukung mulai dari WDDM 2.4.

MiscCaps.VirtualGpuOnly

Adaptor tidak boleh digunakan oleh aplikasi Direct3D pada host. Didukung mulai dari WDDM 2.5.

MiscCaps.ComputeOnly

Mendukung perangkat Compute-Only dengan merender kemampuan perangkat khusus render WDDM. Didukung mulai Windows 10, versi 1901 (WDDM 2.6)

MiscCaps.IndependentVidPnVSyncControl

Driver yang mengatur kemampuan ini harus membaca VidPnSourceId yang ditentukan di DdiControlInterrupt3 dan mengontrol VSync pada VidPnSourceId yang disebutkan. Didukung mulai Windows 10, versi 2004 (WDDM 2.7).

MiscCaps.NoHybridDiscreteDListDllSupport

Menunjukkan apakah driver mendukung d-List. Didukung mulai Windows 10, versi 2004 (WDDM 2.8).

MiscCaps.DisplayableSupport

Menunjukkan apakah driver mendukung fitur yang dapat ditampilkan. Didukung mulai dari Windows 11 (WDDM 3.0).

MiscCaps.Reserved

Dicadangkan.

MiscCaps.Value

Cara alternatif untuk mengakses bit MiscCaps .

MaxHwQueuedFlips

Jumlah maksimum antrean balik perangkat keras yang didukung driver. Jika OS mengizinkan dukungan antrean balik perangkat keras, driver dapat mengatur MaxHwQueuedFlips ke nilai yang lebih besar dari 1. Ditambahkan di Windows Server 2022 (WDDM 2.9); didukung mulai dari Windows 11 (WDDM 3.0).

HwQueuedFlipCaps

Nilai DXGK_HWQUEUEDFLIP_CAPS yang menjelaskan kemampuan antrean balik perangkat keras. Ditambahkan di Windows Server 2022 (WDDM 2.9); didukung mulai dari Windows 11 (WDDM 3.0).

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista
Header d3dkmddi.h (termasuk D3dkmddi.h)

Lihat juga

DxgkDdiUpdateActiveVidPnPresentPath

DXGK_VIDSCHCAPS

DxgkDdiStopDeviceAndReleasePostDisplayOwnership

CheckDirectFlipSupport

DXGK_POINTERFLAGS

D3DKMDT_PREEMPTION_CAPS

DXGK_GAMMARAMPCAPS

DxgkDdiQueryAdapterInfo

DXGK_PRESENTATIONCAPS

DXGK_VIDMMCAPS

DXGK_GPUENGINETOPOLOGY

DxgkDdiQueryEngineStatus

DxgkDdiSetPowerComponentFState

DxgkDdiSetVidPnSourceAddress

DxgkDdiResetEngine

DxgkDdiPowerRuntimeControlRequest

DxgkCbNotifyInterrupt

DxgkDdiNotifySurpriseRemoval

DxgkDdiQueryDependentEngineGroup

DXGK_FLIPCAPS

DXGKARG_QUERYADAPTERINFO