mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 03:40:35 +09:00
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:
committed by
Mark Salyzyn
parent
7bd9061f15
commit
e2066c1c20
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user