xref: /openbmc/linux/arch/arm64/include/asm/unistd32.h (revision d2999e1b)
1 /*
2  * AArch32 (compat) system call definitions.
3  *
4  * Copyright (C) 2001-2005 Russell King
5  * Copyright (C) 2012 ARM Ltd.
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License version 2 as
9  * published by the Free Software Foundation.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
18  */
19 
20 #ifndef __SYSCALL
21 #define __SYSCALL(x, y)
22 #endif
23 
24 __SYSCALL(0,   sys_restart_syscall)
25 __SYSCALL(1,   sys_exit)
26 __SYSCALL(2,   sys_fork)
27 __SYSCALL(3,   sys_read)
28 __SYSCALL(4,   sys_write)
29 __SYSCALL(5,   compat_sys_open)
30 __SYSCALL(6,   sys_close)
31 __SYSCALL(7,   sys_ni_syscall)			/* 7 was sys_waitpid */
32 __SYSCALL(8,   sys_creat)
33 __SYSCALL(9,   sys_link)
34 __SYSCALL(10,  sys_unlink)
35 __SYSCALL(11,  compat_sys_execve)
36 __SYSCALL(12,  sys_chdir)
37 __SYSCALL(13,  sys_ni_syscall)			/* 13 was sys_time */
38 __SYSCALL(14,  sys_mknod)
39 __SYSCALL(15,  sys_chmod)
40 __SYSCALL(16,  sys_lchown16)
41 __SYSCALL(17,  sys_ni_syscall)			/* 17 was sys_break */
42 __SYSCALL(18,  sys_ni_syscall)			/* 18 was sys_stat */
43 __SYSCALL(19,  compat_sys_lseek)
44 __SYSCALL(20,  sys_getpid)
45 __SYSCALL(21,  compat_sys_mount)
46 __SYSCALL(22,  sys_ni_syscall)			/* 22 was sys_umount */
47 __SYSCALL(23,  sys_setuid16)
48 __SYSCALL(24,  sys_getuid16)
49 __SYSCALL(25,  sys_ni_syscall)			/* 25 was sys_stime */
50 __SYSCALL(26,  compat_sys_ptrace)
51 __SYSCALL(27,  sys_ni_syscall)			/* 27 was sys_alarm */
52 __SYSCALL(28,  sys_ni_syscall)			/* 28 was sys_fstat */
53 __SYSCALL(29,  sys_pause)
54 __SYSCALL(30,  sys_ni_syscall)			/* 30 was sys_utime */
55 __SYSCALL(31,  sys_ni_syscall)			/* 31 was sys_stty */
56 __SYSCALL(32,  sys_ni_syscall)			/* 32 was sys_gtty */
57 __SYSCALL(33,  sys_access)
58 __SYSCALL(34,  sys_nice)
59 __SYSCALL(35,  sys_ni_syscall)			/* 35 was sys_ftime */
60 __SYSCALL(36,  sys_sync)
61 __SYSCALL(37,  sys_kill)
62 __SYSCALL(38,  sys_rename)
63 __SYSCALL(39,  sys_mkdir)
64 __SYSCALL(40,  sys_rmdir)
65 __SYSCALL(41,  sys_dup)
66 __SYSCALL(42,  sys_pipe)
67 __SYSCALL(43,  compat_sys_times)
68 __SYSCALL(44,  sys_ni_syscall)			/* 44 was sys_prof */
69 __SYSCALL(45,  sys_brk)
70 __SYSCALL(46,  sys_setgid16)
71 __SYSCALL(47,  sys_getgid16)
72 __SYSCALL(48,  sys_ni_syscall)			/* 48 was sys_signal */
73 __SYSCALL(49,  sys_geteuid16)
74 __SYSCALL(50,  sys_getegid16)
75 __SYSCALL(51,  sys_acct)
76 __SYSCALL(52,  sys_umount)
77 __SYSCALL(53,  sys_ni_syscall)			/* 53 was sys_lock */
78 __SYSCALL(54,  compat_sys_ioctl)
79 __SYSCALL(55,  compat_sys_fcntl)
80 __SYSCALL(56,  sys_ni_syscall)			/* 56 was sys_mpx */
81 __SYSCALL(57,  sys_setpgid)
82 __SYSCALL(58,  sys_ni_syscall)			/* 58 was sys_ulimit */
83 __SYSCALL(59,  sys_ni_syscall)			/* 59 was sys_olduname */
84 __SYSCALL(60,  sys_umask)
85 __SYSCALL(61,  sys_chroot)
86 __SYSCALL(62,  compat_sys_ustat)
87 __SYSCALL(63,  sys_dup2)
88 __SYSCALL(64,  sys_getppid)
89 __SYSCALL(65,  sys_getpgrp)
90 __SYSCALL(66,  sys_setsid)
91 __SYSCALL(67,  compat_sys_sigaction)
92 __SYSCALL(68,  sys_ni_syscall)			/* 68 was sys_sgetmask */
93 __SYSCALL(69,  sys_ni_syscall)			/* 69 was sys_ssetmask */
94 __SYSCALL(70,  sys_setreuid16)
95 __SYSCALL(71,  sys_setregid16)
96 __SYSCALL(72,  sys_sigsuspend)
97 __SYSCALL(73,  compat_sys_sigpending)
98 __SYSCALL(74,  sys_sethostname)
99 __SYSCALL(75,  compat_sys_setrlimit)
100 __SYSCALL(76,  sys_ni_syscall)			/* 76 was compat_sys_getrlimit */
101 __SYSCALL(77,  compat_sys_getrusage)
102 __SYSCALL(78,  compat_sys_gettimeofday)
103 __SYSCALL(79,  compat_sys_settimeofday)
104 __SYSCALL(80,  sys_getgroups16)
105 __SYSCALL(81,  sys_setgroups16)
106 __SYSCALL(82,  sys_ni_syscall)			/* 82 was compat_sys_select */
107 __SYSCALL(83,  sys_symlink)
108 __SYSCALL(84,  sys_ni_syscall)			/* 84 was sys_lstat */
109 __SYSCALL(85,  sys_readlink)
110 __SYSCALL(86,  sys_uselib)
111 __SYSCALL(87,  sys_swapon)
112 __SYSCALL(88,  sys_reboot)
113 __SYSCALL(89,  sys_ni_syscall)			/* 89 was sys_readdir */
114 __SYSCALL(90,  sys_ni_syscall)			/* 90 was sys_mmap */
115 __SYSCALL(91,  sys_munmap)
116 __SYSCALL(92,  compat_sys_truncate)
117 __SYSCALL(93,  compat_sys_ftruncate)
118 __SYSCALL(94,  sys_fchmod)
119 __SYSCALL(95,  sys_fchown16)
120 __SYSCALL(96,  sys_getpriority)
121 __SYSCALL(97,  sys_setpriority)
122 __SYSCALL(98,  sys_ni_syscall)			/* 98 was sys_profil */
123 __SYSCALL(99,  compat_sys_statfs)
124 __SYSCALL(100, compat_sys_fstatfs)
125 __SYSCALL(101, sys_ni_syscall)			/* 101 was sys_ioperm */
126 __SYSCALL(102, sys_ni_syscall)			/* 102 was sys_socketcall */
127 __SYSCALL(103, sys_syslog)
128 __SYSCALL(104, compat_sys_setitimer)
129 __SYSCALL(105, compat_sys_getitimer)
130 __SYSCALL(106, compat_sys_newstat)
131 __SYSCALL(107, compat_sys_newlstat)
132 __SYSCALL(108, compat_sys_newfstat)
133 __SYSCALL(109, sys_ni_syscall)			/* 109 was sys_uname */
134 __SYSCALL(110, sys_ni_syscall)			/* 110 was sys_iopl */
135 __SYSCALL(111, sys_vhangup)
136 __SYSCALL(112, sys_ni_syscall)			/* 112 was sys_idle */
137 __SYSCALL(113, sys_ni_syscall)			/* 113 was sys_syscall */
138 __SYSCALL(114, compat_sys_wait4)
139 __SYSCALL(115, sys_swapoff)
140 __SYSCALL(116, compat_sys_sysinfo)
141 __SYSCALL(117, sys_ni_syscall)			/* 117 was sys_ipc */
142 __SYSCALL(118, sys_fsync)
143 __SYSCALL(119, compat_sys_sigreturn_wrapper)
144 __SYSCALL(120, sys_clone)
145 __SYSCALL(121, sys_setdomainname)
146 __SYSCALL(122, sys_newuname)
147 __SYSCALL(123, sys_ni_syscall)			/* 123 was sys_modify_ldt */
148 __SYSCALL(124, compat_sys_adjtimex)
149 __SYSCALL(125, sys_mprotect)
150 __SYSCALL(126, compat_sys_sigprocmask)
151 __SYSCALL(127, sys_ni_syscall)			/* 127 was sys_create_module */
152 __SYSCALL(128, sys_init_module)
153 __SYSCALL(129, sys_delete_module)
154 __SYSCALL(130, sys_ni_syscall)			/* 130 was sys_get_kernel_syms */
155 __SYSCALL(131, sys_quotactl)
156 __SYSCALL(132, sys_getpgid)
157 __SYSCALL(133, sys_fchdir)
158 __SYSCALL(134, sys_bdflush)
159 __SYSCALL(135, sys_sysfs)
160 __SYSCALL(136, sys_personality)
161 __SYSCALL(137, sys_ni_syscall)			/* 137 was sys_afs_syscall */
162 __SYSCALL(138, sys_setfsuid16)
163 __SYSCALL(139, sys_setfsgid16)
164 __SYSCALL(140, sys_llseek)
165 __SYSCALL(141, compat_sys_getdents)
166 __SYSCALL(142, compat_sys_select)
167 __SYSCALL(143, sys_flock)
168 __SYSCALL(144, sys_msync)
169 __SYSCALL(145, compat_sys_readv)
170 __SYSCALL(146, compat_sys_writev)
171 __SYSCALL(147, sys_getsid)
172 __SYSCALL(148, sys_fdatasync)
173 __SYSCALL(149, compat_sys_sysctl)
174 __SYSCALL(150, sys_mlock)
175 __SYSCALL(151, sys_munlock)
176 __SYSCALL(152, sys_mlockall)
177 __SYSCALL(153, sys_munlockall)
178 __SYSCALL(154, sys_sched_setparam)
179 __SYSCALL(155, sys_sched_getparam)
180 __SYSCALL(156, sys_sched_setscheduler)
181 __SYSCALL(157, sys_sched_getscheduler)
182 __SYSCALL(158, sys_sched_yield)
183 __SYSCALL(159, sys_sched_get_priority_max)
184 __SYSCALL(160, sys_sched_get_priority_min)
185 __SYSCALL(161, compat_sys_sched_rr_get_interval)
186 __SYSCALL(162, compat_sys_nanosleep)
187 __SYSCALL(163, sys_mremap)
188 __SYSCALL(164, sys_setresuid16)
189 __SYSCALL(165, sys_getresuid16)
190 __SYSCALL(166, sys_ni_syscall)			/* 166 was sys_vm86 */
191 __SYSCALL(167, sys_ni_syscall)			/* 167 was sys_query_module */
192 __SYSCALL(168, sys_poll)
193 __SYSCALL(169, sys_ni_syscall)
194 __SYSCALL(170, sys_setresgid16)
195 __SYSCALL(171, sys_getresgid16)
196 __SYSCALL(172, sys_prctl)
197 __SYSCALL(173, compat_sys_rt_sigreturn_wrapper)
198 __SYSCALL(174, compat_sys_rt_sigaction)
199 __SYSCALL(175, compat_sys_rt_sigprocmask)
200 __SYSCALL(176, compat_sys_rt_sigpending)
201 __SYSCALL(177, compat_sys_rt_sigtimedwait)
202 __SYSCALL(178, compat_sys_rt_sigqueueinfo)
203 __SYSCALL(179, compat_sys_rt_sigsuspend)
204 __SYSCALL(180, compat_sys_pread64_wrapper)
205 __SYSCALL(181, compat_sys_pwrite64_wrapper)
206 __SYSCALL(182, sys_chown16)
207 __SYSCALL(183, sys_getcwd)
208 __SYSCALL(184, sys_capget)
209 __SYSCALL(185, sys_capset)
210 __SYSCALL(186, compat_sys_sigaltstack)
211 __SYSCALL(187, compat_sys_sendfile)
212 __SYSCALL(188, sys_ni_syscall)			/* 188 reserved */
213 __SYSCALL(189, sys_ni_syscall)			/* 189 reserved */
214 __SYSCALL(190, sys_vfork)
215 __SYSCALL(191, compat_sys_getrlimit)		/* SuS compliant getrlimit */
216 __SYSCALL(192, sys_mmap_pgoff)
217 __SYSCALL(193, compat_sys_truncate64_wrapper)
218 __SYSCALL(194, compat_sys_ftruncate64_wrapper)
219 __SYSCALL(195, sys_stat64)
220 __SYSCALL(196, sys_lstat64)
221 __SYSCALL(197, sys_fstat64)
222 __SYSCALL(198, sys_lchown)
223 __SYSCALL(199, sys_getuid)
224 __SYSCALL(200, sys_getgid)
225 __SYSCALL(201, sys_geteuid)
226 __SYSCALL(202, sys_getegid)
227 __SYSCALL(203, sys_setreuid)
228 __SYSCALL(204, sys_setregid)
229 __SYSCALL(205, sys_getgroups)
230 __SYSCALL(206, sys_setgroups)
231 __SYSCALL(207, sys_fchown)
232 __SYSCALL(208, sys_setresuid)
233 __SYSCALL(209, sys_getresuid)
234 __SYSCALL(210, sys_setresgid)
235 __SYSCALL(211, sys_getresgid)
236 __SYSCALL(212, sys_chown)
237 __SYSCALL(213, sys_setuid)
238 __SYSCALL(214, sys_setgid)
239 __SYSCALL(215, sys_setfsuid)
240 __SYSCALL(216, sys_setfsgid)
241 __SYSCALL(217, compat_sys_getdents64)
242 __SYSCALL(218, sys_pivot_root)
243 __SYSCALL(219, sys_mincore)
244 __SYSCALL(220, sys_madvise)
245 __SYSCALL(221, compat_sys_fcntl64)
246 __SYSCALL(222, sys_ni_syscall)			/* 222 for tux */
247 __SYSCALL(223, sys_ni_syscall)			/* 223 is unused */
248 __SYSCALL(224, sys_gettid)
249 __SYSCALL(225, compat_sys_readahead_wrapper)
250 __SYSCALL(226, sys_setxattr)
251 __SYSCALL(227, sys_lsetxattr)
252 __SYSCALL(228, sys_fsetxattr)
253 __SYSCALL(229, sys_getxattr)
254 __SYSCALL(230, sys_lgetxattr)
255 __SYSCALL(231, sys_fgetxattr)
256 __SYSCALL(232, sys_listxattr)
257 __SYSCALL(233, sys_llistxattr)
258 __SYSCALL(234, sys_flistxattr)
259 __SYSCALL(235, sys_removexattr)
260 __SYSCALL(236, sys_lremovexattr)
261 __SYSCALL(237, sys_fremovexattr)
262 __SYSCALL(238, sys_tkill)
263 __SYSCALL(239, sys_sendfile64)
264 __SYSCALL(240, compat_sys_futex)
265 __SYSCALL(241, compat_sys_sched_setaffinity)
266 __SYSCALL(242, compat_sys_sched_getaffinity)
267 __SYSCALL(243, compat_sys_io_setup)
268 __SYSCALL(244, sys_io_destroy)
269 __SYSCALL(245, compat_sys_io_getevents)
270 __SYSCALL(246, compat_sys_io_submit)
271 __SYSCALL(247, sys_io_cancel)
272 __SYSCALL(248, sys_exit_group)
273 __SYSCALL(249, compat_sys_lookup_dcookie)
274 __SYSCALL(250, sys_epoll_create)
275 __SYSCALL(251, sys_epoll_ctl)
276 __SYSCALL(252, sys_epoll_wait)
277 __SYSCALL(253, sys_remap_file_pages)
278 __SYSCALL(254, sys_ni_syscall)			/* 254 for set_thread_area */
279 __SYSCALL(255, sys_ni_syscall)			/* 255 for get_thread_area */
280 __SYSCALL(256, sys_set_tid_address)
281 __SYSCALL(257, compat_sys_timer_create)
282 __SYSCALL(258, compat_sys_timer_settime)
283 __SYSCALL(259, compat_sys_timer_gettime)
284 __SYSCALL(260, sys_timer_getoverrun)
285 __SYSCALL(261, sys_timer_delete)
286 __SYSCALL(262, compat_sys_clock_settime)
287 __SYSCALL(263, compat_sys_clock_gettime)
288 __SYSCALL(264, compat_sys_clock_getres)
289 __SYSCALL(265, compat_sys_clock_nanosleep)
290 __SYSCALL(266, compat_sys_statfs64_wrapper)
291 __SYSCALL(267, compat_sys_fstatfs64_wrapper)
292 __SYSCALL(268, sys_tgkill)
293 __SYSCALL(269, compat_sys_utimes)
294 __SYSCALL(270, compat_sys_fadvise64_64_wrapper)
295 __SYSCALL(271, sys_pciconfig_iobase)
296 __SYSCALL(272, sys_pciconfig_read)
297 __SYSCALL(273, sys_pciconfig_write)
298 __SYSCALL(274, compat_sys_mq_open)
299 __SYSCALL(275, sys_mq_unlink)
300 __SYSCALL(276, compat_sys_mq_timedsend)
301 __SYSCALL(277, compat_sys_mq_timedreceive)
302 __SYSCALL(278, compat_sys_mq_notify)
303 __SYSCALL(279, compat_sys_mq_getsetattr)
304 __SYSCALL(280, compat_sys_waitid)
305 __SYSCALL(281, sys_socket)
306 __SYSCALL(282, sys_bind)
307 __SYSCALL(283, sys_connect)
308 __SYSCALL(284, sys_listen)
309 __SYSCALL(285, sys_accept)
310 __SYSCALL(286, sys_getsockname)
311 __SYSCALL(287, sys_getpeername)
312 __SYSCALL(288, sys_socketpair)
313 __SYSCALL(289, sys_send)
314 __SYSCALL(290, sys_sendto)
315 __SYSCALL(291, compat_sys_recv)
316 __SYSCALL(292, compat_sys_recvfrom)
317 __SYSCALL(293, sys_shutdown)
318 __SYSCALL(294, compat_sys_setsockopt)
319 __SYSCALL(295, compat_sys_getsockopt)
320 __SYSCALL(296, compat_sys_sendmsg)
321 __SYSCALL(297, compat_sys_recvmsg)
322 __SYSCALL(298, sys_semop)
323 __SYSCALL(299, sys_semget)
324 __SYSCALL(300, compat_sys_semctl)
325 __SYSCALL(301, compat_sys_msgsnd)
326 __SYSCALL(302, compat_sys_msgrcv)
327 __SYSCALL(303, sys_msgget)
328 __SYSCALL(304, compat_sys_msgctl)
329 __SYSCALL(305, compat_sys_shmat)
330 __SYSCALL(306, sys_shmdt)
331 __SYSCALL(307, sys_shmget)
332 __SYSCALL(308, compat_sys_shmctl)
333 __SYSCALL(309, sys_add_key)
334 __SYSCALL(310, sys_request_key)
335 __SYSCALL(311, compat_sys_keyctl)
336 __SYSCALL(312, compat_sys_semtimedop)
337 __SYSCALL(313, sys_ni_syscall)
338 __SYSCALL(314, sys_ioprio_set)
339 __SYSCALL(315, sys_ioprio_get)
340 __SYSCALL(316, sys_inotify_init)
341 __SYSCALL(317, sys_inotify_add_watch)
342 __SYSCALL(318, sys_inotify_rm_watch)
343 __SYSCALL(319, compat_sys_mbind)
344 __SYSCALL(320, compat_sys_get_mempolicy)
345 __SYSCALL(321, compat_sys_set_mempolicy)
346 __SYSCALL(322, compat_sys_openat)
347 __SYSCALL(323, sys_mkdirat)
348 __SYSCALL(324, sys_mknodat)
349 __SYSCALL(325, sys_fchownat)
350 __SYSCALL(326, compat_sys_futimesat)
351 __SYSCALL(327, sys_fstatat64)
352 __SYSCALL(328, sys_unlinkat)
353 __SYSCALL(329, sys_renameat)
354 __SYSCALL(330, sys_linkat)
355 __SYSCALL(331, sys_symlinkat)
356 __SYSCALL(332, sys_readlinkat)
357 __SYSCALL(333, sys_fchmodat)
358 __SYSCALL(334, sys_faccessat)
359 __SYSCALL(335, compat_sys_pselect6)
360 __SYSCALL(336, compat_sys_ppoll)
361 __SYSCALL(337, sys_unshare)
362 __SYSCALL(338, compat_sys_set_robust_list)
363 __SYSCALL(339, compat_sys_get_robust_list)
364 __SYSCALL(340, sys_splice)
365 __SYSCALL(341, compat_sys_sync_file_range2_wrapper)
366 __SYSCALL(342, sys_tee)
367 __SYSCALL(343, compat_sys_vmsplice)
368 __SYSCALL(344, compat_sys_move_pages)
369 __SYSCALL(345, sys_getcpu)
370 __SYSCALL(346, compat_sys_epoll_pwait)
371 __SYSCALL(347, compat_sys_kexec_load)
372 __SYSCALL(348, compat_sys_utimensat)
373 __SYSCALL(349, compat_sys_signalfd)
374 __SYSCALL(350, sys_timerfd_create)
375 __SYSCALL(351, sys_eventfd)
376 __SYSCALL(352, compat_sys_fallocate_wrapper)
377 __SYSCALL(353, compat_sys_timerfd_settime)
378 __SYSCALL(354, compat_sys_timerfd_gettime)
379 __SYSCALL(355, compat_sys_signalfd4)
380 __SYSCALL(356, sys_eventfd2)
381 __SYSCALL(357, sys_epoll_create1)
382 __SYSCALL(358, sys_dup3)
383 __SYSCALL(359, sys_pipe2)
384 __SYSCALL(360, sys_inotify_init1)
385 __SYSCALL(361, compat_sys_preadv)
386 __SYSCALL(362, compat_sys_pwritev)
387 __SYSCALL(363, compat_sys_rt_tgsigqueueinfo)
388 __SYSCALL(364, sys_perf_event_open)
389 __SYSCALL(365, compat_sys_recvmmsg)
390 __SYSCALL(366, sys_accept4)
391 __SYSCALL(367, sys_fanotify_init)
392 __SYSCALL(368, compat_sys_fanotify_mark)
393 __SYSCALL(369, sys_prlimit64)
394 __SYSCALL(370, sys_name_to_handle_at)
395 __SYSCALL(371, compat_sys_open_by_handle_at)
396 __SYSCALL(372, compat_sys_clock_adjtime)
397 __SYSCALL(373, sys_syncfs)
398 __SYSCALL(374, compat_sys_sendmmsg)
399 __SYSCALL(375, sys_setns)
400 __SYSCALL(376, compat_sys_process_vm_readv)
401 __SYSCALL(377, compat_sys_process_vm_writev)
402 __SYSCALL(378, sys_kcmp)
403 __SYSCALL(379, sys_finit_module)
404 __SYSCALL(380, sys_sched_setattr)
405 __SYSCALL(381, sys_sched_getattr)
406 __SYSCALL(382, sys_renameat2)
407 
408 #define __NR_compat_syscalls		383
409 
410 /*
411  * Compat syscall numbers used by the AArch64 kernel.
412  */
413 #define __NR_compat_restart_syscall	0
414 #define __NR_compat_sigreturn		119
415 #define __NR_compat_rt_sigreturn	173
416 
417 
418 /*
419  * The following SVCs are ARM private.
420  */
421 #define __ARM_NR_COMPAT_BASE		0x0f0000
422 #define __ARM_NR_compat_cacheflush	(__ARM_NR_COMPAT_BASE+2)
423 #define __ARM_NR_compat_set_tls		(__ARM_NR_COMPAT_BASE+5)
424