1 /* 2 * Copyright 2010 Tilera Corporation. All Rights Reserved. 3 * 4 * This program is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU General Public License 6 * as published by the Free Software Foundation, version 2. 7 * 8 * This program is distributed in the hope that it will be useful, but 9 * WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or 11 * NON INFRINGEMENT. See the GNU General Public License for 12 * more details. 13 */ 14 15 #if !defined(__LP64__) || defined(__SYSCALL_COMPAT) 16 /* Use the flavor of this syscall that matches the 32-bit API better. */ 17 #define __ARCH_WANT_SYNC_FILE_RANGE2 18 #endif 19 20 /* Use the standard ABI for syscalls. */ 21 #include <asm-generic/unistd.h> 22 23 #define NR_syscalls __NR_syscalls 24 25 /* Additional Tilera-specific syscalls. */ 26 #define __NR_cacheflush (__NR_arch_specific_syscall + 1) 27 __SYSCALL(__NR_cacheflush, sys_cacheflush) 28 29 #ifndef __tilegx__ 30 /* "Fast" syscalls provide atomic support for 32-bit chips. */ 31 #define __NR_FAST_cmpxchg -1 32 #define __NR_FAST_atomic_update -2 33 #define __NR_FAST_cmpxchg64 -3 34 #define __NR_cmpxchg_badaddr (__NR_arch_specific_syscall + 0) 35 __SYSCALL(__NR_cmpxchg_badaddr, sys_cmpxchg_badaddr) 36 #endif 37