ANDROID: GKI: arm64: provide dma cache routines with same API as 32 bit

Add defines for dmac_*_range for compatibility with arm32

CRs-Fixed: 1053067
Change-Id: I6456c02bad73fb54a874dc9925d3d43d9b8be2f2
Signed-off-by: Larry Bassel <lbassel@codeaurora.org>
(cherry picked from commit 0930bab0db67cc0d91e52e385e3e061871c6be05)
Signed-off-by: Prasad Sodagudi <psodagud@codeaurora.org>
(cherry picked from commit a313e54567627a1fd96cd267e2c6c358d14e468c)
[salyzyn squashed in commit 4008eb493aa2f95094511125f136eb6ffbfa33b8]
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 141888626
This commit is contained in:
Larry Bassel
2014-01-17 10:33:08 -08:00
committed by Mark Salyzyn
parent 7bd9061f15
commit e2066c1c20
2 changed files with 11 additions and 2 deletions

View File

@@ -131,6 +131,15 @@ static inline void flush_cache_range(struct vm_area_struct *vma,
extern void __dma_map_area(const void *, size_t, int);
extern void __dma_unmap_area(const void *, size_t, int);
extern void __dma_flush_area(const void *, size_t);
extern void __dma_inv_area(const void *start, size_t size);
extern void __dma_clean_area(const void *start, size_t size);
#define dmac_flush_range(start, end) \
__dma_flush_area(start, (void *)(end) - (void *)(start))
#define dmac_inv_range(start, end) \
__dma_inv_area(start, (void *)(end) - (void *)(start))
#define dmac_clean_range(start, end) \
__dma_clean_area(start, (void *)(end) - (void *)(start))
/*
* Copy user data from/to a page which is mapped into a different

View File

@@ -230,7 +230,7 @@ ENTRY(__inval_dcache_area)
* - start - virtual start address of region
* - size - size in question
*/
__dma_inv_area:
ENTRY(__dma_inv_area)
add x1, x1, x0
dcache_line_size x2, x3
sub x3, x2, #1
@@ -269,7 +269,7 @@ ENTRY(__clean_dcache_area_poc)
* - start - virtual start address of region
* - size - size in question
*/
__dma_clean_area:
ENTRY(__dma_clean_area)
dcache_by_line_op cvac, sy, x0, x1, x2, x3
ret
ENDPIPROC(__clean_dcache_area_poc)