Bagikan melalui


PFREE_MAP_REGISTERS fungsi panggilan balik (wdm.h)

Rutinitas FreeMapRegisters merilis sekumpulan register peta yang disimpan dari panggilan ke AllocateAdapterChannel.

Sintaks

PFREE_MAP_REGISTERS PfreeMapRegisters;

void PfreeMapRegisters(
  [in] PDMA_ADAPTER DmaAdapter,
  [in] PVOID MapRegisterBase,
  [in] ULONG NumberOfMapRegisters
)
{...}

Parameter

[in] DmaAdapter

Penunjuk ke struktur DMA_ADAPTER yang dikembalikan oleh IoGetDmaAdapter yang mewakili adaptor bus-master atau pengontrol DMA.

[in] MapRegisterBase

Menentukan register peta yang dialokasikan untuk operasi DMA. Sistem meneruskan nilai ini ke rutinitas AdapterControl driver.

[in] NumberOfMapRegisters

Menentukan jumlah register peta yang akan dirilis. Nilai ini harus cocok dengan nomor yang ditentukan dalam panggilan sebelumnya ke AllocateAdapterChannel.

Nilai kembali

Tidak ada

Keterangan

FreeMapRegisters bukanlah rutinitas sistem yang dapat dipanggil langsung berdasarkan nama. Rutinitas ini hanya dapat dipanggil oleh penunjuk dari alamat yang dikembalikan dalam struktur DMA_OPERATIONS . Driver mendapatkan alamat rutinitas ini dengan memanggil IoGetDmaAdapter.

Ketika driver perangkat bus-master telah menyelesaikan permintaan transfer DMA berbasis paket saat ini, ia memanggil FreeMapRegisters untuk merilis register peta yang sebelumnya dialokasikan oleh panggilan ke AllocateAdapterChannel dan dipertahankan karena rutinitas AdapterControl-nya mengembalikan DeallocateObjectKeepRegisters. Driver harus memanggil FreeMapRegisters setelah memanggil FlushAdapterBuffers.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 2000.
Target Platform Desktop
Header wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h)
IRQL DISPATCH_LEVEL
Aturan kepatuhan DDI IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm)

Lihat juga

AllocateAdapterChannel

DMA_ADAPTER

DMA_OPERATIONS

IoGetDmaAdapter

MapTransfer