structure VIDEO_HW_INITIALIZATION_DATA (video.h)

La structure VIDEO_HW_INITIALIZATION_DATA spécifie les points d’entrée et les exigences de stockage pour le pilote miniport. Cette structure est créée sur la pile et initialisée par la fonction DriverEntry du pilote miniport.

Syntaxe

typedef struct _VIDEO_HW_INITIALIZATION_DATA {
  ULONG                          HwInitDataSize;
  INTERFACE_TYPE                 AdapterInterfaceType;
  PVIDEO_HW_FIND_ADAPTER         HwFindAdapter;
  PVIDEO_HW_INITIALIZE           HwInitialize;
  PVIDEO_HW_INTERRUPT            HwInterrupt;
  PVIDEO_HW_START_IO             HwStartIO;
  ULONG                          HwDeviceExtensionSize;
  ULONG                          StartingDeviceNumber;
  PVIDEO_HW_RESET_HW             HwResetHw;
  PVIDEO_HW_TIMER                HwTimer;
  PVIDEO_HW_START_DMA            HwStartDma;
  PVIDEO_HW_POWER_SET            HwSetPowerState;
  PVIDEO_HW_POWER_GET            HwGetPowerState;
  PVIDEO_HW_GET_CHILD_DESCRIPTOR HwGetVideoChildDescriptor;
  PVIDEO_HW_QUERY_INTERFACE      HwQueryInterface;
  ULONG                          HwChildDeviceExtensionSize;
  PVIDEO_ACCESS_RANGE            HwLegacyResourceList;
  ULONG                          HwLegacyResourceCount;
  PVIDEO_HW_LEGACYRESOURCES      HwGetLegacyResources;
  BOOLEAN                        AllowEarlyEnumeration;
  ULONG                          Reserved;
} VIDEO_HW_INITIALIZATION_DATA, *PVIDEO_HW_INITIALIZATION_DATA;

Membres

HwInitDataSize

Taille en octets de cette structure. En effet, cela indique la version de VIDEO_HW_INITIALIZATION_DATA utilisée.

AdapterInterfaceType

Est actuellement ignoré par le port vidéo et doit rester initialisé à zéro.

HwFindAdapter

Pointeur vers la fonction HwVidFindAdapter du pilote miniport, qui est requise pour tous les pilotes miniport.

HwInitialize

Pointeur vers la fonction HwVidInitialize du pilote miniport, qui est requise pour tous les pilotes miniport.

HwInterrupt

Pointeur vers la fonction HwVidInterrupt du pilote miniport, qui est nécessaire uniquement si l’adaptateur du pilote miniport génère des interruptions. Sinon, ce pointeur doit avoir la valeur NULL.

HwStartIO

Pointeur vers la fonction HwVidStartIO du pilote miniport, qui est requise pour tous les pilotes miniport.

HwDeviceExtensionSize

Spécifie la taille en octets du stockage dont le pilote miniport a besoin pour son extension de périphérique privée spécifique à l’adaptateur. Un pilote miniport utilise ce stockage pour stocker des informations par adaptateur déterminées par pilote, telles que les plages d’adresses logiques mappées pour les enregistrements de l’adaptateur et toutes les informations de contexte que le pilote conserve sur ses opérations d’E/S.

Un pointeur vers l’extension de périphérique est passé dans chaque appel effectué vers les fonctions standard du pilote miniport, à l’exception de DriverEntry, HwVidSynchronizeExecutionCallback et toutes les fonctions SvgaHwIoPortXxx . Le pilote de port vidéo alloue la mémoire pour l’extension de périphérique et l’initialise avec des zéros avant qu’elle ne soit transmise à la fonction HwVidFindAdapter du pilote miniport.

StartingDeviceNumber

Doit être défini sur zéro.

HwResetHw

Pointeur vers la fonction HwVidResetHw du pilote miniport, qui est nécessaire pour tout pilote miniport d’une carte qui ne se réinitialise pas complètement lors d’un redémarrage réversible de l’ordinateur. Les pilotes des adaptateurs SVGA qui sont entièrement réinitialisés en mode de caractères standard VGA à la réception d’une commande de type INT10, MODE3 définissent généralement cette valeur sur NULL.

HwTimer

Pointeur vers la fonction HwVidTimer d’un pilote miniport, qui est facultative. Ce pointeur peut avoir la valeur NULL.

HwStartDma

Réservé pour le système.

HwSetPowerState

Pointeur vers la fonction HwVidSetPowerState du pilote miniport, qui est requise pour tous les pilotes miniport.

HwGetPowerState

Pointeur vers la fonction HwVidGetPowerState du pilote miniport, qui est requise pour tous les pilotes miniport.

HwGetVideoChildDescriptor

Pointeur vers la fonction HwVidGetVideoChildDescriptor du pilote miniport, qui est requise pour tous les pilotes miniport.

HwQueryInterface

Pointeur vers la fonction HwVidQueryInterface du pilote miniport. Cela peut être implémenté éventuellement dans un pilote miniport qui prend en charge les interfaces de programmation externes pour la communication entre appareils, telles que la prise en charge I2C (ou I²C) pour les décodeurs MPEG. Sinon, ce membre doit avoir la valeur NULL.

HwChildDeviceExtensionSize

Taille en octets de l’extension d’appareil associée à l’appareil de sortie d’affichage. Le pilote miniport doit renseigner ce membre uniquement si le pilote miniport doit gérer les données de configuration du moniteur séparément de la configuration de la carte d’adaptateur.

HwLegacyResourceList

Pointeur vers un tableau de structures VIDEO_ACCESS_RANGE . Chaque structure décrit un port d’E/S d’appareil ou une plage de mémoire pour la carte vidéo qui n’est pas répertoriée dans l’espace de configuration PCI.

HwLegacyResourceCount

Nombre d’éléments du tableau vers lesquels HwLegacyResourceList pointe.

HwGetLegacyResources

Pointeur vers la fonction HwVidLegacyResources du pilote miniport, qui permet au pilote de spécifier ses ressources héritées en fonction de ses ID d’appareil et de fournisseur.

AllowEarlyEnumeration

Permet au pilote miniport d’énumérer ses périphériques enfants avant le démarrage de l’adaptateur ; autrement dit, le pilote de port vidéo peut appeler HwVidGetVideoChildDescriptor avant HwVidFindAdapter lorsque ce membre est défini sur TRUE.

Reserved

Réservé pour le système.

Remarques

La fonction DriverEntry d’un pilote miniport doit initialiser cette structure avec des zéros avant de définir les valeurs pertinentes dans n’importe quel membre.

Le pilote de port vidéo ignore les membres HwLegacyResourceCount et HwLegacyResourceList lorsque HwGetLegacyResources est initialisé avec un pointeur vers une implémentation HwVidLegacyResources .

Configuration requise

Condition requise Valeur
En-tête video.h (inclure Video.h)

Voir aussi

EMULATOR_ACCESS_ENTRY

HwVidLegacyResources

VIDEO_ACCESS_RANGE

VIDEO_PORT_CONFIG_INFO

VideoPortZeroMemory