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


Функция обратного вызова DXGKDDIPOWERRUNTIMECONTROLREQUEST (d3dkmddi.h)

Вызывается подключаемым модулем Power Engine (PEP) для обмена информацией с драйвером минипорта дисплея. Также вызывается подсистемой ядра графики Microsoft DirectX, чтобы уведомить драйвер минипорта дисплея о определенных событиях.

Синтаксис

DXGKDDIPOWERRUNTIMECONTROLREQUEST Dxgkddipowerruntimecontrolrequest;

NTSTATUS Dxgkddipowerruntimecontrolrequest(
  IN_CONST_HANDLE DriverContext,
  IN LPCGUID PowerControlCode,
  IN PVOID InBuffer,
  IN SIZE_T InBufferSize,
  OUT PVOID OutBuffer,
  IN SIZE_T OutBufferSize,
  OUT PSIZE_T BytesReturned
)
{...}

Параметры

DriverContext

Дескриптор для блока контекста, связанного с адаптером отображения. Функция драйвера минипорта отображения DxgkDdiAddDevice ранее предоставила этот дескриптор подсистеме ядра графики DirectX.

PowerControlCode

Указатель на GUID, определяющий значение запроса элемента управления PEP. Дополнительные сведения см. в разделе "Примечания".

InBuffer

Необязательный указатель на входной буфер.

InBufferSize

Размер буфера в байтах, на который InBuffer указывает.

OutBuffer

Необязательный указатель на выходной буфер.

OutBufferSize

Размер буфера в байтах, на который OutBuffer указывает.

BytesReturned

Необязательный указатель на буфер, содержащий количество байтов, записанных драйвером мини-порта отображения в выходной буфер.

Возвращаемое значение

Возвращает STATUS_SUCCESS, если он успешно выполнен. В противном случае возвращается один из кодов ошибок, определенных в Ntstatus.h.

Замечания

Операционная система вызывает DxgkDdiPowerRuntimeControlRequest только в том случае, если драйвер мини-порта дисплея указывает на поддержку, задав DXGK_DRIVERCAPS.SupportRuntimePowerManagementTRUE.

идентификаторы GUID, используемые подключаемым модулем Power Engine (PEP)

PEP использует следующие идентификаторы GUID, определенные в D3dkmddi.h, для обмена информацией с драйвером мини-порта дисплея. Драйвер порта отображения использует эти идентификаторы GUID для выдачи событий трассировки событий для Windows (ETW), которые полезны для профилирования проблем с производительностью драйвера.
GUID_DXGKDDI_POWER_VOLTAGE_UP
Увеличьте напряжение.
GUID_DXGKDDI_POWER_VOLTAGE_DOWN
Уменьшите напряжение.
GUID_DXGKDDI_POWER_VOLTAGE
Измените напряжение, но водитель не знает, является ли изменение увеличением или уменьшением.
GUID_DXGKDDI_POWER_CLOCK_UP
Увеличьте параметр часов.
GUID_DXGKDDI_POWER_CLOCK_DOWN
Уменьшите параметр часов.
GUID_DXGKDDI_POWER_CLOCK
Измените параметр часов, но драйвер не знает, является ли изменение увеличением или уменьшением.
GUID_DXGKDDI_POWER_BANDWIDTH_UP
Увеличьте пропускную способность.
GUID_DXGKDDI_POWER_BANDWIDTH_DOWN
Уменьшите пропускную способность.
GUID_DXGKDDI_POWER_BANDWIDTH
Измените пропускную способность, но драйвер не знает, является ли изменение увеличением или уменьшением.

идентификаторы GUID, используемые подсистемой ядра графики DirectX

Подсистема ядра графики DirectX использует следующие графические идентификаторы, определенные в D3dkmddi.h, для уведомления драйвера минипорта отображения о определенных событиях.
GUID_DXGKDDI_POWER_MANAGEMENT_PREPARE_TO_START
Используется после того, как подсистема ядра графики DirectX регистрирует устройство для управления питанием среды выполнения, но до запуска устройства. После вызова этой функции с помощью этого GUID драйвер мини-порта отображения может вызывать следующие функции:
GUID_DXGKDDI_POWER_MANAGEMENT_STARTED
Используется после запуска подсистемы ядра графики DirectX среды выполнения. После вызова этой функции с помощью этого GUID драйвер мини-порта отображения может вызывать любые функции среды выполнения питания.
GUID_DXGKDDI_POWER_MANAGEMENT_STOPPED
Используется непосредственно перед подсистемой ядра графики DirectX отменяет регистрацию устройства для управления питанием среды выполнения. После вызова этой функции с помощью этого GUID драйвер мини-порта дисплея не должен вызывать какие-либо функции среды выполнения питания.

синхронизация

Эту функцию можно вызывать одновременно из нескольких потоков выполнения.

Операционная система гарантирует, что эта функция соответствует режиму синхронизации нулевого уровня, как определено в потоки и нулевойсинхронизации.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 8
минимальный поддерживаемый сервер Windows Server 2012
целевая платформа Настольный
заголовка d3dkmddi.h (include D3dkmddi.h)
IRQL <=DISPATCH_LEVEL

См. также

DXGKARG_QUERYADAPTERINFO

DXGK_DRIVERCAPS

DxgkCbSetPowerComponentActive

DxgkCbSetPowerComponentLatency

DxgkCbSetPowerComponentResidency

DxgkDdiAddDevice