1*9f128bccSken kuo /* 2*9f128bccSken kuo * Copyright (C) 2013 Andes Technology Corporation 3*9f128bccSken kuo * Ken Kuo, Andes Technology Corporation <ken_kuo@andestech.com> 4*9f128bccSken kuo * 5*9f128bccSken kuo * SPDX-License-Identifier: GPL-2.0+ 6*9f128bccSken kuo */ 7*9f128bccSken kuo #ifndef __ASM_NDS_DMA_MAPPING_H 8*9f128bccSken kuo #define __ASM_NDS_DMA_MAPPING_H 9*9f128bccSken kuo 10*9f128bccSken kuo enum dma_data_direction { 11*9f128bccSken kuo DMA_BIDIRECTIONAL = 0, 12*9f128bccSken kuo DMA_TO_DEVICE = 1, 13*9f128bccSken kuo DMA_FROM_DEVICE = 2, 14*9f128bccSken kuo }; 15*9f128bccSken kuo 16*9f128bccSken kuo static void *dma_alloc_coherent(size_t len, unsigned long *handle) 17*9f128bccSken kuo { 18*9f128bccSken kuo *handle = (unsigned long)memalign(ARCH_DMA_MINALIGN, len); 19*9f128bccSken kuo return (void *)*handle; 20*9f128bccSken kuo } 21*9f128bccSken kuo 22*9f128bccSken kuo static inline unsigned long dma_map_single(volatile void *vaddr, size_t len, 23*9f128bccSken kuo enum dma_data_direction dir) 24*9f128bccSken kuo { 25*9f128bccSken kuo return (unsigned long)vaddr; 26*9f128bccSken kuo } 27*9f128bccSken kuo 28*9f128bccSken kuo static inline void dma_unmap_single(volatile void *vaddr, size_t len, 29*9f128bccSken kuo unsigned long paddr) 30*9f128bccSken kuo { 31*9f128bccSken kuo } 32*9f128bccSken kuo 33*9f128bccSken kuo #endif /* __ASM_NDS_DMA_MAPPING_H */ 34