1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * arch/arm64/include/asm/probes.h 4 * 5 * Copyright (C) 2013 Linaro Limited 6 */ 7#ifndef _ARM_PROBES_H 8#define _ARM_PROBES_H 9 10typedef u32 probe_opcode_t; 11typedef void (probes_handler_t) (u32 opcode, long addr, struct pt_regs *); 12 13/* architecture specific copy of original instruction */ 14struct arch_probe_insn { 15 probe_opcode_t *insn; 16 pstate_check_t *pstate_cc; 17 probes_handler_t *handler; 18 /* restore address after step xol */ 19 unsigned long restore; 20}; 21#ifdef CONFIG_KPROBES 22typedef u32 kprobe_opcode_t; 23struct arch_specific_insn { 24 struct arch_probe_insn api; 25}; 26#endif 27 28#endif 29