PEXECUTE_DMA Rückruffunktion (video.h)
HwVidExecuteDma ist eine vom Miniport-Treiber implementierte Rückrufroutine, die für das Abrufen physischer Adress-/Längenpaare aus einer Punkt-/Erfassungsliste und für die Programmierung der Hardware zum Starten der tatsächlichen DMA-Übertragung verantwortlich ist.
Syntax
PEXECUTE_DMA PexecuteDma;
void PexecuteDma(
PVOID HwDeviceExtension,
PVP_DMA_ADAPTER VpDmaAdapter,
PVP_SCATTER_GATHER_LIST SGList,
PVOID Context
)
{...}
Parameter
HwDeviceExtension
Zeiger auf den Speicherbereich des Miniporttreibers pro Adapter. Weitere Informationen finden Sie unter Geräteerweiterungen.
VpDmaAdapter
Zeiger auf die VP_DMA_ADAPTER-Struktur, die den Bus-master-Adapter darstellt. Diese Struktur wurde durch einen Aufruf von VideoPortGetDmaAdapter zurückgegeben.
SGList
Zeiger auf eine VP_SCATTER_GATHER_LIST-Struktur . Der Videoporttreiber füllt die Informationen in dieser Struktur aus und übergibt diese Struktur an den Miniporttreiber.
Context
Zeiger auf den vom Treiber bestimmten Kontext, der von VideoPortStartDma übergeben wird.
Rückgabewert
Keine
Bemerkungen
Diese Funktion ist in Windows XP und höher verfügbar.
Wenn der Miniporttreiber meldet, dass das Gerät scatter/gather nicht unterstützt, wird nur ein einzelnes Element in der Scatter/Gather-Liste an diese Routine übergeben. Die Scatter/Gather-Liste ist gültig, bis VideoPortCompleteDma aufgerufen wird.
Die letzte Aufgabe, die die VideoPortStartDma-Funktion des Videoporttreibers ausführt, besteht darin, die HwVidExecuteDma-Rückrufroutine des Miniporttreibers aufzurufen. Es ist dieser Rückruf, der den DMA-Übertragungsvorgang tatsächlich ausführt.
HwVidExecuteDma muss sich im Nicht-Auslagerungsspeicher befinden und darf nicht auf ausgelagerten Code oder Daten zugreifen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | video.h (Video.h einschließen) |