다음을 통해 공유


WdfDmaTransactionInitializeUsingOffset 함수(wdfdmatransaction.h)

[KMDF에만 적용]

WdfDmaTransactionInitializeUsingOffset 메서드는 바이트 오프셋을 사용하여 MDL 체인으로 지정된 DMA 트랜잭션을 초기화합니다.

구문

NTSTATUS WdfDmaTransactionInitializeUsingOffset(
  [in] WDFDMATRANSACTION   DmaTransaction,
  [in] PFN_WDF_PROGRAM_DMA EvtProgramDmaFunction,
  [in] WDF_DMA_DIRECTION   DmaDirection,
  [in] PMDL                Mdl,
  [in] size_t              Offset,
  [in] size_t              Length
);

매개 변수

[in] DmaTransaction

드라이버가 WdfDmaTransactionCreate에 대한 이전 호출에서 가져온 DMA 트랜잭션 개체에 대한 핸들입니다.

[in] EvtProgramDmaFunction

드라이버의 EvtProgramDma 이벤트 콜백 함수에 대한 포인터입니다.

[in] DmaDirection

WDF_DMA_DIRECTION 형식의 값입니다.

[in] Mdl

DMA 트랜잭션에 사용할 버퍼를 설명하는 MDL(메모리 설명자 목록)에 대한 포인터입니다. 설명에서 자세한 내용을 참조 하세요.

[in] Offset

현재 트랜잭션의 MDL 체인에 대한 바이트 오프셋입니다.

[in] Length

전송할 바이트 수입니다. 이 값은 0보다 커야 합니다.

반환 값

WdfDmaTransactionInitializeUsingOffset 은 작업이 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 메서드는 WdfDmaTransactionInitialize의 반환 값 섹션에 설명된 값 중 하나를 반환할 수 있습니다.

이 메서드는 다른 NTSTATUS 값을 반환할 수도 있습니다.

드라이버가 잘못된 개체 핸들을 제공하는 경우 버그 검사 발생합니다.

설명

WdfDmaTransactionInitializeUsingOffset 은 가상 주소가 아닌 MDL 체인에서 설명하는 버퍼로 오프셋을 사용한다는 점을 제외하고 WdfDmaTransactionInitialize 와 동일합니다.

드라이버는 이 메서드의 Mdl 매개 변수에서 MDL 체인을 지정할 수 있습니다. MDL 체인은 MDL 구조체의 Next 멤버를 사용하여 드라이버가 함께 연결된 일련의 MDL 구조체입니다.

요구 사항

요구 사항
대상 플랫폼 유니버설
최소 KMDF 버전 1.11
머리글 wdfdmatransaction.h(Wdf.h 포함)
라이브러리 Wdf01000.sys(프레임워크 라이브러리 버전 관리 참조)
IRQL <=DISPATCH_LEVEL
DDI 규정 준수 규칙 DriverCreate(kmdf)

추가 정보

WdfDmaTransactionInitialize