169 op->set_mask (
dma, mask );
static __always_inline void struct dma_mapping size_t size_t align
PROVIDE_DMAAPI_INLINE(flat, dma_map)
struct dma_device * dma
DMA device (if unmapping is required)
static void * dma_op_alloc(struct dma_device *dma, struct dma_mapping *map, size_t len, size_t align)
Allocate and map DMA-coherent buffer.
physaddr_t dma_phys(struct dma_mapping *map, physaddr_t addr)
Get DMA address from physical address.
PROVIDE_DMAAPI(op, dma_map, dma_op_map)
static void dma_op_unmap(struct dma_mapping *map)
Unmap buffer.
physaddr_t mask
Addressable space mask.
uint32_t userptr_t
A pointer to a user buffer.
void dma_free(struct dma_mapping *map, void *addr, size_t len)
Unmap and free DMA-coherent buffer.
assert((readw(&hdr->flags) &(GTF_reading|GTF_writing))==0)
void dma_unmap(struct dma_mapping *map)
Unmap buffer.
static int dma_op_map(struct dma_device *dma, struct dma_mapping *map, physaddr_t addr, size_t len, int flags)
Map buffer for DMA.
void dma_set_mask(struct dma_device *dma, physaddr_t mask)
Set addressable space mask.
#define ENODEV
No such device.
static void dma_op_ufree(struct dma_mapping *map, userptr_t addr, size_t len)
Unmap and free DMA-coherent buffer from external (user) memory.
static __always_inline int struct dma_mapping * map
void * dma_alloc(struct dma_device *dma, struct dma_mapping *map, size_t len, size_t align)
Allocate and map DMA-coherent buffer.
static uint16_t struct vmbus_xfer_pages_operations * op
void dma_ufree(struct dma_mapping *map, userptr_t addr, size_t len)
Unmap and free DMA-coherent buffer from external (user) memory.
#define UNULL
Equivalent of NULL for user pointers.
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
userptr_t dma_umalloc(struct dma_device *dma, struct dma_mapping *map, size_t len, size_t align)
Allocate and map DMA-coherent buffer from external (user) memory.
static userptr_t dma_op_umalloc(struct dma_device *dma, struct dma_mapping *map, size_t len, size_t align)
Allocate and map DMA-coherent buffer from external (user) memory.
static __always_inline physaddr_t dma(struct dma_mapping *map, void *addr)
Get DMA address from virtual address.
static void dma_op_free(struct dma_mapping *map, void *addr, size_t len)
Unmap and free DMA-coherent buffer.
#define NULL
NULL pointer (VOID *)
static void dma_op_set_mask(struct dma_device *dma, physaddr_t mask)
Set addressable space mask.