xref: /openbmc/linux/arch/x86/include/asm/syscalls.h (revision fa697140f9a20119a9ec8fd7460cc4314fbdaff3)
1bb898558SAl Viro /*
2bb898558SAl Viro  * syscalls.h - Linux syscall interfaces (arch-specific)
3bb898558SAl Viro  *
42c1b284eSJaswinder Singh Rajput  * Copyright (c) 2008 Jaswinder Singh Rajput
5bb898558SAl Viro  *
6bb898558SAl Viro  * This file is released under the GPLv2.
7bb898558SAl Viro  * See the file COPYING for more details.
8bb898558SAl Viro  */
9bb898558SAl Viro 
10bb898558SAl Viro #ifndef _ASM_X86_SYSCALLS_H
11bb898558SAl Viro #define _ASM_X86_SYSCALLS_H
12bb898558SAl Viro 
13bb898558SAl Viro #include <linux/compiler.h>
14bb898558SAl Viro #include <linux/linkage.h>
15bb898558SAl Viro #include <linux/signal.h>
162c1b284eSJaswinder Singh Rajput #include <linux/types.h>
17bb898558SAl Viro 
18bb898558SAl Viro /* Common in X86_32 and X86_64 */
19bb898558SAl Viro /* kernel/ioport.c */
2066f4e88cSDominik Brodowski long ksys_ioperm(unsigned long from, unsigned long num, int turn_on);
21*fa697140SDominik Brodowski 
22*fa697140SDominik Brodowski #ifndef CONFIG_SYSCALL_PTREGS
23*fa697140SDominik Brodowski /*
24*fa697140SDominik Brodowski  * If CONFIG_SYSCALL_PTREGS is enabled, a different syscall calling convention
25*fa697140SDominik Brodowski  * is used. Do not include these -- invalid -- prototypes then
26*fa697140SDominik Brodowski  */
27bb898558SAl Viro asmlinkage long sys_ioperm(unsigned long, unsigned long, int);
28b3af11afSAl Viro asmlinkage long sys_iopl(unsigned int);
29bb898558SAl Viro 
30c0195b6dSJaswinder Singh /* kernel/ldt.c */
31da20ab35SDave Hansen asmlinkage long sys_modify_ldt(int, void __user *, unsigned long);
32c0195b6dSJaswinder Singh 
332c1b284eSJaswinder Singh Rajput /* kernel/signal.c */
34ff49103fSAndi Kleen asmlinkage long sys_rt_sigreturn(void);
352c1b284eSJaswinder Singh Rajput 
367c9c160cSJaswinder Singh /* kernel/tls.c */
372cf09666SAl Viro asmlinkage long sys_set_thread_area(struct user_desc __user *);
382cf09666SAl Viro asmlinkage long sys_get_thread_area(struct user_desc __user *);
397c9c160cSJaswinder Singh 
40bb898558SAl Viro /* X86_32 only */
41bb898558SAl Viro #ifdef CONFIG_X86_32
42bb898558SAl Viro 
432c1b284eSJaswinder Singh Rajput /* kernel/signal.c */
44025bd390SDominik Brodowski asmlinkage long sys_sigreturn(void);
45bb898558SAl Viro 
46bb898558SAl Viro /* kernel/vm86_32.c */
47ba3e127eSBrian Gerst struct vm86_struct;
485522ddb3SAlexander van Heukelum asmlinkage long sys_vm86old(struct vm86_struct __user *);
495522ddb3SAlexander van Heukelum asmlinkage long sys_vm86(unsigned long, unsigned long);
50bb898558SAl Viro 
51bb898558SAl Viro #else /* CONFIG_X86_32 */
52bb898558SAl Viro 
53bb898558SAl Viro /* X86_64 only */
54bb898558SAl Viro /* kernel/process_64.c */
55ff49103fSAndi Kleen asmlinkage long sys_arch_prctl(int, unsigned long);
56bb898558SAl Viro 
57bb898558SAl Viro /* kernel/sys_x86_64.c */
58bb898558SAl Viro asmlinkage long sys_mmap(unsigned long, unsigned long, unsigned long,
59bb898558SAl Viro 			 unsigned long, unsigned long, unsigned long);
60bb898558SAl Viro 
61bb898558SAl Viro #endif /* CONFIG_X86_32 */
62*fa697140SDominik Brodowski #endif /* CONFIG_SYSCALL_PTREGS */
63bb898558SAl Viro #endif /* _ASM_X86_SYSCALLS_H */
64