1 // SPDX-License-Identifier: GPL-2.0 2 // Copyright (C) 2005-2017 Andes Technology Corporation 3 4 #ifndef _ASMNDS32_SIGCONTEXT_H 5 #define _ASMNDS32_SIGCONTEXT_H 6 7 /* 8 * Signal context structure - contains all info to do with the state 9 * before the signal handler was invoked. Note: only add new entries 10 * to the end of the structure. 11 */ 12 13 struct zol_struct { 14 unsigned long nds32_lc; /* $LC */ 15 unsigned long nds32_le; /* $LE */ 16 unsigned long nds32_lb; /* $LB */ 17 }; 18 19 struct sigcontext { 20 unsigned long trap_no; 21 unsigned long error_code; 22 unsigned long oldmask; 23 unsigned long nds32_r0; 24 unsigned long nds32_r1; 25 unsigned long nds32_r2; 26 unsigned long nds32_r3; 27 unsigned long nds32_r4; 28 unsigned long nds32_r5; 29 unsigned long nds32_r6; 30 unsigned long nds32_r7; 31 unsigned long nds32_r8; 32 unsigned long nds32_r9; 33 unsigned long nds32_r10; 34 unsigned long nds32_r11; 35 unsigned long nds32_r12; 36 unsigned long nds32_r13; 37 unsigned long nds32_r14; 38 unsigned long nds32_r15; 39 unsigned long nds32_r16; 40 unsigned long nds32_r17; 41 unsigned long nds32_r18; 42 unsigned long nds32_r19; 43 unsigned long nds32_r20; 44 unsigned long nds32_r21; 45 unsigned long nds32_r22; 46 unsigned long nds32_r23; 47 unsigned long nds32_r24; 48 unsigned long nds32_r25; 49 unsigned long nds32_fp; /* $r28 */ 50 unsigned long nds32_gp; /* $r29 */ 51 unsigned long nds32_lp; /* $r30 */ 52 unsigned long nds32_sp; /* $r31 */ 53 unsigned long nds32_ipc; 54 unsigned long fault_address; 55 unsigned long used_math_flag; 56 /* FPU Registers */ 57 struct zol_struct zol; 58 }; 59 60 #endif 61