다음을 통해 공유


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_

예를 들어 전송 작업이 호스트에서 NIC로 전송된 경우 TRUE입니다.

반환 값

없음

설명

전송된 데이터가 NIC의 메모리에 있는 것으로 간주되기 전에 WriteToDeviceTRUE로 설정하여 NdisMCompleteDmaTransfer를 호출해야 합니다. 전송된 데이터를 호스트 메모리에서 읽기 전에 WriteToDeviceFALSE로 설정하여 NdisMCompleteDmaTransfer를 호출해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista에서 NDIS 6.0 및 NDIS 5.1 드라이버(NdisMCompleteDmaTransfer(NDIS 5.1) 참조)에 대해 지원됩니다. Windows XP에서 NDIS 5.1 드라이버(NdisMCompleteDmaTransfer(NDIS 5.1) 참조)에 대해 지원됩니다.
대상 플랫폼 유니버설
헤더 ndis.h(Ndis.h 포함)
IRQL <= DISPATCH_LEVEL
DDI 규정 준수 규칙 Irql_MCO_Function(ndis)

추가 정보

MiniportInitializeEx

NdisMRegisterDmaChannel

NdisMSetupDmaTransfer