1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 /* 3 * Copyright (C) 2006 Atmark Techno, Inc. 4 * 5 * This file is subject to the terms and conditions of the GNU General Public 6 * License. See the file "COPYING" in the main directory of this archive 7 * for more details. 8 */ 9 10 #ifndef _UAPI_ASM_MICROBLAZE_PTRACE_H 11 #define _UAPI_ASM_MICROBLAZE_PTRACE_H 12 13 #ifndef __ASSEMBLY__ 14 15 typedef unsigned long microblaze_reg_t; 16 17 struct pt_regs { 18 microblaze_reg_t r0; 19 microblaze_reg_t r1; 20 microblaze_reg_t r2; 21 microblaze_reg_t r3; 22 microblaze_reg_t r4; 23 microblaze_reg_t r5; 24 microblaze_reg_t r6; 25 microblaze_reg_t r7; 26 microblaze_reg_t r8; 27 microblaze_reg_t r9; 28 microblaze_reg_t r10; 29 microblaze_reg_t r11; 30 microblaze_reg_t r12; 31 microblaze_reg_t r13; 32 microblaze_reg_t r14; 33 microblaze_reg_t r15; 34 microblaze_reg_t r16; 35 microblaze_reg_t r17; 36 microblaze_reg_t r18; 37 microblaze_reg_t r19; 38 microblaze_reg_t r20; 39 microblaze_reg_t r21; 40 microblaze_reg_t r22; 41 microblaze_reg_t r23; 42 microblaze_reg_t r24; 43 microblaze_reg_t r25; 44 microblaze_reg_t r26; 45 microblaze_reg_t r27; 46 microblaze_reg_t r28; 47 microblaze_reg_t r29; 48 microblaze_reg_t r30; 49 microblaze_reg_t r31; 50 microblaze_reg_t pc; 51 microblaze_reg_t msr; 52 microblaze_reg_t ear; 53 microblaze_reg_t esr; 54 microblaze_reg_t fsr; 55 int pt_mode; 56 }; 57 58 #ifndef __KERNEL__ 59 60 /* pt_regs offsets used by gdbserver etc in ptrace syscalls */ 61 #define PT_GPR(n) ((n) * sizeof(microblaze_reg_t)) 62 #define PT_PC (32 * sizeof(microblaze_reg_t)) 63 #define PT_MSR (33 * sizeof(microblaze_reg_t)) 64 #define PT_EAR (34 * sizeof(microblaze_reg_t)) 65 #define PT_ESR (35 * sizeof(microblaze_reg_t)) 66 #define PT_FSR (36 * sizeof(microblaze_reg_t)) 67 #define PT_KERNEL_MODE (37 * sizeof(microblaze_reg_t)) 68 69 #endif /* __KERNEL */ 70 71 #endif /* __ASSEMBLY__ */ 72 73 #endif /* _UAPI_ASM_MICROBLAZE_PTRACE_H */ 74