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