Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
[Применимо только к KMDF]
Функция обратного вызова событий EvtReserveDma вызывается, когда платформа имеет зарезервированные ресурсы для выполнения и выпуска транзакции. Зарезервированные ресурсы включают регистры карт и блокировку адаптера DMA WDM.
Синтаксис
EVT_WDF_RESERVE_DMA EvtWdfReserveDma;
VOID EvtWdfReserveDma(
[in] WDFDMATRANSACTION DmaTransaction,
[in] PVOID Context
)
{...}
Параметры
[in] DmaTransaction
Дескриптор объекта транзакции DMA, представляющий транзакцию, к которой были назначены ресурсы DMA.
[in] Context
Указатель контекста, указанный в предыдущем вызове WdfDmaTransactionAllocateResources.
Возвращаемое значение
Нет
Замечания
Драйверы регистрируют функцию обратного вызова событий EvtReserveDma путем вызова WdfDmaTransactionAllocateResources.
Платформа вызывает функцию обратного вызова событий драйвера EvtReserveDma при назначении ресурсов DMA для монопольного использования с соответствующим объектом транзакций. Драйвер может инициализировать и выполнить транзакцию несколько раз при сохранении этого резервирования.
Драйвер обычно инициализирует и инициирует транзакцию из своей EvtReserveDma функцию обратного вызова событий. Дополнительные сведения о последовательности резервирования см. в резервирования ресурсов DMA.
Драйвер может вызывать WdfDmaTransactionFreeResources из EvtReserveDma.
В операционных системах, предшествующих Windows 8, необходимо использовать EvtReserveDma с включенной функцией, указывающей включение DMA в режиме пакетов. Начиная с Windows 8, EvtReserveDma также можно использовать с помощью средства включения, указывающего включение DMA в системном режиме.
Требования
Требование | Ценность |
---|---|
целевая платформа | универсальный |
минимальная версия KMDF | 1.11 |
Заголовок | wdfdmatransaction.h (include Wdf.h) |
IRQL | DISPATCH_LEVEL |