Linux 6.7-rc7
[linux-modified.git] / arch / arm64 / kvm / hyp / nvhe / cache.S
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * Code copied from arch/arm64/mm/cache.S.
4  */
5
6 #include <linux/linkage.h>
7 #include <asm/assembler.h>
8 #include <asm/alternative.h>
9
10 SYM_FUNC_START(__pi_dcache_clean_inval_poc)
11         dcache_by_line_op civac, sy, x0, x1, x2, x3
12         ret
13 SYM_FUNC_END(__pi_dcache_clean_inval_poc)
14 SYM_FUNC_ALIAS(dcache_clean_inval_poc, __pi_dcache_clean_inval_poc)
15
16 SYM_FUNC_START(__pi_icache_inval_pou)
17 alternative_if ARM64_HAS_CACHE_DIC
18         isb
19         ret
20 alternative_else_nop_endif
21
22         invalidate_icache_by_line x0, x1, x2, x3
23         ret
24 SYM_FUNC_END(__pi_icache_inval_pou)
25 SYM_FUNC_ALIAS(icache_inval_pou, __pi_icache_inval_pou)