Поделиться через


перечисление DXGK_QUERYADAPTERINFOTYPE (d3dkmddi.h)

Перечисление DXGK_QUERYADAPTERINFOTYPE указывает тип информации, в котором отображается драйвер мини-порта (KMD) в режиме ядра, должен возвращаться в буфере, который pOutputData указывает на то, когда вызывается его функция DxgkDdiQueryAdapterInfo. Дополнительные сведения об этих типах, требующих ввода (pInputDataсм. в DXGKARG_QUERYADAPTERINFO).

Синтаксис

typedef enum _DXGK_QUERYADAPTERINFOTYPE {
  DXGKQAITYPE_UMDRIVERPRIVATE = 0,
  DXGKQAITYPE_DRIVERCAPS = 1,
  DXGKQAITYPE_QUERYSEGMENT = 2,
  DXGKQAITYPE_RESERVED = 3,
  DXGKQAITYPE_QUERYSEGMENT2 = 4,
  DXGKQAITYPE_QUERYSEGMENT3 = 5,
  DXGKQAITYPE_NUMPOWERCOMPONENTS = 6,
  DXGKQAITYPE_POWERCOMPONENTINFO = 7,
  DXGKQAITYPE_PREFERREDGPUNODE = 8,
  DXGKQAITYPE_POWERCOMPONENTPSTATEINFO = 9,
  DXGKQAITYPE_HISTORYBUFFERPRECISION = 10,
  DXGKQAITYPE_QUERYSEGMENT4 = 11,
  DXGKQAITYPE_SEGMENTMEMORYSTATE = 12,
  DXGKQAITYPE_GPUMMUCAPS = 13,
  DXGKQAITYPE_PAGETABLELEVELDESC = 14,
  DXGKQAITYPE_PHYSICALADAPTERCAPS = 15,
  DXGKQAITYPE_DISPLAY_DRIVERCAPS_EXTENSION = 16,
  DXGKQAITYPE_INTEGRATED_DISPLAY_DESCRIPTOR = 17,
  DXGKQAITYPE_UEFIFRAMEBUFFERRANGES = 18,
  DXGKQAITYPE_QUERYCOLORIMETRYOVERRIDES = 19,
  DXGKQAITYPE_DISPLAYID_DESCRIPTOR = 20,
  DXGKQAITYPE_FRAMEBUFFERSAVESIZE = 21,
  DXGKQAITYPE_HARDWARERESERVEDRANGES = 22,
  DXGKQAITYPE_INTEGRATED_DISPLAY_DESCRIPTOR2 = 23,
  DXGKQAITYPE_NODEPERFDATA = 24,
  DXGKQAITYPE_ADAPTERPERFDATA = 25,
  DXGKQAITYPE_ADAPTERPERFDATA_CAPS = 26,
  DXGKQAITYPE_GPUVERSION = 27,
  DXGKQAITYPE_DEVICE_TYPE_CAPS = 28,
  DXGKQAITYPE_WDDMDEVICECAPS = 29,
  DXGKQAITYPE_GPUPCAPS = 30,
  DXGKQAITYPE_QUERYTARGETGAMMACAPS = 31,
  DXGKQAITYPE_SCANOUT_CAPS = 33,
  DXGKQAITYPE_PHYSICAL_MEMORY_CAPS = 34,
  DXGKQAITYPE_IOMMU_CAPS = 35,
  DXGKQAITYPE_HARDWARERESERVEDRANGES2 = 36,
  DXGKQAITYPE_NATIVE_FENCE_CAPS = 37,
  DXGKQAITYPE_USERMODESUBMISSION_CAPS = 38,
  DXGKQAITYPE_DIRTYBITTRACKINGCAPS = 39,
  DXGKQAITYPE_DIRTYBITTRACKINGSEGMENTCAPS = 40,
  DXGKQAITYPE_SCATTER_RESERVE = 41,
  DXGKQAITYPE_QUERYPAGINGBUFFERINFO = 42,
  DXGKQAITYPE_QUERYSEGMENTCOUNT = 43,
  DXGKQAITYPE_QUERYSEGMENT5 = 44,
  DXGKQAITYPE_QUERYMMUCOUNT = 45,
  DXGKQAITYPE_QUERYMMUS = 46,
  DXGKQAITYPE_64BITONLYCAPS = 47,
  DXGKQAITYPE_PAGINGPROCESSGPUVASIZE = 48
} DXGK_QUERYADAPTERINFOTYPE;

Константы

 
DXGKQAITYPE_UMDRIVERPRIVATE
Значение: 0
Указывает частную собственную структуру данных для драйвера отображения.
DXGKQAITYPE_DRIVERCAPS
Значение: 1
KMD должен заполнить структуру DXGK_DRIVERCAPS своими возможностями драйвера.
DXGKQAITYPE_QUERYSEGMENT
Значение: 2
KMD должен заполнять структуру DXGK_QUERYSEGMENTOUT сведениями о сегменте памяти.
DXGKQAITYPE_RESERVED
Значение: 3
Зарезервировано для использования системы. Не используйте в драйвере. Эта константа возникает начиная с Windows 7.
DXGKQAITYPE_QUERYSEGMENT2
Значение: 4
Зарезервировано для использования системы. Не используйте в драйвере. Эта константа возникает начиная с Windows 7.
DXGKQAITYPE_QUERYSEGMENT3
Значение: 5
KMD должен заполнить структуру DXGK_QUERYSEGMENTOUT3 сведениями о сегменте памяти. Поддерживается начиная с Windows 8.
DXGKQAITYPE_NUMPOWERCOMPONENTS
Значение: 6
Мини-порт отображения должен предоставить значение UINT, указывающее количество используемых компонентов питания. Поддерживается начиная с Windows 8.
DXGKQAITYPE_POWERCOMPONENTINFO
Значение: 7
KMD должен заполнять структуру DXGK_POWER_RUNTIME_COMPONENT сведениями о компоненте питания nth, где n является индексом компонентов, заданным DXGKARG_QUERYADAPTERINFO.pInputData в вызове DxgkDdiQueryAdapterInfo. Поддерживается начиная с Windows 8.
DXGKQAITYPE_PREFERREDGPUNODE
Значение: 8
Зарезервировано для использования системы. Не используйте в драйвере. Эта константа возникает начиная с Windows 8.
DXGKQAITYPE_POWERCOMPONENTPSTATEINFO
Значение: 9
Зарезервировано для использования системы. Не используйте в драйвере. Поддерживается начиная с Windows 8.1.
DXGKQAITYPE_HISTORYBUFFERPRECISION
Значение: 10
KMD должен заполнять структуру DXGKARG_HISTORYBUFFERPRECISION сведениями о точности данных буфера журнала, которые он использует. Поддерживается начиная с Windows 8.1.
DXGKQAITYPE_QUERYSEGMENT4
Значение: 11
KMD должен заполнить структуру DXGK_QUERYSEGMENTOUT4, чтобы указать сведения о сегменте памяти. Поддерживается начиная с Windows 10.
DXGKQAITYPE_SEGMENTMEMORYSTATE
Значение: 12
KMD должен заполнять структуру DXGK_MEMORYRANGE своими плохими диапазонами памяти. Поддерживается начиная с Windows 10.
DXGKQAITYPE_GPUMMUCAPS
Значение: 13
KMD должен заполнить структуру DXGK_GPUMMUCAPS своими возможностями управления виртуальной памятью. Поддерживается начиная с Windows 10.
DXGKQAITYPE_PAGETABLELEVELDESC
Значение: 14
Зарезервировано для использования системы. Не используйте в драйвере. Эта константа происходит начиная с Windows 10.
DXGKQAITYPE_PHYSICALADAPTERCAPS
Значение: 15
Зарезервировано для использования системы. Не используйте в драйвере. Эта константа происходит начиная с Windows 10.
DXGKQAITYPE_DISPLAY_DRIVERCAPS_EXTENSION
Значение: 16
Зарезервировано для использования системы. Не используйте в драйвере. Эта константа происходит начиная с Windows 10.
DXGKQAITYPE_INTEGRATED_DISPLAY_DESCRIPTOR
Значение: 17
Поддерживается начиная с Windows 10 версии 1703. Указывает запрос на дескриптор интегрированной панели, где входной буфер запроса будет DXGK_QUERYINTEGRATEDDISPLAYIN структурой, а выходной буфер — это структура DXGK_QUERYINTEGRATEDDISPLAYOUT.

Хотя эта функция обращается к целевому объекту, только блокировки адаптера DxgKrnl принимаются за этот вызов, а не дочерние блокировки устройств. На практике, так как этот вызов будет выполнен до предоставления дочернего устройства, не должно быть одновременных вызовов DDI, которые обращаются к одному целевому объекту.

ПРИМЕЧАНИЕ. В отличие от большинства вызовов QueryAdapterInfo, размер выходного буфера является переменной, хотя он по-прежнему известен заранее из поля DescriptorLength структуры DXGK_INTEGRATED_DISPLAY_CHILD для целевого идентификатора. Размер выходного буфера:
DescriptorLength + FIELD_OFFSET( DXGK_QUERYINTEGRATEDDISPLAYOUT, Descriptor ).
DXGKQAITYPE_UEFIFRAMEBUFFERRANGES
Значение: 18
Указывает запрос на диапазоны буферов кадров UEFI. Поддерживается начиная с Windows 10 версии 1703.
DXGKQAITYPE_QUERYCOLORIMETRYOVERRIDES
Значение: 19
Поддерживается начиная с Windows 10 версии 1703. Указывает запрос на переопределение цветовой метрии для внешнего дисплея, где входной буфер запроса будет DXGK_QUERYCOLORIMETRYOVERRIDESIN структурой, содержащей только целевой идентификатор, а выходной буфер — это DXGK_COLORIMETRY структура, в которую драйвер записывает переопределения для монитора, подключенного к целевому объекту.

Хотя эта функция обращается к целевому объекту, только блокировки адаптера DxgKrnl принимаются за этот вызов, а не дочерние блокировки устройств. Так как этот вызов будет выполнен до предоставления дочернего устройства, не должно быть одновременных вызовов DDI, которые обращаются к одному целевому объекту.

Выходной буфер равен нулю при передаче драйверу. Если драйвер не имеет переопределений для монитора, он должен вернуть STATUS_SUCCESS и оставить выходной буфер ноль. Если драйвер переопределяется, он заполняет все поля DXGK_COLORIMETRY, чтобы описать возможности монитора, так как ОС не будет принимать частичные переопределения.
DXGKQAITYPE_DISPLAYID_DESCRIPTOR
Значение: 20
Указывает запрос на дескриптор интегрированной панели, где входной буфер запроса будет DXGK_QAITARGETIN структурой, а выходной буфер — это DXGK_QUERYINTEGRATEDDISPLAYOUT структура. Поддерживается начиная с Windows 10 версии 1709.
DXGKQAITYPE_FRAMEBUFFERSAVESIZE
Значение: 21
KMD должен заполнить структуру DXGK_FRAMEBUFFERSAVEAREA размером буфера кадра, чтобы сохранить в системной памяти во время перехода питания. Поддерживается начиная с Windows 10 версии 1803.
DXGKQAITYPE_HARDWARERESERVEDRANGES
Значение: 22
KMD должен заполнять структуру DXGK_HARDWARERESERVEDRANGES своими аппаратными диапазонами зарезервированной памяти. Поддерживается начиная с Windows 10 версии 1803.
DXGKQAITYPE_INTEGRATED_DISPLAY_DESCRIPTOR2
Значение: 23
Поддерживается начиная с Windows 10 версии 1803. Указывает запрос на дескриптор интегрированной панели, где входной буфер запроса будет DXGK_QAITARGETIN структурой, а выходной буфер — это структура DXGK_QUERYINTEGRATEDDISPLAYOUT2. Этот запрос заменяет использование запроса DXGKQAITYPE_INTEGRATED_DISPLAY_DESCRIPTOR для драйверов WDDM 2.4.

ТипIntegratedDisplay дочерних устройств передаются путем вызова DxgkDdiQueryAdapterInfo с типа, заданным для этого значения.
DXGKQAITYPE_NODEPERFDATA
Значение: 24
KMD должен заполнять структуру DXGK_NODE_PERFDATA, которая представляет данные о производительности, собранные на подсистему из адаптера на основе интервала. Поддерживается начиная с Windows 10 версии 1803.
DXGKQAITYPE_ADAPTERPERFDATA
Значение: 25
KMD должен заполнять структуру DXGK_ADAPTER_PERFDATA, представляющую данные о производительности, собранные на каждый адаптер на основе интервала. Поддерживается начиная с Windows 10 версии 1803.
DXGKQAITYPE_ADAPTERPERFDATA_CAPS
Значение: 26
KMD должен заполнить структуру DXGK_ADAPTER_PERFDATACAPS, которая представляет возможности данных, которые являются статическими и запрашиваются один раз на GPU во время инициализации. Поддерживается начиная с Windows 10 версии 1803.
DXGKQAITYPE_GPUVERSION
Значение: 27
KMD должен заполнить DXGK_GPUVERSION структуру, используемую для сбора имени версии BIOS и архитектуры GPU один раз во время инициализации GPU. Поддерживается начиная с Windows 10 версии 1803.
DXGKQAITYPE_DEVICE_TYPE_CAPS
Значение: 28
KMD должен заполнить структуру DXGK_DEVICE_TYPE_CAPS, описывающую тип возможностей для устройства. Поддерживается начиная с Windows 10 версии 1809.
DXGKQAITYPE_WDDMDEVICECAPS
Значение: 29
KMD должен заполнить DXGK_WDDMDEVICECAPS структуру, содержащую возможности WDDM, запрашиваемые ОС во время инициализации устройства. Поддерживается начиная с Windows 10 версии 1903.
DXGKQAITYPE_GPUPCAPS
Значение: 30
KMD должен заполнить структуру DXGK_GPUPCAPS, содержащую возможности GPU для драйвера отображения режима ядра. Поддерживается начиная с Windows 10 версии 1903.
DXGKQAITYPE_QUERYTARGETGAMMACAPS
Значение: 31
KMD должен заполнить структуру DXGK_TARGET_GAMMA_CAPS, описывающую гамма-возможности KMD. Поддерживается начиная с Windows 10 версии 1903.
DXGKQAITYPE_SCANOUT_CAPS
Значение: 33
KMD должен заполнить структуру DXGK_QUERY_SCANOUT_CAPS_OUT, описывающую возможности сканирования драйвера. Поддерживается начиная с Windows 10 версии 1903.
DXGKQAITYPE_PHYSICAL_MEMORY_CAPS
Значение: 34
KMD должен заполнить структуру DXGK_PHYSICAL_MEMORY_CAPS, описывающую ограничения физической памяти (самый видимый физический адрес) устройства. Поддерживается начиная с Windows Server 2022 (WDDM 2.9).

Дополнительные сведения о поддержке драйверов для линейного перемежения IOMMU см. в DXGKQAITYPE_IOMMU_CAPS.
DXGKQAITYPE_IOMMU_CAPS
Значение: 35
KMD должен заполнить структуру DXGK_IOMMU_CAPS, которая указывает, что линейное перемысливание IOMMU поддерживается драйвером. Поддерживается начиная с Windows Server 2022 (WDDM 2.9). Чтобы указать поддержку линейной перемычки, драйвер также должен сообщить Dxgkernel о ограничениях физической памяти через DXGKQAITYPE_PHYSICAL_MEMORY_CAPS крышку.

Логическая перемаздка может выполняться только в том случае, если на устройство не ссылается существующая физическая память, поэтому последовательность вызовов Dxgkrnlвыглядит следующим образом:

* Вызов dxgkDdiAddDevice для всех физических адаптеров, чтобы драйвер мог собирать сведения для всех связанных физических адаптеров.

* Вызов DxgkDdiQueryAdapterInfo с DXGKQAITYPE_PHYSICAL_MEMORY_CAPS и DXGKQAITYPE_IOMMU_CAPS, чтобы затем он мог создать и подключить устройство к домену IOMMU перед доступом к любой памяти.

* Вызов DxgkDdiStartDevice для запуска устройства.
DXGKQAITYPE_HARDWARERESERVEDRANGES2
Значение: 36
DXGKQAITYPE_NATIVE_FENCE_CAPS
Значение: 37
KMD должен заполнить структуру DXGK_NATIVE_FENCE_CAPS, содержащую сведения о поддержке драйвера для собственных заборов GPU. Поддерживается начиная с Windows 11 версии 24H2. Дополнительные сведения см. в разделе Собственные ограждения GPU.
DXGKQAITYPE_USERMODESUBMISSION_CAPS
Значение: 38
KMD должен заполнить структуру DXGK_USERMODESUBMISSION_CAPS, содержащую сведения о поддержке драйвера для отправки в режиме пользователя. Поддерживается начиная с Windows 11 версии 24H2. Дополнительные сведения см. в рабочей отправки в режиме пользователя.
DXGKQAITYPE_DIRTYBITTRACKINGCAPS
Значение: 39
KMD должен заполнить структуру DXGK_DIRTY_BIT_TRACKING_CAPS, содержащую сведения о поддержке драйвера для отслеживания грязных битов. Поддерживается начиная с Windows 11 версии 24H2. Дополнительные сведения см. в отслеживания грязных битов.
DXGKQAITYPE_DIRTYBITTRACKINGSEGMENTCAPS
Значение: 40
KMD должен заполнить структуру DXGK_DIRTY_BIT_TRACKING_SEGMENT_CAPS, содержащую сведения о поддержке драйвера для отслеживания грязных битов в определенном сегменте памяти. Поддерживается начиная с Windows 11 версии 24H2. Дополнительные сведения см. в отслеживания грязных битов.
DXGKQAITYPE_SCATTER_RESERVE
Значение: 41
KMD должен заполнить структуру DXGK_QUERYSCATTERRESERVEOUT, содержащую сведения о поддержке драйвера для точечных резервов. Поддерживается начиная с Windows 11 версии 24H2. Дополнительные сведения см. в динамической миграции на устройствах GPU-P.
DXGKQAITYPE_QUERYPAGINGBUFFERINFO
Значение: 42
DXGKQAITYPE_QUERYSEGMENTCOUNT
Значение: 43
DXGKQAITYPE_QUERYSEGMENT5
Значение: 44
DXGKQAITYPE_QUERYMMUCOUNT
Значение: 45
DXGKQAITYPE_QUERYMMUS
Значение: 46
DXGKQAITYPE_64BITONLYCAPS
Значение: 47
DXGKQAITYPE_PAGINGPROCESSGPUVASIZE
Значение: 48
KMD должен возвращать размер пространства GPU GPU для разбиения на страницы в мегабайтах. Дополнительные сведения см. в уведомления о выделении. Доступно начиная с Windows 11 версии 24H2 (WDDM 3.2).

Замечания

Dxgkrnl вызывает обратный вызов KMD DxgkDdiQueryAdapterInfo для получения сведений о конфигурации из графического адаптера. Драйвер заполняет запрошенные сведения в буфере, на который указывает элемент pOutputData структуры DXGKARG_QUERYADAPTERINFO. Просмотрите каждое значение перечисления для типа структуры для заполнения.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows Vista
заголовка d3dkmddi.h (include D3dkmddi.h)

См. также

DXGKARG_QUERYADAPTERINFO

DxgkDdiQueryAdapterInfo