Merge tag 'sched-urgent-2020-12-27' of git://git.kernel.org/pub/scm/linux/kernel...
[linux/fpc-iii.git] / arch / h8300 / kernel / ptrace_s.c
blobee21f37b7ed4458da802a9b80fc7f2a95bb89b69
1 /*
2 * linux/arch/h8300/kernel/ptrace_h8s.c
3 * ptrace cpu depend helper functions
5 * Yoshinori Sato <ysato@users.sourceforge.jp>
7 * This file is subject to the terms and conditions of the GNU General
8 * Public License. See the file COPYING in the main directory of
9 * this archive for more details.
12 #include <linux/linkage.h>
13 #include <linux/sched/signal.h>
14 #include <linux/errno.h>
15 #include <asm/ptrace.h>
17 #define CCR_MASK 0x6f
18 #define EXR_TRACE 0x80
20 /* disable singlestep */
21 void user_disable_single_step(struct task_struct *child)
23 unsigned char exr;
25 exr = h8300_get_reg(child, PT_EXR);
26 exr &= ~EXR_TRACE;
27 h8300_put_reg(child, PT_EXR, exr);
30 /* enable singlestep */
31 void user_enable_single_step(struct task_struct *child)
33 unsigned char exr;
35 exr = h8300_get_reg(child, PT_EXR);
36 exr |= EXR_TRACE;
37 h8300_put_reg(child, PT_EXR, exr);
40 asmlinkage void trace_trap(unsigned long bp)
42 (void)bp;
43 force_sig(SIGTRAP);