функция обратного вызова PEXECUTE_DMA (video.h)

HwVidExecuteDma — это подпрограмма обратного вызова, реализованная мини-портом, которая отвечает за получение пар физического адреса и длины из списка точечной и сборной, а также для программирования оборудования для запуска фактической передачи DMA.

Синтаксис

PEXECUTE_DMA PexecuteDma;

void PexecuteDma(
  PVOID HwDeviceExtension,
  PVP_DMA_ADAPTER VpDmaAdapter,
  PVP_SCATTER_GATHER_LIST SGList,
  PVOID Context
)
{...}

Параметры

HwDeviceExtension

Указатель на область хранения минипорта для каждого адаптера. Дополнительные сведения см. в расширениях устройств.

VpDmaAdapter

Указатель на структуру VP_DMA_ADAPTER, представляющую адаптер шины master. Эта структура была возвращена вызовом VideoPortGetDmaAdapter.

SGList

Указатель на структуру VP_SCATTER_GATHER_LIST. Драйвер видеопорта заполняет сведения в этой структуре и передает эту структуру минипорту.

Context

Указатель на контекст, определенный драйвером, передаваемый из VideoPortStartDma.

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

Никакой

Замечания

Эта функция доступна в Windows XP и более поздних версиях.

Если драйвер минипорта сообщает, что устройство не поддерживает точечную или сборную, в этом подпрограмме будет передан только один элемент в списке точечных и сборок. Список точечной и сборной действителен, пока не будет вызван VideoPortCompleteDma.

Последняя задача драйвера видеопорта VideoPortStartDma заключается в вызове подпрограммы обратного вызова драйвера минипорта HwVidExecuteDma. Это обратный вызов, который фактически выполняет операцию передачи DMA.

HwVidExecuteDma должен находиться в нераспакованной памяти и не должен получать доступ к любому коду или данным, доступным для страниц.

Требования

Требование Ценность
целевая платформа Настольный
заголовка video.h (include Video.h)

См. также

VP_DMA_ADAPTER

VP_SCATTER_GATHER_LIST

VideoPortCompleteDma

VideoPortGetDmaAdapter

VideoPortStartDma