]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - arch/tile/include/uapi/asm/sigcontext.h
License cleanup: add SPDX license identifier to uapi header files with a license
[mirror_ubuntu-bionic-kernel.git] / arch / tile / include / uapi / asm / sigcontext.h
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 /*
3 * Copyright 2010 Tilera Corporation. All Rights Reserved.
4 *
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License
7 * as published by the Free Software Foundation, version 2.
8 *
9 * This program is distributed in the hope that it will be useful, but
10 * WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or
12 * NON INFRINGEMENT. See the GNU General Public License for
13 * more details.
14 */
15
16 #ifndef _ASM_TILE_SIGCONTEXT_H
17 #define _ASM_TILE_SIGCONTEXT_H
18
19 /* Don't pollute the namespace since <signal.h> includes this file. */
20 #define __need_int_reg_t
21 #include <arch/abi.h>
22
23 /*
24 * struct sigcontext has the same shape as struct pt_regs,
25 * but is simplified since we know the fault is from userspace.
26 */
27 struct sigcontext {
28 __extension__ union {
29 /* General-purpose registers. */
30 __uint_reg_t gregs[56];
31 __extension__ struct {
32 __uint_reg_t __gregs[53];
33 __uint_reg_t tp; /* Aliases gregs[TREG_TP]. */
34 __uint_reg_t sp; /* Aliases gregs[TREG_SP]. */
35 __uint_reg_t lr; /* Aliases gregs[TREG_LR]. */
36 };
37 };
38 __uint_reg_t pc; /* Program counter. */
39 __uint_reg_t ics; /* In Interrupt Critical Section? */
40 __uint_reg_t faultnum; /* Fault number. */
41 __uint_reg_t pad[5];
42 };
43
44 #endif /* _ASM_TILE_SIGCONTEXT_H */