GNU Linux-libre 6.1.90-gnu
[releases.git] / arch / csky / include / asm / probes.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2
3 #ifndef __ASM_CSKY_PROBES_H
4 #define __ASM_CSKY_PROBES_H
5
6 typedef u32 probe_opcode_t;
7 typedef void (probes_handler_t) (u32 opcode, long addr, struct pt_regs *);
8
9 /* architecture specific copy of original instruction */
10 struct arch_probe_insn {
11         probe_opcode_t *insn;
12         probes_handler_t *handler;
13         /* restore address after simulation */
14         unsigned long restore;
15 };
16
17 #ifdef CONFIG_KPROBES
18 typedef u32 kprobe_opcode_t;
19 struct arch_specific_insn {
20         struct arch_probe_insn api;
21 };
22 #endif
23
24 #endif /* __ASM_CSKY_PROBES_H */