VideoPortQueryServices - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// video.h

VIDEOPORT_API VP_STATUS VideoPortQueryServices(
  [in]      IN PVOID               HwDeviceExtension,
  [in]      IN VIDEO_PORT_SERVICES ServicesType,
  [in, out] IN OUT PINTERFACE      Interface
);
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (nf-video-videoportqueryservices)

VideoPortQueryServices function

Description

The VideoPortQueryServices function exposes a specified interface that is implemented by the video port driver.

Parameters

HwDeviceExtension [in]

Pointer to the miniport driver's device extension.

ServicesType [in]

A value from the VIDEO_PORT_SERVICES enumerated type that specifies which interface is being requested.

Interface [in, out]

Pointer to an INTERFACE structure, which contains basic information about the requested interface. See the following Remarks section for more information.

Return value

If VideoPortQueryServices succeeds, it returns NO_ERROR; otherwise, it returns an error code.

Remarks

If the ServicesType parameter is set to VideoPortServicesI2C, the Interface parameter must be a pointer to a VIDEO_PORT_I2C_INTERFACE structure, cast as a pointer to an INTERFACE structure.

Similarly, if the ServicesType parameter is set to VideoPortServicesAGP, the Interface parameter must be a pointer to either a VIDEO_PORT_AGP_INTERFACE structure, or a VIDEO_PORT_AGP_INTERFACE_2 structure, each cast as a pointer to an INTERFACE structure.

The VIDEO_PORT_AGP_INTERFACE and VIDEO_PORT_AGP_INTERFACE_2 structures are nearly identical, except that the latter structure has a member that points to the AgpSetRate function, which is used to reset the transfer rate for an AGP chipset. A video miniport driver querying AGP support should call VideoPortQueryServices first with Interface pointing to a VIDEO_PORT_AGP_INTERFACE_2 structure. If that call fails, the miniport driver can then make another call to VideoPortQueryServices, this time with Interface pointing to a VIDEO_PORT_AGP_INTERFACE structure.

If the ServicesType parameter is set to VideoPortServicesInt10, the Interface parameter must be a pointer to a VIDEO_PORT_INT10_INTERFACE structure, cast as a pointer to an INTERFACE structure.

If the ServicesType parameter is set to VideoPortServicesDebugReport, the Interface parameter must be a pointer to a VIDEO_PORT_DEBUG_REPORT_INTERFACE structure, cast as a pointer to an INTERFACE structure.

If the ServicesType parameter is set to VideoPortServicesWCMemoryProtection, the Interface parameter must be a pointer to a VIDEO_PORT_WCMEMORYPROTECTION_INTERFACE structure, cast as a pointer to an INTERFACE structure.

See also

AgpSetRate

INTERFACE

VIDEO_PORT_AGP_INTERFACE

VIDEO_PORT_AGP_INTERFACE_2

VIDEO_PORT_DEBUG_REPORT_INTERFACE

VIDEO_PORT_I2C_INTERFACE

VIDEO_PORT_INT10_INTERFACE

VIDEO_PORT_WCMEMORYPROTECTION_INTERFACE