Partager via


énumération DXGK_QUERYADAPTERINFOTYPE (d3dkmddi.h)

L’énumération DXGK_QUERYADAPTERINFOTYPE indique le type d’informations que le pilote miniport d’affichage en mode noyau (KMD) doit retourner dans la mémoire tampon vers laquelle pOutputData pointe quand sa fonction DxgkDdiQueryAdapterInfo est appelée. Consultez DXGKARG_QUERYADAPTERINFO pour plus d’informations sur les types qui nécessitent une entrée (pInputData).

Syntax

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,
  DXGKQAITYPE_QUERYSEGMENTCOUNT,
  DXGKQAITYPE_QUERYSEGMENT5,
  DXGKQAITYPE_QUERYMMUCOUNT,
  DXGKQAITYPE_QUERYMMUS,
  DXGKQAITYPE_64BITONLYCAPS,
  DXGKQAITYPE_PAGINGPROCESSGPUVASIZE
} DXGK_QUERYADAPTERINFOTYPE;

Constantes

 
DXGKQAITYPE_UMDRIVERPRIVATE
Valeur : 0
Indique une structure de données privée définie par le propriétaire pour le pilote d’affichage.
DXGKQAITYPE_DRIVERCAPS
Valeur : 1
Le KMD doit remplir une structure DXGK_DRIVERCAPS avec ses fonctionnalités de pilote.
DXGKQAITYPE_QUERYSEGMENT
Valeur : 2
Le KMD doit remplir une structure DXGK_QUERYSEGMENTOUT avec ses informations de segment de mémoire.
DXGKQAITYPE_RESERVED
Valeur : 3
Réservé pour le système. N’utilisez pas dans votre pilote. Cette constante se produit à partir de Windows 7.
DXGKQAITYPE_QUERYSEGMENT2
Valeur : 4
Réservé pour le système. N’utilisez pas dans votre pilote. Cette constante se produit à partir de Windows 7.
DXGKQAITYPE_QUERYSEGMENT3
Valeur : 5
Le KMD doit remplir une structure DXGK_QUERYSEGMENTOUT3 avec des informations de segment de mémoire. Pris en charge à partir de Windows 8.
DXGKQAITYPE_NUMPOWERCOMPONENTS
Valeur : 6
Le miniport d’affichage doit fournir une valeur UINT qui spécifie le nombre de composants d’alimentation qu’il utilise. Pris en charge à partir de Windows 8.
DXGKQAITYPE_POWERCOMPONENTINFO
Valeur : 7
Le KMD doit remplir une structure DXGK_POWER_RUNTIME_COMPONENT avec des informations sur le nièmecomposant d’alimentation, où n est l’index de composant spécifié par DXGKARG_QUERYADAPTERINFO.pInputData dans un appel à DxgkDdiQueryAdapterInfo. Pris en charge à partir de Windows 8.
DXGKQAITYPE_PREFERREDGPUNODE
Valeur : 8
Réservé pour le système. N’utilisez pas dans votre pilote. Cette constante se produit à partir de Windows 8.
DXGKQAITYPE_POWERCOMPONENTPSTATEINFO
Valeur : 9
Réservé pour le système. N’utilisez pas dans votre pilote. Prise en charge à partir de Windows 8.1.
DXGKQAITYPE_HISTORYBUFFERPRECISION
Valeur : 10
Le KMD doit remplir une structure DXGKARG_HISTORYBUFFERPRECISION avec des informations sur la précision des données de mémoire tampon d’historique qu’il utilise. Prise en charge à partir de Windows 8.1.
DXGKQAITYPE_QUERYSEGMENT4
Valeur : 11
Le KMD doit remplir une structure DXGK_QUERYSEGMENTOUT4 pour indiquer ses informations de segment de mémoire. Pris en charge à partir de Windows 10.
DXGKQAITYPE_SEGMENTMEMORYSTATE
Valeur : 12
Le KMD doit remplir une structure DXGK_MEMORYRANGE avec ses plages de mémoire incorrectes. Pris en charge à partir de Windows 10.
DXGKQAITYPE_GPUMMUCAPS
Valeur : 13
Le KMD doit remplir une structure DXGK_GPUMMUCAPS avec ses fonctionnalités de gestion de la mémoire virtuelle. Pris en charge à partir de Windows 10.
DXGKQAITYPE_PAGETABLELEVELDESC
Valeur : 14
Réservé pour le système. N’utilisez pas dans votre pilote. Cette constante se produit à partir de Windows 10.
DXGKQAITYPE_PHYSICALADAPTERCAPS
Valeur : 15
Réservé pour le système. N’utilisez pas dans votre pilote. Cette constante se produit à partir de Windows 10.
DXGKQAITYPE_DISPLAY_DRIVERCAPS_EXTENSION
Valeur : 16
Réservé pour le système. N’utilisez pas dans votre pilote. Cette constante se produit à partir de Windows 10.
DXGKQAITYPE_INTEGRATED_DISPLAY_DESCRIPTOR
Valeur : 17
Pris en charge à partir de Windows 10 version 1703. Indique une demande pour un descripteur de panneau intégré où la mémoire tampon d’entrée de la requête sera une structure DXGK_QUERYINTEGRATEDDISPLAYIN et la mémoire tampon de sortie est une structure DXGK_QUERYINTEGRATEDDISPLAYOUT .

Bien que cette fonction s’adresse à une cible, seuls les verrous d’adaptateur DxgKrnl sont pris en charge par cet appel, et non les verrous d’appareil enfants. Dans la pratique, étant donné que cet appel sera effectué avant l’exposition de l’appareil enfant, il ne doit pas y avoir d’appels DDI simultanés qui répondent à la même cible.

REMARQUE : Contrairement à la plupart des appels QueryAdapterInfo, la taille de la mémoire tampon de sortie est variable, bien qu’elle soit toujours connue à l’avance à partir du champ DescriptorLength de la structure DXGK_INTEGRATED_DISPLAY_CHILD pour l’ID cible. La taille de la mémoire tampon de sortie est la suivante :
DescriptorLength + FIELD_OFFSET( DXGK_QUERYINTEGRATEDDISPLAYOUT, Descriptor ).
DXGKQAITYPE_UEFIFRAMEBUFFERRANGES
Valeur : 18
Indique la demande pour les plages de mémoire tampon de trame UEFI. Pris en charge à partir de Windows 10 version 1703.
DXGKQAITYPE_QUERYCOLORIMETRYOVERRIDES
Valeur : 19
Pris en charge à partir de Windows 10 version 1703. Indique une demande de remplacement de colorimétrie pour un affichage externe, où la mémoire tampon d’entrée de la requête sera une structure de DXGK_QUERYCOLORIMETRYOVERRIDESIN , contenant uniquement l’ID cible adressé et la mémoire tampon de sortie est une structure DXGK_COLORIMETRY dans laquelle le pilote écrit des remplacements pour le moniteur attaché à la cible.

Bien que cette fonction s’adresse à une cible, seuls les verrous d’adaptateur DxgKrnl sont pris en charge par cet appel, et non les verrous d’appareil enfants. Étant donné que cet appel sera effectué avant l’exposition de l’appareil enfant, il ne doit pas y avoir d’appels DDI simultanés qui répondent à la même cible.

La mémoire tampon de sortie est mise à zéro lorsqu’elle est passée au pilote. Si le pilote n’a pas de remplacements pour le moniteur, il doit retourner STATUS_SUCCESS et laisser la mémoire tampon de sortie à zéro. Si le pilote a des remplacements, il remplit tous les champs du DXGK_COLORIMETRY pour décrire les fonctionnalités du moniteur, car le système d’exploitation n’accepte pas les remplacements partiels.
DXGKQAITYPE_DISPLAYID_DESCRIPTOR
Valeur : 20
Indique une demande pour un descripteur de panneau intégré où la mémoire tampon d’entrée de la requête sera une structure DXGK_QAITARGETIN et la mémoire tampon de sortie est une structure DXGK_QUERYINTEGRATEDDISPLAYOUT . Pris en charge à partir de Windows 10, version 1709.
DXGKQAITYPE_FRAMEBUFFERSAVESIZE
Valeur : 21
Le KMD doit remplir une structure DXGK_FRAMEBUFFERSAVEAREA avec la taille de la mémoire tampon de trame pour enregistrer dans la mémoire système pendant les transitions d’alimentation. Pris en charge à partir de Windows 10, version 1803.
DXGKQAITYPE_HARDWARERESERVEDRANGES
Valeur : 22
Le KMD doit remplir une structure DXGK_HARDWARERESERVEDRANGES avec ses plages de mémoire réservées matérielles. Pris en charge à partir de Windows 10, version 1803.
DXGKQAITYPE_INTEGRATED_DISPLAY_DESCRIPTOR2
Valeur : 23
Pris en charge à partir de Windows 10, version 1803. Indique une demande pour un descripteur de panneau intégré où la mémoire tampon d’entrée de la requête sera une structure DXGK_QAITARGETIN et la mémoire tampon de sortie est une structure de DXGK_QUERYINTEGRATEDDISPLAYOUT2 . Cette requête remplace l’utilisation de la requête DXGKQAITYPE_INTEGRATED_DISPLAY_DESCRIPTOR pour les pilotes WDDM 2.4.

Les appareils enfants TypeIntegratedDisplay sont signalés en appelant DxgkDdiQueryAdapterInfo avec la valeur Type définie sur cette valeur.
DXGKQAITYPE_NODEPERFDATA
Valeur : 24
Le KMD doit remplir une structure DXGK_NODE_PERFDATA qui représente les données de performances collectées par moteur à partir d’un adaptateur sur une base d’intervalles. Pris en charge à partir de Windows 10, version 1803.
DXGKQAITYPE_ADAPTERPERFDATA
Valeur : 25
Le KMD doit remplir une structure DXGK_ADAPTER_PERFDATA qui représente les données de performances collectées par adaptateur sur une base d’intervalle. Pris en charge à partir de Windows 10, version 1803.
DXGKQAITYPE_ADAPTERPERFDATA_CAPS
Valeur : 26
Le KMD doit remplir une structure DXGK_ADAPTER_PERFDATACAPS qui représente les fonctionnalités de données statiques et interrogées une fois par GPU pendant l’initialisation. Pris en charge à partir de Windows 10, version 1803.
DXGKQAITYPE_GPUVERSION
Valeur : 27
Le KMD doit remplir une structure DXGK_GPUVERSION utilisée pour collecter une fois la version du BIOS et le nom de l’architecture GPU lors de l’initialisation du GPU. Pris en charge à partir de Windows 10, version 1803.
DXGKQAITYPE_DEVICE_TYPE_CAPS
Valeur : 28
Le KMD doit remplir une structure DXGK_DEVICE_TYPE_CAPS qui décrit le type de fonctionnalités d’un appareil. Prise en charge à partir de Windows 10, version 1809.
DXGKQAITYPE_WDDMDEVICECAPS
Valeur : 29
Le KMD doit remplir une structure DXGK_WDDMDEVICECAPS qui contient les fonctionnalités WDDM interrogées par le système d’exploitation lors de l’initialisation de l’appareil. Pris en charge à partir de Windows 10, version 1903.
DXGKQAITYPE_GPUPCAPS
Valeur : 30
Le KMD doit remplir une structure DXGK_GPUPCAPS qui contient les fonctionnalités GPU d’un pilote d’affichage en mode noyau. Pris en charge à partir de Windows 10, version 1903.
DXGKQAITYPE_QUERYTARGETGAMMACAPS
Valeur : 31
Le KMD doit remplir une structure DXGK_TARGET_GAMMA_CAPS qui décrit les fonctionnalités gamma du KMD. Pris en charge à partir de Windows 10, version 1903.
DXGKQAITYPE_SCANOUT_CAPS
Valeur : 33
Le KMD doit remplir une structure DXGK_QUERY_SCANOUT_CAPS_OUT qui décrit les fonctionnalités d’analyse du pilote. Pris en charge à partir de Windows 10, version 1903.
DXGKQAITYPE_PHYSICAL_MEMORY_CAPS
Valeur : 34
Le KMD doit remplir une structure DXGK_PHYSICAL_MEMORY_CAPS qui décrit les restrictions de mémoire physique (l’adresse physique visible la plus élevée) de l’appareil. Pris en charge à partir de Windows Server 2022 (WDDM 2.9).

Consultez DXGKQAITYPE_IOMMU_CAPS pour plus d’informations sur la façon d’indiquer la prise en charge des pilotes pour le remapping linéaire IOMMU.
DXGKQAITYPE_IOMMU_CAPS
Valeur : 35
Le KMD doit remplir une structure DXGK_IOMMU_CAPS qui indique que le remapping linéaire IOMMU est pris en charge par le pilote. Pris en charge à partir de Windows Server 2022 (WDDM 2.9). Pour indiquer la prise en charge de la réappingation linéaire, le pilote doit également informer Dxgkernel de ses restrictions de mémoire physique via la limite DXGKQAITYPE_PHYSICAL_MEMORY_CAPS .

Le remapping logique ne peut être effectué que si aucune mémoire physique existante n’est référencée par l’appareil, de sorte que la séquence d’appels de Dxgkrnl est la suivante :

* Appelez DxgkDdiAddDevice pour toutes les cartes physiques, afin que le pilote puisse collecter des informations pour toutes les cartes physiques liées.

* Appelez DxgkDdiQueryAdapterInfo avec DXGKQAITYPE_PHYSICAL_MEMORY_CAPS et DXGKQAITYPE_IOMMU_CAPS afin qu’il puisse ensuite créer et attacher l’appareil à un domaine IOMMU avant d’accéder à toute mémoire.

* Appelez DxgkDdiStartDevice pour démarrer l’appareil.
DXGKQAITYPE_HARDWARERESERVEDRANGES2
Valeur : 36
DXGKQAITYPE_NATIVE_FENCE_CAPS
Valeur : 37
Le KMD doit remplir une structure DXGK_NATIVE_FENCE_CAPS qui contient les détails de prise en charge du pilote pour les clôtures GPU natives. Pris en charge à partir de Windows 11, version 24H2. Pour plus d’informations, consultez Clôtures GPU natives.
DXGKQAITYPE_USERMODESUBMISSION_CAPS
Valeur : 38
Le KMD doit remplir une structure de DXGK_USERMODESUBMISSION_CAPS qui contient les détails de prise en charge du pilote pour la soumission de travail en mode utilisateur. Pris en charge à partir de Windows 11, version 24H2. Pour plus d’informations, consultez Soumission de travail en mode utilisateur.
DXGKQAITYPE_DIRTYBITTRACKINGCAPS
Valeur : 39
Le KMD doit remplir une structure DXGK_DIRTY_BIT_TRACKING_CAPS qui contient les détails de la prise en charge du pilote pour le suivi des sale bits. Pris en charge à partir de Windows 11, version 24H2. Pour plus d’informations, consultez Suivi des bits sales.
DXGKQAITYPE_DIRTYBITTRACKINGSEGMENTCAPS
Valeur : 40
Le KMD doit remplir une structure de DXGK_DIRTY_BIT_TRACKING_SEGMENT_CAPS qui contient les détails de prise en charge du pilote pour le suivi de sale bits sur un segment de mémoire spécifique. Pris en charge à partir de Windows 11, version 24H2. Pour plus d’informations, consultez Suivi des bits sales.
DXGKQAITYPE_SCATTER_RESERVE
Valeur : 41
Le KMD doit remplir une structure DXGK_QUERYSCATTERRESERVEOUT qui contient les détails de prise en charge du pilote pour la réserve de points. Pris en charge à partir de Windows 11, version 24H2. Pour plus d’informations, consultez Migration dynamique sur les appareils GPU-P.

Remarques

Dxgkrnl appelle le rappel DxgkDdiQueryAdapterInfo du KMD pour récupérer les informations de configuration de la carte graphique. Le pilote remplit les informations demandées dans la mémoire tampon pointée par le membre pOutputData de la structure DXGKARG_QUERYADAPTERINFO . Consultez chaque valeur d’énumération pour connaître le type de structure à remplir.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista
En-tête d3dkmddi.h (inclure D3dkmddi.h)

Voir aussi

DXGKARG_QUERYADAPTERINFO

DxgkDdiQueryAdapterInfo