PVIDEO_HW_INTERRUPT Rückruffunktion (video.h)
HwVidInterrupt erkennt und schließt Interrupts, die von der zugeordneten Grafikkarte generiert wurden.
Syntax
PVIDEO_HW_INTERRUPT PvideoHwInterrupt;
BOOLEAN PvideoHwInterrupt(
PVOID HwDeviceExtension
)
{...}
Parameter
HwDeviceExtension
Zeiger auf den Speicherbereich des Miniporttreibers pro Adapter. Weitere Informationen finden Sie unter Geräteerweiterungen.
Rückgabewert
Wenn HwVidInterrupt feststellt, dass die zugehörige Hardware den Interrupt nicht generiert hat, gibt es FALSE zurück. Andernfalls muss der Interrupt auf dem Adapter geschlossen werden, bevor true zurückgegeben wird.
Hinweise
Ein Miniporttreiber muss HwVidInterrupt implementieren, wenn seine Grafikkarte Interrupts generiert.
Zunächst sollte HwVidInterrupt ermitteln, ob der Adapter den Interrupt tatsächlich verursacht hat. Andernfalls sollte diese Funktion sofort FALSE zurückgeben, sodass der ISR des Geräts, das den Interrupt verursacht hat, sofort aufgerufen wird.
Andernfalls ist HwVidInterrupt in der Regel für den Abschluss des E/A-Vorgangs verantwortlich, der den Interrupt verursacht hat, und sollte folgendes tun:
- Schließen Sie den Interrupt auf dem Adapter (erforderlich).
- Schließen Sie den angeforderten Vorgang ab, der den Interrupt verursacht hat.
- Geben Sie die Steuerung so schnell wie möglich zurück (erforderlich).
Wenn eine andere Miniporttreiberfunktion Arbeitsspeicher gemeinsam verwendet, z. B. teil der HwDeviceExtension, mit HwVidInterrupt, muss videoPortSynchronizeExecution aufgerufen werden, um den Zugriff auf den freigegebenen Bereich zu synchronisieren.
HwVidInterrupt kann nur die folgenden vom System bereitgestellten VideoPortXxx-Routinen aufrufen (siehe Vom Videoporttreiber exportierte Funktionen):
-
VideoPortStallExecution für nur wenige Mikrosekunden. HwVidInterrupt sollte nach Möglichkeit vermeiden, diese Funktion aufzurufen.
- Alle VideoPortReadXxx - und VideoPortWriteXxx-Routinen .
-
VideoPortDisableInterrupt (veraltet)
-
VideoPortEnableInterrupt (veraltet)
Eine HwVidInterrupt-Funktion kann nicht ausgelagert werden, und auch keine Funktion, die sie aufruft.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | video.h (einschließen von Video.h) |
Weitere Informationen
Vom Videoporttreiber exportierte Funktionen