123456789101112131415161718192021222324252627282930313233 |
- /* SPDX-License-Identifier: GPL-2.0-only */
- #ifndef __ASM_CSKY_UPROBES_H
- #define __ASM_CSKY_UPROBES_H
- #include <asm/probes.h>
- #define MAX_UINSN_BYTES 4
- #define UPROBE_SWBP_INSN USR_BKPT
- #define UPROBE_SWBP_INSN_SIZE 2
- #define UPROBE_XOL_SLOT_BYTES MAX_UINSN_BYTES
- typedef u32 uprobe_opcode_t;
- struct arch_uprobe_task {
- unsigned long saved_trap_no;
- };
- struct arch_uprobe {
- union {
- u8 insn[MAX_UINSN_BYTES];
- u8 ixol[MAX_UINSN_BYTES];
- };
- struct arch_probe_insn api;
- unsigned long insn_size;
- bool simulate;
- };
- int uprobe_breakpoint_handler(struct pt_regs *regs);
- int uprobe_single_step_handler(struct pt_regs *regs);
- #endif /* __ASM_CSKY_UPROBES_H */
|