Поделиться через


Макрос NdisMCompleteDmaTransfer (ndis.h)

Функция NdisMCompleteDmaTransfer указывает, что операция передачи DMA системы завершена. Он сбрасывает системный контроллер DMA при подготовке к дальнейшей передаче DMA.

Синтаксис

void NdisMCompleteDmaTransfer(
   _S,
   _H,
   _B,
   _O,
   _L,
   _M_
);

Параметры

_S

Указатель на указанную вызывающим переменную, в которой эта функция возвращает окончательное состояние передачи DMA, которое может быть одним из следующих:

NDIS_STATUS_SUCCESS

Данные были переданы и удалены в память узла или на устройство для поддержания целостности данных.

NDIS_STATUS_RESOURCES

Контроллер DMA был выпущен, но передача данных может быть несоответствующая.

_H

Дескриптор, возвращаемый при вызов е функции miniportInitializeExфункция NdisMRegisterDmaChannel.

_B

Указатель на дескриптор буфера, переданный ранее в NdisMSetupDmaTransfer.

_O

Смещение байтов, с которого началась передача. Это значение также было передано в NdisMSetupDmaTransfer.

_L

Длина в байтах передачи. Это значение также было передано в NdisMSetupDmaTransfer.

_M_

TRUE, если передача была из узла в сетевой адаптер, как, например, операция отправки.

Возвращаемое значение

Никакой

Замечания

NdisMCompleteDmaTransfer необходимо вызвать с WriteToDevice значение TRUE, прежде чем переданные данные считаются в памяти сетевого адаптера. NdisMCompleteDmaTransfer необходимо вызвать с помощью WriteToDevice значение FALSE перед чтением передаваемых данных из памяти узла.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается для драйверов NDIS 6.0 и NDIS 5.1 (см. NdisMCompleteDmaTransfer (NDIS 5.1)) в Windows Vista. Поддерживается для драйверов NDIS 5.1 (см. NdisMCompleteDmaTransfer (NDIS 5.1)) в Windows XP.
целевая платформа Всеобщий
заголовка ndis.h (include Ndis.h)
IRQL <= DISPATCH_LEVEL
правил соответствия DDI Irql_MCO_Function(ndis)

См. также

MiniportInitializeEx

NdisMRegisterDmaChannel

NdisMSetupDmaTransfer