1/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Copyright (C) 2014-2016 Pratyush Anand <panand@redhat.com>
4 */
5
6#ifndef _ASM_UPROBES_H
7#define _ASM_UPROBES_H
8
9#include <asm/debug-monitors.h>
10#include <asm/insn.h>
11#include <asm/probes.h>
12
13#define MAX_UINSN_BYTES		AARCH64_INSN_SIZE
14
15#define UPROBE_SWBP_INSN	cpu_to_le32(BRK64_OPCODE_UPROBES)
16#define UPROBE_SWBP_INSN_SIZE	AARCH64_INSN_SIZE
17#define UPROBE_XOL_SLOT_BYTES	MAX_UINSN_BYTES
18
19typedef __le32 uprobe_opcode_t;
20
21struct arch_uprobe_task {
22};
23
24struct arch_uprobe {
25	union {
26		u8 insn[MAX_UINSN_BYTES];
27		u8 ixol[MAX_UINSN_BYTES];
28	};
29	struct arch_probe_insn api;
30	bool simulate;
31};
32
33#endif
34