blob: 1d35de90a977b513982d9e71a907c041033a786c [file] [log] [blame]
Ley Foon Tan106174d2014-11-06 15:20:13 +08001/*
2 * Copyright (C) 2010 Tobias Klauser <tklauser@distanz.ch>
3 * Copyright (C) 2004 Microtronix Datacom Ltd
4 *
5 * based on m68k asm/processor.h
6 *
7 * This file is subject to the terms and conditions of the GNU General Public
8 * License. See the file "COPYING" in the main directory of this archive
9 * for more details.
10 */
11
12#ifndef _UAPI_ASM_NIOS2_PTRACE_H
13#define _UAPI_ASM_NIOS2_PTRACE_H
14
15#ifndef __ASSEMBLY__
16
Ezequiel Garcia20093372015-04-24 14:48:35 +080017#include <linux/types.h>
18
Ley Foon Tan106174d2014-11-06 15:20:13 +080019/*
20 * Register numbers used by 'ptrace' system call interface.
21 */
22
23/* GP registers */
24#define PTR_R0 0
25#define PTR_R1 1
26#define PTR_R2 2
27#define PTR_R3 3
28#define PTR_R4 4
29#define PTR_R5 5
30#define PTR_R6 6
31#define PTR_R7 7
32#define PTR_R8 8
33#define PTR_R9 9
34#define PTR_R10 10
35#define PTR_R11 11
36#define PTR_R12 12
37#define PTR_R13 13
38#define PTR_R14 14
39#define PTR_R15 15
40#define PTR_R16 16
41#define PTR_R17 17
42#define PTR_R18 18
43#define PTR_R19 19
44#define PTR_R20 20
45#define PTR_R21 21
46#define PTR_R22 22
47#define PTR_R23 23
48#define PTR_R24 24
49#define PTR_R25 25
50#define PTR_GP 26
51#define PTR_SP 27
52#define PTR_FP 28
53#define PTR_EA 29
54#define PTR_BA 30
55#define PTR_RA 31
56/* Control registers */
57#define PTR_PC 32
58#define PTR_STATUS 33
59#define PTR_ESTATUS 34
60#define PTR_BSTATUS 35
61#define PTR_IENABLE 36
62#define PTR_IPENDING 37
63#define PTR_CPUID 38
64#define PTR_CTL6 39
Ley Foon Tane3e29f92015-04-09 18:28:05 +080065#define PTR_EXCEPTION 40
Ley Foon Tan106174d2014-11-06 15:20:13 +080066#define PTR_PTEADDR 41
67#define PTR_TLBACC 42
68#define PTR_TLBMISC 43
Ley Foon Tane3e29f92015-04-09 18:28:05 +080069#define PTR_ECCINJ 44
70#define PTR_BADADDR 45
71#define PTR_CONFIG 46
72#define PTR_MPUBASE 47
73#define PTR_MPUACC 48
Ley Foon Tan106174d2014-11-06 15:20:13 +080074
Ley Foon Tane3e29f92015-04-09 18:28:05 +080075#define NUM_PTRACE_REG (PTR_MPUACC + 1)
Ley Foon Tan106174d2014-11-06 15:20:13 +080076
Chung-Ling Tang92d5dd82015-03-12 13:34:31 +080077/* User structures for general purpose registers. */
78struct user_pt_regs {
79 __u32 regs[49];
Ley Foon Tan106174d2014-11-06 15:20:13 +080080};
81
82#endif /* __ASSEMBLY__ */
83#endif /* _UAPI_ASM_NIOS2_PTRACE_H */