X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=Omap35xxPkg%2FInclude%2FLibrary%2FOmapDmaLib.h;h=0dc4468c917c94a7537a6d110b26f56eb9683b5d;hp=d4daf6d3644cea788f3585d82cdadef84d3668ad;hb=81bc205daf18ca46bec3621fc05fc049db152826;hpb=6be6c2e04d32c9466ac60cf0d837ea9a28227dd4 diff --git a/Omap35xxPkg/Include/Library/OmapDmaLib.h b/Omap35xxPkg/Include/Library/OmapDmaLib.h index d4daf6d364..0dc4468c91 100755 --- a/Omap35xxPkg/Include/Library/OmapDmaLib.h +++ b/Omap35xxPkg/Include/Library/OmapDmaLib.h @@ -1,10 +1,7 @@ /** @file - Abstractions for simple OMAP DMA. The DMA functions are modeled on - the PCI IO protocol and follow the same rules as outlined in the UEFI specification. - OMAP_DMA4 structure elements are described in the OMAP35xx TRM. Currently - there is no PCI'less DMA protocol, if one existed it could be used to - replace this library. + Abstractions for simple OMAP DMA. + OMAP_DMA4 structure elements are described in the OMAP35xx TRM. Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.
@@ -21,23 +18,6 @@ #ifndef __OMAP_DMA_LIB_H__ #define __OMAP_DMA_LIB_H__ -typedef enum { - /// - /// A read operation from system memory by a bus master. - /// - MapOperationBusMasterRead, - /// - /// A write operation from system memory by a bus master. - /// - MapOperationBusMasterWrite, - /// - /// Provides both read and write access to system memory by both the processor and a - /// bus master. The buffer is coherent from both the processor's and the bus master's point of view. - /// - MapOperationBusMasterCommonBuffer, - MapOperationMaximum -} DMA_MAP_OPERATION; - // Example from DMA chapter of the OMAP35xx spec typedef struct { @@ -105,100 +85,6 @@ DisableDmaChannel ( ); -/** - Provides the DMA controller-specific addresses needed to access system memory. - - Operation is relative to the DMA bus master. - - @param Operation Indicates if the bus master is going to read or write to system memory. - @param HostAddress The system memory address to map to the DMA controller. - @param NumberOfBytes On input the number of bytes to map. On output the number of bytes - that were mapped. - @param DeviceAddress The resulting map address for the bus master controller to use to - access the hosts HostAddress. - @param Mapping A resulting value to pass to Unmap(). - - @retval EFI_SUCCESS The range was mapped for the returned NumberOfBytes. - @retval EFI_UNSUPPORTED The HostAddress cannot be mapped as a common buffer. - @retval EFI_INVALID_PARAMETER One or more parameters are invalid. - @retval EFI_OUT_OF_RESOURCES The request could not be completed due to a lack of resources. - @retval EFI_DEVICE_ERROR The system hardware could not map the requested address. - -**/ -EFI_STATUS -EFIAPI -DmaMap ( - IN DMA_MAP_OPERATION Operation, - IN VOID *HostAddress, - IN OUT UINTN *NumberOfBytes, - OUT PHYSICAL_ADDRESS *DeviceAddress, - OUT VOID **Mapping - ); - - - - -/** - Completes the DmaMapBusMasterRead(), DmaMapBusMasterWrite(), or DmaMapBusMasterCommonBuffer() - operation and releases any corresponding resources. - - @param Mapping The mapping value returned from DmaMap*(). - - @retval EFI_SUCCESS The range was unmapped. - @retval EFI_DEVICE_ERROR The data was not committed to the target system memory. - -**/ -EFI_STATUS -EFIAPI -DmaUnmap ( - IN VOID *Mapping - ); - - -/** - Allocates pages that are suitable for an DmaMap() of type MapOperationBusMasterCommonBuffer. - mapping. - - @param MemoryType The type of memory to allocate, EfiBootServicesData or - EfiRuntimeServicesData. - @param Pages The number of pages to allocate. - @param HostAddress A pointer to store the base system memory address of the - allocated range. - - @retval EFI_SUCCESS The requested memory pages were allocated. - @retval EFI_UNSUPPORTED Attributes is unsupported. The only legal attribute bits are - MEMORY_WRITE_COMBINE and MEMORY_CACHED. - @retval EFI_INVALID_PARAMETER One or more parameters are invalid. - @retval EFI_OUT_OF_RESOURCES The memory pages could not be allocated. - -**/ -EFI_STATUS -EFIAPI -DmaAllocateBuffer ( - IN EFI_MEMORY_TYPE MemoryType, - IN UINTN Pages, - OUT VOID **HostAddress - ); - - -/** - Frees memory that was allocated with DmaAllocateBuffer(). - - @param Pages The number of pages to free. - @param HostAddress The base system memory address of the allocated range. - - @retval EFI_SUCCESS The requested memory pages were freed. - @retval EFI_INVALID_PARAMETER The memory range specified by HostAddress and Pages - was not allocated with DmaAllocateBuffer(). - -**/ -EFI_STATUS -EFIAPI -DmaFreeBuffer ( - IN UINTN Pages, - IN VOID *HostAddress - ); - #endif