1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _SYSTBLS_H
3 #define _SYSTBLS_H
4 
5 #include <linux/signal.h>
6 #include <linux/kernel.h>
7 #include <linux/compat.h>
8 #include <linux/types.h>
9 
10 #include <asm/utrap.h>
11 
12 asmlinkage long sys_getpagesize(void);
13 asmlinkage long sys_sparc_pipe(void);
14 asmlinkage long sys_nis_syscall(void);
15 asmlinkage long sys_getdomainname(char __user *name, int len);
16 void do_rt_sigreturn(struct pt_regs *regs);
17 asmlinkage long sys_mmap(unsigned long addr, unsigned long len,
18 			 unsigned long prot, unsigned long flags,
19 			 unsigned long fd, unsigned long off);
20 asmlinkage void sparc_breakpoint(struct pt_regs *regs);
21 
22 #ifdef CONFIG_SPARC32
23 asmlinkage long sys_mmap2(unsigned long addr, unsigned long len,
24 			  unsigned long prot, unsigned long flags,
25 			  unsigned long fd, unsigned long pgoff);
26 long sys_sparc_remap_file_pages(unsigned long start, unsigned long size,
27 			    unsigned long prot, unsigned long pgoff,
28 			    unsigned long flags);
29 
30 #endif /* CONFIG_SPARC32 */
31 
32 #ifdef CONFIG_SPARC64
33 asmlinkage long sys_sparc_ipc(unsigned int call, int first,
34 			      unsigned long second,
35 			      unsigned long third,
36 			      void __user *ptr, long fifth);
37 asmlinkage long sparc64_personality(unsigned long personality);
38 asmlinkage long sys64_munmap(unsigned long addr, size_t len);
39 asmlinkage unsigned long sys64_mremap(unsigned long addr,
40 				      unsigned long old_len,
41 				      unsigned long new_len,
42 				      unsigned long flags,
43 				      unsigned long new_addr);
44 asmlinkage long sys_utrap_install(utrap_entry_t type,
45 				  utrap_handler_t new_p,
46 				  utrap_handler_t new_d,
47 				  utrap_handler_t __user *old_p,
48 				  utrap_handler_t __user *old_d);
49 asmlinkage long sys_memory_ordering(unsigned long model);
50 asmlinkage void sparc64_set_context(struct pt_regs *regs);
51 asmlinkage void sparc64_get_context(struct pt_regs *regs);
52 asmlinkage long compat_sys_truncate64(const char __user * path,
53 				 u32 high,
54 				 u32 low);
55 asmlinkage long compat_sys_ftruncate64(unsigned int fd,
56 				  u32 high,
57 				  u32 low);
58 struct compat_stat64;
59 asmlinkage long compat_sys_stat64(const char __user * filename,
60 				  struct compat_stat64 __user *statbuf);
61 asmlinkage long compat_sys_lstat64(const char __user * filename,
62 				   struct compat_stat64 __user *statbuf);
63 asmlinkage long compat_sys_fstat64(unsigned int fd,
64 				   struct compat_stat64 __user * statbuf);
65 asmlinkage long compat_sys_fstatat64(unsigned int dfd,
66 				     const char __user *filename,
67 				     struct compat_stat64 __user * statbuf, int flag);
68 asmlinkage long compat_sys_pread64(unsigned int fd,
69 					char __user *ubuf,
70 					compat_size_t count,
71 					u32 poshi,
72 					u32 poslo);
73 asmlinkage long compat_sys_pwrite64(unsigned int fd,
74 					 char __user *ubuf,
75 					 compat_size_t count,
76 					 u32 poshi,
77 					 u32 poslo);
78 asmlinkage long compat_sys_readahead(int fd,
79 				     unsigned offhi,
80 				     unsigned offlo,
81 				     compat_size_t count);
82 long compat_sys_fadvise64(int fd,
83 			  unsigned offhi,
84 			  unsigned offlo,
85 			  compat_size_t len, int advice);
86 long compat_sys_fadvise64_64(int fd,
87 			     unsigned offhi, unsigned offlo,
88 			     unsigned lenhi, unsigned lenlo,
89 			     int advice);
90 long compat_sys_sync_file_range(unsigned int fd,
91 			   unsigned off_high, unsigned off_low,
92 			   unsigned nb_high, unsigned nb_low,
93 			   unsigned int flags);
94 asmlinkage long compat_sys_fallocate(int fd, int mode, u32 offhi, u32 offlo,
95 				     u32 lenhi, u32 lenlo);
96 asmlinkage long compat_sys_fstat64(unsigned int fd,
97 				   struct compat_stat64 __user * statbuf);
98 asmlinkage long compat_sys_fstatat64(unsigned int dfd,
99 				     const char __user *filename,
100 				     struct compat_stat64 __user * statbuf,
101 				     int flag);
102 #endif /* CONFIG_SPARC64 */
103 #endif /* _SYSTBLS_H */
104