• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef _UAPI_ASM_PTRACE_H
20 #define _UAPI_ASM_PTRACE_H
21 #include <linux/types.h>
22 #define FPR_BASE 32
23 #define PC 64
24 #define CAUSE 65
25 #define BADVADDR 66
26 #define MMHI 67
27 #define MMLO 68
28 #define FPC_CSR 69
29 #define FPC_EIR 70
30 #define DSP_BASE 71
31 #define DSP_CONTROL 77
32 #define ACX 78
33 struct pt_regs {
34   __u64 regs[32];
35   __u64 lo;
36   __u64 hi;
37   __u64 cp0_epc;
38   __u64 cp0_badvaddr;
39   __u64 cp0_status;
40   __u64 cp0_cause;
41 } __attribute__((aligned(8)));
42 #define PTRACE_GETREGS 12
43 #define PTRACE_SETREGS 13
44 #define PTRACE_GETFPREGS 14
45 #define PTRACE_SETFPREGS 15
46 #define PTRACE_OLDSETOPTIONS 21
47 #define PTRACE_GET_THREAD_AREA 25
48 #define PTRACE_SET_THREAD_AREA 26
49 #define PTRACE_PEEKTEXT_3264 0xc0
50 #define PTRACE_PEEKDATA_3264 0xc1
51 #define PTRACE_POKETEXT_3264 0xc2
52 #define PTRACE_POKEDATA_3264 0xc3
53 #define PTRACE_GET_THREAD_AREA_3264 0xc4
54 enum pt_watch_style {
55   pt_watch_style_mips32,
56   pt_watch_style_mips64
57 };
58 struct mips32_watch_regs {
59   unsigned int watchlo[8];
60   unsigned short watchhi[8];
61   unsigned short watch_masks[8];
62   unsigned int num_valid;
63 } __attribute__((aligned(8)));
64 struct mips64_watch_regs {
65   unsigned long long watchlo[8];
66   unsigned short watchhi[8];
67   unsigned short watch_masks[8];
68   unsigned int num_valid;
69 } __attribute__((aligned(8)));
70 struct pt_watch_regs {
71   enum pt_watch_style style;
72   union {
73     struct mips32_watch_regs mips32;
74     struct mips64_watch_regs mips64;
75   };
76 };
77 #define PTRACE_GET_WATCH_REGS 0xd0
78 #define PTRACE_SET_WATCH_REGS 0xd1
79 #endif
80