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#define FPR_BASE 32
22#define PC 64
23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24#define CAUSE 65
25#define BADVADDR 66
26#define MMHI 67
27#define MMLO 68
28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29#define FPC_CSR 69
30#define FPC_EIR 70
31#define DSP_BASE 71
32#define DSP_CONTROL 77
33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34#define ACX 78
35struct pt_regs {
36 unsigned long regs[32];
37 unsigned long cp0_status;
38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39 unsigned long hi;
40 unsigned long lo;
41 unsigned long cp0_badvaddr;
42 unsigned long cp0_cause;
43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44 unsigned long cp0_epc;
45} __attribute__ ((aligned (8)));
46#define PTRACE_GETREGS 12
47#define PTRACE_SETREGS 13
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49#define PTRACE_GETFPREGS 14
50#define PTRACE_SETFPREGS 15
51#define PTRACE_OLDSETOPTIONS 21
52#define PTRACE_GET_THREAD_AREA 25
53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54#define PTRACE_SET_THREAD_AREA 26
55#define PTRACE_PEEKTEXT_3264 0xc0
56#define PTRACE_PEEKDATA_3264 0xc1
57#define PTRACE_POKETEXT_3264 0xc2
58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59#define PTRACE_POKEDATA_3264 0xc3
60#define PTRACE_GET_THREAD_AREA_3264 0xc4
61enum pt_watch_style {
62 pt_watch_style_mips32,
63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64 pt_watch_style_mips64
65};
66struct mips32_watch_regs {
67 unsigned int watchlo[8];
68/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69 unsigned short watchhi[8];
70 unsigned short watch_masks[8];
71 unsigned int num_valid;
72} __attribute__((aligned(8)));
73/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74struct mips64_watch_regs {
75 unsigned long long watchlo[8];
76 unsigned short watchhi[8];
77 unsigned short watch_masks[8];
78/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79 unsigned int num_valid;
80} __attribute__((aligned(8)));
81struct pt_watch_regs {
82 enum pt_watch_style style;
83/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84 union {
85 struct mips32_watch_regs mips32;
86 struct mips64_watch_regs mips64;
87 };
88/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89};
90#define PTRACE_GET_WATCH_REGS 0xd0
91#define PTRACE_SET_WATCH_REGS 0xd1
92#endif
93/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94