1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _UAPI_H8300_PTRACE_H
3 #define _UAPI_H8300_PTRACE_H
4 
5 #ifndef __ASSEMBLY__
6 
7 #define PT_ER1	   0
8 #define PT_ER2	   1
9 #define PT_ER3	   2
10 #define PT_ER4	   3
11 #define PT_ER5	   4
12 #define PT_ER6	   5
13 #define PT_ER0	   6
14 #define PT_USP	   7
15 #define PT_ORIG_ER0	   8
16 #define PT_CCR	   9
17 #define PT_PC	   10
18 #define PT_EXR     11
19 
20 /* this struct defines the way the registers are stored on the
21    stack during a system call. */
22 
23 struct pt_regs {
24 	long     retpc;
25 	long     er4;
26 	long     er5;
27 	long     er6;
28 	long     er3;
29 	long     er2;
30 	long     er1;
31 	long     orig_er0;
32 	long	 sp;
33 	unsigned short	 ccr;
34 	long     er0;
35 	long     vector;
36 #if defined(__H8300S__)
37 	unsigned short	 exr;
38 #endif
39 	unsigned long  pc;
40 } __attribute__((aligned(2), packed));
41 
42 #endif /* __ASSEMBLY__ */
43 #endif /* _UAPI_H8300_PTRACE_H */
44