1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 /*
3  * Copyright (C) 2004, 2007-2010, 2011-2012 Synopsys, Inc. (www.synopsys.com)
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License version 2 as
7  * published by the Free Software Foundation.
8  */
9 
10 /******** no-legacy-syscalls-ABI *******/
11 
12 /*
13  * Non-typical guard macro to enable inclusion twice in ARCH sys.c
14  * That is how the Generic syscall wrapper generator works
15  */
16 #if !defined(_UAPI_ASM_ARC_UNISTD_H) || defined(__SYSCALL)
17 #define _UAPI_ASM_ARC_UNISTD_H
18 
19 #define __ARCH_WANT_RENAMEAT
20 #define __ARCH_WANT_STAT64
21 #define __ARCH_WANT_SET_GET_RLIMIT
22 #define __ARCH_WANT_SYS_EXECVE
23 #define __ARCH_WANT_SYS_CLONE
24 #define __ARCH_WANT_SYS_CLONE3
25 #define __ARCH_WANT_SYS_VFORK
26 #define __ARCH_WANT_SYS_FORK
27 #define __ARCH_WANT_TIME32_SYSCALLS
28 
29 #define sys_mmap2 sys_mmap_pgoff
30 
31 #include <asm-generic/unistd.h>
32 
33 #define NR_syscalls	__NR_syscalls
34 
35 /* Generic syscall (fs/filesystems.c - lost in asm-generic/unistd.h */
36 #define __NR_sysfs		(__NR_arch_specific_syscall + 3)
37 
38 /* ARC specific syscall */
39 #define __NR_cacheflush		(__NR_arch_specific_syscall + 0)
40 #define __NR_arc_settls		(__NR_arch_specific_syscall + 1)
41 #define __NR_arc_gettls		(__NR_arch_specific_syscall + 2)
42 #define __NR_arc_usr_cmpxchg	(__NR_arch_specific_syscall + 4)
43 
44 __SYSCALL(__NR_cacheflush, sys_cacheflush)
45 __SYSCALL(__NR_arc_settls, sys_arc_settls)
46 __SYSCALL(__NR_arc_gettls, sys_arc_gettls)
47 __SYSCALL(__NR_arc_usr_cmpxchg, sys_arc_usr_cmpxchg)
48 __SYSCALL(__NR_sysfs, sys_sysfs)
49 
50 #undef __SYSCALL
51 
52 #endif
53