1*4882a593Smuzhiyun /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * include/asm-xtensa/ptrace.h 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * This file is subject to the terms and conditions of the GNU General Public 6*4882a593Smuzhiyun * License. See the file "COPYING" in the main directory of this archive 7*4882a593Smuzhiyun * for more details. 8*4882a593Smuzhiyun * 9*4882a593Smuzhiyun * Copyright (C) 2001 - 2005 Tensilica Inc. 10*4882a593Smuzhiyun */ 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun #ifndef _UAPI_XTENSA_PTRACE_H 13*4882a593Smuzhiyun #define _UAPI_XTENSA_PTRACE_H 14*4882a593Smuzhiyun 15*4882a593Smuzhiyun #include <linux/types.h> 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun /* Registers used by strace */ 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun #define REG_A_BASE 0x0000 20*4882a593Smuzhiyun #define REG_AR_BASE 0x0100 21*4882a593Smuzhiyun #define REG_PC 0x0020 22*4882a593Smuzhiyun #define REG_PS 0x02e6 23*4882a593Smuzhiyun #define REG_WB 0x0248 24*4882a593Smuzhiyun #define REG_WS 0x0249 25*4882a593Smuzhiyun #define REG_LBEG 0x0200 26*4882a593Smuzhiyun #define REG_LEND 0x0201 27*4882a593Smuzhiyun #define REG_LCOUNT 0x0202 28*4882a593Smuzhiyun #define REG_SAR 0x0203 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun #define SYSCALL_NR 0x00ff 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun /* Other PTRACE_ values defined in <linux/ptrace.h> using values 0-9,16,17,24 */ 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun #define PTRACE_GETREGS 12 35*4882a593Smuzhiyun #define PTRACE_SETREGS 13 36*4882a593Smuzhiyun #define PTRACE_GETXTREGS 18 37*4882a593Smuzhiyun #define PTRACE_SETXTREGS 19 38*4882a593Smuzhiyun #define PTRACE_GETHBPREGS 20 39*4882a593Smuzhiyun #define PTRACE_SETHBPREGS 21 40*4882a593Smuzhiyun 41*4882a593Smuzhiyun #ifndef __ASSEMBLY__ 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun struct user_pt_regs { 44*4882a593Smuzhiyun __u32 pc; 45*4882a593Smuzhiyun __u32 ps; 46*4882a593Smuzhiyun __u32 lbeg; 47*4882a593Smuzhiyun __u32 lend; 48*4882a593Smuzhiyun __u32 lcount; 49*4882a593Smuzhiyun __u32 sar; 50*4882a593Smuzhiyun __u32 windowstart; 51*4882a593Smuzhiyun __u32 windowbase; 52*4882a593Smuzhiyun __u32 threadptr; 53*4882a593Smuzhiyun __u32 syscall; 54*4882a593Smuzhiyun __u32 reserved[6 + 48]; 55*4882a593Smuzhiyun __u32 a[64]; 56*4882a593Smuzhiyun }; 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun #endif 59*4882a593Smuzhiyun #endif /* _UAPI_XTENSA_PTRACE_H */ 60