Compartir a través de


estructura de VIDEO_HW_INITIALIZATION_DATA (video.h)

La estructura VIDEO_HW_INITIALIZATION_DATA especifica los puntos de entrada y los requisitos de almacenamiento para el controlador de minipuerto. Esta estructura se crea en la pila y se inicializa mediante la función DriverEntry del controlador de minipuerto.

Sintaxis

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;

Miembros

HwInitDataSize

Es el tamaño en bytes de esta estructura. En efecto, esto indica la versión de VIDEO_HW_INITIALIZATION_DATA que se usa.

AdapterInterfaceType

Actualmente se omite por el puerto de vídeo y debe permanecer inicializado en cero.

HwFindAdapter

Puntero a la función HwVidFindAdapter del controlador de minipuer, que es necesaria para todos los controladores de minipuerto.

HwInitialize

Puntero a la función HwVidInitialize del controlador de minipuerto, que es necesaria para todos los controladores de minipuerto.

HwInterrupt

Puntero a la función HwVidInterrupt del controlador de minipuerto, que solo es necesario si el adaptador del controlador de minipuerto genera interrupciones. De lo contrario, este puntero debe ser NULL.

HwStartIO

Puntero a la función HwVidStartIO del controlador de minipuerto, que es necesaria para todos los controladores de minipuerto.

HwDeviceExtensionSize

Especifica el tamaño en bytes del almacenamiento que requiere el controlador de minipuerto para su extensión de dispositivo privada y específica del adaptador. Un controlador de minipuerto usa este almacenamiento para contener información por adaptador determinada por controlador, como los intervalos de direcciones lógicas asignados para los registros del adaptador y la información de contexto que mantiene el controlador sobre sus operaciones de E/S.

Se pasa un puntero a la extensión del dispositivo en cada llamada realizada a las funciones estándar del controlador de miniport, excepto DriverEntry, HwVidSynchronizeExecutionCallback y cualquier función SvgaHwIoPortXxx . El controlador de puerto de vídeo asigna la memoria para la extensión del dispositivo y la inicializa con ceros antes de pasarla a la función HwVidFindAdapter del controlador de miniporte.

StartingDeviceNumber

Debe establecerse en cero.

HwResetHw

Puntero a la función HwVidResetHw del controlador de minipuerto, que es necesario para cualquier controlador de miniporte de un adaptador que no se restablezca completamente en un reinicio suave de la máquina. Los controladores de adaptadores SVGA que se restablecen completamente a un modo de caracteres estándar VGA al recibir un comando INT10, MODE3-type normalmente establecen esto en NULL.

HwTimer

Puntero a la función HwVidTimer de un controlador de minipuerto, que es opcional. Este puntero puede ser NULL.

HwStartDma

Reservado para uso del sistema.

HwSetPowerState

Puntero a la función HwVidSetPowerState del controlador de minipuerto, que es necesaria para todos los controladores de minipuerto.

HwGetPowerState

Puntero a la función HwVidGetPowerState del controlador de minipuerto, que es necesaria para todos los controladores de minipuerto.

HwGetVideoChildDescriptor

Puntero a la función HwVidGetVideoChildDescriptor del controlador de minipuerto, que es necesaria para todos los controladores de minipuerto.

HwQueryInterface

Puntero a la función HwVidQueryInterface del controlador de miniporte. Esto se puede implementar opcionalmente en un controlador de minipuerto que admita interfaces de programación externas para la comunicación entre dispositivos, como la compatibilidad con I2C (o I²C) para descodificadores MPEG. De lo contrario, este miembro debe establecerse en NULL.

HwChildDeviceExtensionSize

Es el tamaño en bytes de la extensión de dispositivo asociada al dispositivo de salida de pantalla. El controlador de minipuerto solo debe rellenar este miembro si el controlador de minipuerto necesita administrar los datos de configuración del monitor por separado de la configuración de la placa del adaptador.

HwLegacyResourceList

Puntero a una matriz de estructuras de VIDEO_ACCESS_RANGE . Cada estructura describe un puerto de E/S de dispositivo o un intervalo de memoria para el adaptador de vídeo que no aparece en el espacio de configuración pci.

HwLegacyResourceCount

Es el número de elementos de la matriz a los que apunta HwLegacyResourceList .

HwGetLegacyResources

Puntero a la función HwVidLegacyResources del controlador de miniporte, que permite al controlador especificar sus recursos heredados en función de sus identificadores de dispositivo y proveedor.

AllowEarlyEnumeration

Permite al controlador de minipuerto enumerar sus dispositivos secundarios antes de que se inicie el adaptador; Es decir, el controlador de puerto de vídeo puede llamar a HwVidGetVideoChildDescriptor antes de HwVidFindAdapter cuando este miembro está establecido en TRUE.

Reserved

Reservado para uso del sistema.

Comentarios

Una función DriverEntry del controlador de miniporte debe inicializar esta estructura con ceros antes de establecer los valores pertinentes en cualquier miembro.

El controlador de puerto de vídeo omitirá los miembros HwLegacyResourceCount y HwLegacyResourceList cuando HwGetLegacyResources se inicialice con un puntero a una implementación de HwVidLegacyResources .

Requisitos

Requisito Valor
Header video.h (incluir Video.h)

Consulte también

EMULATOR_ACCESS_ENTRY

HwVidLegacyResources

VIDEO_ACCESS_RANGE

VIDEO_PORT_CONFIG_INFO

VideoPortZeroMemory