/* SPDX-License-Identifier: GPL-2.0-only */

#ifndef _ASM_RISCV_UPROBES_H
#define _ASM_RISCV_UPROBES_H

#include <asm/probes.h>
#include <asm/patch.h>
#include <asm/bug.h>

#define MAX_UINSN_BYTES		8

#ifdef CONFIG_RISCV_ISA_C
#define UPROBE_SWBP_INSN	__BUG_INSN_16
#define UPROBE_SWBP_INSN_SIZE	2
#else
#define UPROBE_SWBP_INSN	__BUG_INSN_32
#define UPROBE_SWBP_INSN_SIZE	4
#endif
#define UPROBE_XOL_SLOT_BYTES	MAX_UINSN_BYTES

typedef u32 uprobe_opcode_t;

struct arch_uprobe_task {
	unsigned long   saved_cause;
};

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;
};

bool uprobe_breakpoint_handler(struct pt_regs *regs);
bool uprobe_single_step_handler(struct pt_regs *regs);

#endif /* _ASM_RISCV_UPROBES_H */
