blob: c2196b1b6604b518e16b83cfddd277746745560d [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
2 * This file is subject to the terms and conditions of the GNU General Public
3 * License. See the file "COPYING" in the main directory of this archive
4 * for more details.
5 *
6 * Copyright (C) 1995, 96, 97, 98, 99, 2000 by Ralf Baechle
7 * Copyright (C) 1999, 2000 Silicon Graphics, Inc.
8 *
9 * Changed system calls macros _syscall5 - _syscall7 to push args 5 to 7 onto
10 * the stack. Robin Farine for ACN S.A, Copyright (C) 1996 by ACN S.A
11 */
12#ifndef _ASM_UNISTD_H
13#define _ASM_UNISTD_H
14
David Howells61730c52012-10-09 09:47:14 +010015#include <uapi/asm/unistd.h>
Firoz Khan99bf73e2018-12-13 14:37:39 +053016#include <asm/unistd_nr_n32.h>
17#include <asm/unistd_nr_n64.h>
18#include <asm/unistd_nr_o32.h>
Linus Torvalds1da177e2005-04-16 15:20:36 -070019
Masahiro Yamadafaf243e2021-05-28 12:46:14 +090020#define __NR_N32_Linux 6000
21#define __NR_64_Linux 5000
22#define __NR_O32_Linux 4000
23
Ralf Baechle1d7bf992013-09-06 20:24:48 +020024#ifdef CONFIG_MIPS32_N32
25#define NR_syscalls (__NR_N32_Linux + __NR_N32_Linux_syscalls)
26#elif defined(CONFIG_64BIT)
27#define NR_syscalls (__NR_64_Linux + __NR_64_Linux_syscalls)
28#else
29#define NR_syscalls (__NR_O32_Linux + __NR_O32_Linux_syscalls)
30#endif
David Woodhouse56142532006-04-29 01:51:47 +010031
Linus Torvalds1da177e2005-04-16 15:20:36 -070032#ifndef __ASSEMBLY__
33
Arnd Bergmann82b355d2018-04-13 11:50:12 +020034#define __ARCH_WANT_NEW_STAT
Linus Torvalds1da177e2005-04-16 15:20:36 -070035#define __ARCH_WANT_OLD_READDIR
36#define __ARCH_WANT_SYS_ALARM
37#define __ARCH_WANT_SYS_GETHOSTNAME
Christoph Hellwigbaed7fc2010-03-10 15:21:18 -080038#define __ARCH_WANT_SYS_IPC
Linus Torvalds1da177e2005-04-16 15:20:36 -070039#define __ARCH_WANT_SYS_PAUSE
Linus Torvalds1da177e2005-04-16 15:20:36 -070040#define __ARCH_WANT_SYS_UTIME
Arnd Bergmann4faea232018-04-17 12:03:19 +020041#define __ARCH_WANT_SYS_UTIME32
Linus Torvalds1da177e2005-04-16 15:20:36 -070042#define __ARCH_WANT_SYS_WAITPID
43#define __ARCH_WANT_SYS_SOCKETCALL
Linus Torvalds1da177e2005-04-16 15:20:36 -070044#define __ARCH_WANT_SYS_GETPGRP
Linus Torvalds1da177e2005-04-16 15:20:36 -070045#define __ARCH_WANT_SYS_NICE
Christoph Hellwig5cacdb42010-03-10 15:21:21 -080046#define __ARCH_WANT_SYS_OLD_UNAME
Linus Torvalds1da177e2005-04-16 15:20:36 -070047#define __ARCH_WANT_SYS_OLDUMOUNT
48#define __ARCH_WANT_SYS_SIGPENDING
49#define __ARCH_WANT_SYS_SIGPROCMASK
Ralf Baechle875d43e2005-09-03 15:56:16 -070050# ifdef CONFIG_32BIT
Ralf Baechle359bbd42006-02-09 12:13:28 +000051# define __ARCH_WANT_STAT64
Arnd Bergmannd33c5772019-01-06 23:45:29 +010052# define __ARCH_WANT_SYS_TIME32
Linus Torvalds1da177e2005-04-16 15:20:36 -070053# endif
54# ifdef CONFIG_MIPS32_O32
Arnd Bergmannd33c5772019-01-06 23:45:29 +010055# define __ARCH_WANT_SYS_TIME32
Linus Torvalds1da177e2005-04-16 15:20:36 -070056# endif
Al Viro50150d22012-12-27 12:11:46 -050057#define __ARCH_WANT_SYS_FORK
58#define __ARCH_WANT_SYS_CLONE
Paul Burton0671c5b2019-10-02 18:59:49 +000059#define __ARCH_WANT_SYS_CLONE3
Linus Torvalds1da177e2005-04-16 15:20:36 -070060
Atsushi Nemoto83d0f232007-05-29 23:30:04 +090061/* whitelists for checksyscalls */
Atsushi Nemoto83d0f232007-05-29 23:30:04 +090062#define __IGNORE_fadvise64_64
Atsushi Nemoto83d0f232007-05-29 23:30:04 +090063
Linus Torvalds1da177e2005-04-16 15:20:36 -070064#endif /* !__ASSEMBLY__ */
65
Linus Torvalds1da177e2005-04-16 15:20:36 -070066#endif /* _ASM_UNISTD_H */