xref: /linux/arch/riscv/kernel/probes/decode-insn.h (revision d0034a7a4ac7fae708146ac0059b9c47a1543f0d)
1*c22b0bcbSGuo Ren /* SPDX-License-Identifier: GPL-2.0+ */
2*c22b0bcbSGuo Ren 
3*c22b0bcbSGuo Ren #ifndef _RISCV_KERNEL_KPROBES_DECODE_INSN_H
4*c22b0bcbSGuo Ren #define _RISCV_KERNEL_KPROBES_DECODE_INSN_H
5*c22b0bcbSGuo Ren 
6*c22b0bcbSGuo Ren #include <asm/sections.h>
7*c22b0bcbSGuo Ren #include <asm/kprobes.h>
8*c22b0bcbSGuo Ren 
9*c22b0bcbSGuo Ren enum probe_insn {
10*c22b0bcbSGuo Ren 	INSN_REJECTED,
11*c22b0bcbSGuo Ren 	INSN_GOOD_NO_SLOT,
12*c22b0bcbSGuo Ren 	INSN_GOOD,
13*c22b0bcbSGuo Ren };
14*c22b0bcbSGuo Ren 
15*c22b0bcbSGuo Ren enum probe_insn __kprobes
16*c22b0bcbSGuo Ren riscv_probe_decode_insn(probe_opcode_t *addr, struct arch_probe_insn *asi);
17*c22b0bcbSGuo Ren 
18*c22b0bcbSGuo Ren #endif /* _RISCV_KERNEL_KPROBES_DECODE_INSN_H */
19