18c2ecf20Sopenharmony_ci/*
28c2ecf20Sopenharmony_ci * This file is subject to the terms and conditions of the GNU General Public
38c2ecf20Sopenharmony_ci * License.  See the file "COPYING" in the main directory of this archive
48c2ecf20Sopenharmony_ci * for more details.
58c2ecf20Sopenharmony_ci *
68c2ecf20Sopenharmony_ci * Copyright (C) 2005, 06 by Ralf Baechle (ralf@linux-mips.org)
78c2ecf20Sopenharmony_ci * Copyright (C) 2005 MIPS Technologies, Inc.
88c2ecf20Sopenharmony_ci */
98c2ecf20Sopenharmony_ci#ifndef _ASM_ABI_H
108c2ecf20Sopenharmony_ci#define _ASM_ABI_H
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ci#include <linux/signal_types.h>
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ci#include <asm/signal.h>
158c2ecf20Sopenharmony_ci#include <asm/siginfo.h>
168c2ecf20Sopenharmony_ci#include <asm/vdso.h>
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_cistruct mips_abi {
198c2ecf20Sopenharmony_ci	int (* const setup_frame)(void *sig_return, struct ksignal *ksig,
208c2ecf20Sopenharmony_ci				  struct pt_regs *regs, sigset_t *set);
218c2ecf20Sopenharmony_ci	int (* const setup_rt_frame)(void *sig_return, struct ksignal *ksig,
228c2ecf20Sopenharmony_ci				     struct pt_regs *regs, sigset_t *set);
238c2ecf20Sopenharmony_ci	const unsigned long	restart;
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ci	unsigned	off_sc_fpregs;
268c2ecf20Sopenharmony_ci	unsigned	off_sc_fpc_csr;
278c2ecf20Sopenharmony_ci	unsigned	off_sc_used_math;
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci	struct mips_vdso_image *vdso;
308c2ecf20Sopenharmony_ci};
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ci#endif /* _ASM_ABI_H */
33