Freigeben über


PFREE_ADAPTER_CHANNEL Rückruffunktion (wdm.h)

Die FreeAdapterChannel Routine gibt den DMA-Systemcontroller frei, wenn ein Treiber alle DMA-Vorgänge abgeschlossen hat, die zum Erfüllen des aktuellen IRP erforderlich sind.

Syntax

PFREE_ADAPTER_CHANNEL PfreeAdapterChannel;

void PfreeAdapterChannel(
  [in] PDMA_ADAPTER DmaAdapter
)
{...}

Parameter

[in] DmaAdapter

Zeiger auf die DMA_ADAPTER Struktur, die von IoGetDmaAdapter zurückgegeben wird, die den Busmasteradapter oder DMA-Controller darstellt.

Rückgabewert

Nichts

Bemerkungen

FreeAdapterChannel ist keine Systemroutine, die direkt anhand des Namens aufgerufen werden kann. Diese Routine kann nur durch Zeiger von der in einer DMA_OPERATIONS Struktur zurückgegebenen Adresse aufgerufen werden. Treiber rufen die Adresse dieser Routine ab, indem sie IoGetDmaAdapteraufruft.

Nachdem ein Treiber alle Daten übertragen und FlushAdapterBuffersaufgerufen hat, wird FreeAdapterChannel aufgerufen, um den DMA-Systemcontroller freizugeben, der zuvor einem Aufruf von AllocateAdapterChannelzugeordnet wurde.

FreeAdapterChannel alle Kartenregister frei, die durch einen früheren Aufruf von AllocateAdapterChannelzugeordnet wurden. Ein Treiber ruft diese Routine nur auf, wenn die AdapterControl- Routine KeepObject-zurückgibt.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Ab Windows 2000 verfügbar.
Zielplattform- Desktop
Header- wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
IRQL- DISPATCH_LEVEL
DDI-Complianceregeln IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm)

Siehe auch

AllocateAdapterChannel

DMA_ADAPTER

DMA_OPERATIONS

FlushAdapterBuffers

FreeMapRegisters-

IoGetDmaAdapter-

MapTransfer