xref: /linux/arch/csky/include/uapi/asm/ptrace.h (revision 17cfcb68af3bc7d5e8ae08779b1853310a2949f3)
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 // Copyright (C) 2018 Hangzhou C-SKY Microsystems co.,ltd.
3 
4 #ifndef _CSKY_PTRACE_H
5 #define _CSKY_PTRACE_H
6 
7 #ifndef __ASSEMBLY__
8 
9 struct pt_regs {
10 	unsigned long	tls;
11 	unsigned long	lr;
12 	unsigned long	pc;
13 	unsigned long	sr;
14 	unsigned long	usp;
15 
16 	/*
17 	 * a0, a1, a2, a3:
18 	 * abiv1: r2, r3, r4, r5
19 	 * abiv2: r0, r1, r2, r3
20 	 */
21 	unsigned long	orig_a0;
22 	unsigned long	a0;
23 	unsigned long	a1;
24 	unsigned long	a2;
25 	unsigned long	a3;
26 
27 	/*
28 	 * ABIV2: r4 ~ r13
29 	 * ABIV1: r6 ~ r14, r1
30 	 */
31 	unsigned long	regs[10];
32 
33 #if defined(__CSKYABIV2__)
34 	/* r16 ~ r30 */
35 	unsigned long	exregs[15];
36 
37 	unsigned long	rhi;
38 	unsigned long	rlo;
39 	unsigned long	dcsr;
40 #endif
41 };
42 
43 struct user_fp {
44 	unsigned long	vr[96];
45 	unsigned long	fcr;
46 	unsigned long	fesr;
47 	unsigned long	fid;
48 	unsigned long	reserved;
49 };
50 
51 #endif /* __ASSEMBLY__ */
52 #endif /* _CSKY_PTRACE_H */
53