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