1 /* SPDX-License-Identifier: GPL-2.0-only */
2 #ifndef	__ASM_PATCHING_H
3 #define	__ASM_PATCHING_H
4 
5 #include <linux/types.h>
6 
7 int aarch64_insn_read(void *addr, u32 *insnp);
8 int aarch64_insn_write(void *addr, u32 insn);
9 
10 int aarch64_insn_write_literal_u64(void *addr, u64 val);
11 void *aarch64_insn_set(void *dst, u32 insn, size_t len);
12 void *aarch64_insn_copy(void *dst, void *src, size_t len);
13 
14 int aarch64_insn_patch_text_nosync(void *addr, u32 insn);
15 int aarch64_insn_patch_text(void *addrs[], u32 insns[], int cnt);
16 
17 #endif	/* __ASM_PATCHING_H */
18