Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e2066c1c authored by Larry Bassel's avatar Larry Bassel Committed by Mark Salyzyn
Browse files

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: default avatarLarry Bassel <lbassel@codeaurora.org>
(cherry picked from commit 0930bab0db67cc0d91e52e385e3e061871c6be05)
Signed-off-by: default avatarPrasad Sodagudi <psodagud@codeaurora.org>
(cherry picked from commit a313e54567627a1fd96cd267e2c6c358d14e468c)
[salyzyn squashed in commit 4008eb49]
Signed-off-by: default avatarMark Salyzyn <salyzyn@google.com>
Bug: 141888626
parent 7bd9061f
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -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
+2 −2
Original line number Diff line number Diff line
@@ -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)