DMDLL_PCIFreeDMAMemory
DMA에 사용하던 물리메모리를 반납합니다
Description
int DMDLL_PCIFreeDMAMemory(
IN DMHANDLE OpenedHandle,
IN DMA_MEMORY *pResource
)
Parameters
OpenedHandle
작업중이던 디바이스 핸들, DMDLL_OpenDeviceForInterfaceDeviceStack()함수를 통해서 얻은 권한핸들이어야 합니다
pResource
반납하고자 하는 메모리의 정보를 입력합니다
Return Values
return int
작업이 성공할 경우 DMSTAT_SUCCESS 리턴
Changelog
Examples
DMA_MEMORY_REQ DMAReq; // 요청하는 내용
DMA_MEMORY DMARes; // 결과가 얻어지는 내용
// 아래의 내용은 1MBytes의 DMA를 위한 메모리를 할당요청하는 예재이다.
DMAReq.Size = 0x100000; // 1MBytes
DMAReq.HighestPhysicalAddress = 0xFFFFFFFF; // 32bit 최대
// 64비트까지 가능하다
DMAReq.LowestPhysicalAddress = 0x0;
DMAReq.BoundaryAddressMultiple = 0x100000;
// Alignment, 1MB
dmStatus = DMDLL_PCIAllocateDMAMemory(DMHandle, &DMAReq, &DMARes);
//
// 해제시,
dmStatus = DMDLL_PCIFreeDMAMemory(DMHandle, &DMARes);