EVT_WDF_RESERVE_DMA 콜백 함수(wdfdmatransaction.h)
[KMDF에만 적용]
EvtReserveDma 이벤트 콜백 함수는 프레임워크에 트랜잭션을 실행하고 해제할 예약된 리소스가 있을 때 호출됩니다. 예약된 리소스에는 지도 레지스터 및 WDM DMA 어댑터의 잠금이 포함됩니다.
구문
EVT_WDF_RESERVE_DMA EvtWdfReserveDma;
void EvtWdfReserveDma(
[in] WDFDMATRANSACTION DmaTransaction,
[in] PVOID Context
)
{...}
매개 변수
[in] DmaTransaction
DMA 리소스가 할당된 트랜잭션을 나타내는 DMA 트랜잭션 개체에 대한 핸들입니다.
[in] Context
드라이버가 WdfDmaTransactionAllocateResources에 대한 이전 호출에서 지정한 컨텍스트 포인터입니다.
반환 값
없음
설명
드라이버는 WdfDmaTransactionAllocateResources를 호출하여 EvtReserveDma 이벤트 콜백 함수를 등록합니다.
연결된 트랜잭션 개체와 함께 단독으로 사용하기 위해 DMA 리소스가 할당된 경우 프레임워크는 드라이버의 EvtReserveDma 이벤트 콜백 함수를 호출합니다. 드라이버는 이 예약을 보유하는 동안 트랜잭션을 여러 번 초기화하고 실행할 수 있습니다.
드라이버는 일반적으로 EvtReserveDma 이벤트 콜백 함수 내에서 트랜잭션을 초기화한 다음 시작합니다. 예약 시퀀스에 대한 자세한 내용은 DMA 리소스 예약을 참조하세요.
드라이버는 EvtReserveDma 내에서 WdfDmaTransactionFreeResources를 호출할 수 있습니다.
Windows 8 이전 운영 체제에서는 패킷 모드 DMA 인에이블러를 지정하는 인에이블러와 함께 EvtReserveDma를 사용해야 합니다. Windows 8 EvtReserveDma는 시스템 모드 DMA 인에이블러를 지정하는 인에이블러와 함께 사용할 수도 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
최소 KMDF 버전 | 1.11 |
머리글 | wdfdmatransaction.h(Wdf.h 포함) |
IRQL | DISPATCH_LEVEL |