blob: 22886cbdae7aa2b7c615bd800259600bc1148bf6 [file] [log] [blame]
Robin Getz96f10502009-09-24 14:11:24 +00001/*
2 * Copyright 2004-2009 Analog Devices Inc.
3 *
4 * Licensed under the GPL-2 or later.
5 */
6
Bryan Wu1394f032007-05-06 14:50:22 -07007#ifndef __ASM_BFIN_UNISTD_H
8#define __ASM_BFIN_UNISTD_H
9/*
10 * This file contains the system call numbers.
11 */
Bryan Wu0b95f222007-09-23 00:51:32 +080012#define __NR_restart_syscall 0
Bryan Wu1394f032007-05-06 14:50:22 -070013#define __NR_exit 1
14#define __NR_fork 2
15#define __NR_read 3
16#define __NR_write 4
17#define __NR_open 5
18#define __NR_close 6
19 /* 7 __NR_waitpid obsolete */
20#define __NR_creat 8
21#define __NR_link 9
22#define __NR_unlink 10
23#define __NR_execve 11
24#define __NR_chdir 12
25#define __NR_time 13
26#define __NR_mknod 14
27#define __NR_chmod 15
28#define __NR_chown 16
29 /* 17 __NR_break obsolete */
30 /* 18 __NR_oldstat obsolete */
31#define __NR_lseek 19
32#define __NR_getpid 20
33#define __NR_mount 21
34 /* 22 __NR_umount obsolete */
35#define __NR_setuid 23
36#define __NR_getuid 24
37#define __NR_stime 25
38#define __NR_ptrace 26
39#define __NR_alarm 27
40 /* 28 __NR_oldfstat obsolete */
41#define __NR_pause 29
42 /* 30 __NR_utime obsolete */
43 /* 31 __NR_stty obsolete */
44 /* 32 __NR_gtty obsolete */
45#define __NR_access 33
46#define __NR_nice 34
47 /* 35 __NR_ftime obsolete */
48#define __NR_sync 36
49#define __NR_kill 37
50#define __NR_rename 38
51#define __NR_mkdir 39
52#define __NR_rmdir 40
53#define __NR_dup 41
54#define __NR_pipe 42
55#define __NR_times 43
56 /* 44 __NR_prof obsolete */
57#define __NR_brk 45
58#define __NR_setgid 46
59#define __NR_getgid 47
60 /* 48 __NR_signal obsolete */
61#define __NR_geteuid 49
62#define __NR_getegid 50
63#define __NR_acct 51
64#define __NR_umount2 52
65 /* 53 __NR_lock obsolete */
66#define __NR_ioctl 54
67#define __NR_fcntl 55
68 /* 56 __NR_mpx obsolete */
69#define __NR_setpgid 57
70 /* 58 __NR_ulimit obsolete */
71 /* 59 __NR_oldolduname obsolete */
72#define __NR_umask 60
73#define __NR_chroot 61
74#define __NR_ustat 62
75#define __NR_dup2 63
76#define __NR_getppid 64
77#define __NR_getpgrp 65
78#define __NR_setsid 66
79 /* 67 __NR_sigaction obsolete */
80#define __NR_sgetmask 68
81#define __NR_ssetmask 69
82#define __NR_setreuid 70
83#define __NR_setregid 71
84 /* 72 __NR_sigsuspend obsolete */
85 /* 73 __NR_sigpending obsolete */
86#define __NR_sethostname 74
87#define __NR_setrlimit 75
88 /* 76 __NR_old_getrlimit obsolete */
89#define __NR_getrusage 77
90#define __NR_gettimeofday 78
91#define __NR_settimeofday 79
92#define __NR_getgroups 80
93#define __NR_setgroups 81
94 /* 82 __NR_select obsolete */
95#define __NR_symlink 83
96 /* 84 __NR_oldlstat obsolete */
97#define __NR_readlink 85
98 /* 86 __NR_uselib obsolete */
99 /* 87 __NR_swapon obsolete */
100#define __NR_reboot 88
101 /* 89 __NR_readdir obsolete */
102 /* 90 __NR_mmap obsolete */
103#define __NR_munmap 91
104#define __NR_truncate 92
105#define __NR_ftruncate 93
106#define __NR_fchmod 94
107#define __NR_fchown 95
108#define __NR_getpriority 96
109#define __NR_setpriority 97
110 /* 98 __NR_profil obsolete */
111#define __NR_statfs 99
112#define __NR_fstatfs 100
113 /* 101 __NR_ioperm */
114 /* 102 __NR_socketcall obsolete */
115#define __NR_syslog 103
116#define __NR_setitimer 104
117#define __NR_getitimer 105
118#define __NR_stat 106
119#define __NR_lstat 107
120#define __NR_fstat 108
121 /* 109 __NR_olduname obsolete */
122 /* 110 __NR_iopl obsolete */
123#define __NR_vhangup 111
124 /* 112 __NR_idle obsolete */
125 /* 113 __NR_vm86old */
126#define __NR_wait4 114
127 /* 115 __NR_swapoff obsolete */
128#define __NR_sysinfo 116
129 /* 117 __NR_ipc oboslete */
130#define __NR_fsync 118
131 /* 119 __NR_sigreturn obsolete */
132#define __NR_clone 120
133#define __NR_setdomainname 121
134#define __NR_uname 122
135 /* 123 __NR_modify_ldt obsolete */
136#define __NR_adjtimex 124
137#define __NR_mprotect 125
138 /* 126 __NR_sigprocmask obsolete */
139 /* 127 __NR_create_module obsolete */
140#define __NR_init_module 128
141#define __NR_delete_module 129
142 /* 130 __NR_get_kernel_syms obsolete */
143#define __NR_quotactl 131
144#define __NR_getpgid 132
145#define __NR_fchdir 133
146#define __NR_bdflush 134
147 /* 135 was sysfs */
148#define __NR_personality 136
149 /* 137 __NR_afs_syscall */
150#define __NR_setfsuid 138
151#define __NR_setfsgid 139
152#define __NR__llseek 140
153#define __NR_getdents 141
154 /* 142 __NR__newselect obsolete */
155#define __NR_flock 143
156 /* 144 __NR_msync obsolete */
157#define __NR_readv 145
158#define __NR_writev 146
159#define __NR_getsid 147
160#define __NR_fdatasync 148
161#define __NR__sysctl 149
162 /* 150 __NR_mlock */
163 /* 151 __NR_munlock */
164 /* 152 __NR_mlockall */
165 /* 153 __NR_munlockall */
166#define __NR_sched_setparam 154
167#define __NR_sched_getparam 155
168#define __NR_sched_setscheduler 156
169#define __NR_sched_getscheduler 157
170#define __NR_sched_yield 158
171#define __NR_sched_get_priority_max 159
172#define __NR_sched_get_priority_min 160
173#define __NR_sched_rr_get_interval 161
174#define __NR_nanosleep 162
Bryan Wu0b95f222007-09-23 00:51:32 +0800175#define __NR_mremap 163
Bryan Wu1394f032007-05-06 14:50:22 -0700176#define __NR_setresuid 164
177#define __NR_getresuid 165
178 /* 166 __NR_vm86 */
179 /* 167 __NR_query_module */
180 /* 168 __NR_poll */
Bryan Wu0b95f222007-09-23 00:51:32 +0800181#define __NR_nfsservctl 169
Bryan Wu1394f032007-05-06 14:50:22 -0700182#define __NR_setresgid 170
183#define __NR_getresgid 171
184#define __NR_prctl 172
185#define __NR_rt_sigreturn 173
186#define __NR_rt_sigaction 174
187#define __NR_rt_sigprocmask 175
188#define __NR_rt_sigpending 176
189#define __NR_rt_sigtimedwait 177
190#define __NR_rt_sigqueueinfo 178
191#define __NR_rt_sigsuspend 179
192#define __NR_pread 180
193#define __NR_pwrite 181
194#define __NR_lchown 182
195#define __NR_getcwd 183
196#define __NR_capget 184
197#define __NR_capset 185
198#define __NR_sigaltstack 186
199#define __NR_sendfile 187
200 /* 188 __NR_getpmsg */
201 /* 189 __NR_putpmsg */
202#define __NR_vfork 190
203#define __NR_getrlimit 191
204#define __NR_mmap2 192
205#define __NR_truncate64 193
206#define __NR_ftruncate64 194
207#define __NR_stat64 195
208#define __NR_lstat64 196
209#define __NR_fstat64 197
210#define __NR_chown32 198
211#define __NR_getuid32 199
212#define __NR_getgid32 200
213#define __NR_geteuid32 201
214#define __NR_getegid32 202
215#define __NR_setreuid32 203
216#define __NR_setregid32 204
217#define __NR_getgroups32 205
218#define __NR_setgroups32 206
219#define __NR_fchown32 207
220#define __NR_setresuid32 208
221#define __NR_getresuid32 209
222#define __NR_setresgid32 210
223#define __NR_getresgid32 211
224#define __NR_lchown32 212
225#define __NR_setuid32 213
226#define __NR_setgid32 214
227#define __NR_setfsuid32 215
228#define __NR_setfsgid32 216
229#define __NR_pivot_root 217
230 /* 218 __NR_mincore */
231 /* 219 __NR_madvise */
232#define __NR_getdents64 220
233#define __NR_fcntl64 221
234 /* 222 reserved for TUX */
235 /* 223 reserved for TUX */
236#define __NR_gettid 224
Bryan Wu0b95f222007-09-23 00:51:32 +0800237#define __NR_readahead 225
Bryan Wu1394f032007-05-06 14:50:22 -0700238#define __NR_setxattr 226
239#define __NR_lsetxattr 227
240#define __NR_fsetxattr 228
241#define __NR_getxattr 229
242#define __NR_lgetxattr 230
243#define __NR_fgetxattr 231
244#define __NR_listxattr 232
245#define __NR_llistxattr 233
246#define __NR_flistxattr 234
247#define __NR_removexattr 235
248#define __NR_lremovexattr 236
249#define __NR_fremovexattr 237
250#define __NR_tkill 238
251#define __NR_sendfile64 239
252#define __NR_futex 240
253#define __NR_sched_setaffinity 241
254#define __NR_sched_getaffinity 242
255 /* 243 __NR_set_thread_area */
256 /* 244 __NR_get_thread_area */
257#define __NR_io_setup 245
258#define __NR_io_destroy 246
259#define __NR_io_getevents 247
260#define __NR_io_submit 248
261#define __NR_io_cancel 249
262 /* 250 __NR_alloc_hugepages */
263 /* 251 __NR_free_hugepages */
264#define __NR_exit_group 252
265#define __NR_lookup_dcookie 253
266#define __NR_bfin_spinlock 254
267
268#define __NR_epoll_create 255
269#define __NR_epoll_ctl 256
270#define __NR_epoll_wait 257
271 /* 258 __NR_remap_file_pages */
272#define __NR_set_tid_address 259
273#define __NR_timer_create 260
Mike Frysinger53eabf02008-04-23 08:09:45 +0800274#define __NR_timer_settime 261
275#define __NR_timer_gettime 262
276#define __NR_timer_getoverrun 263
277#define __NR_timer_delete 264
278#define __NR_clock_settime 265
279#define __NR_clock_gettime 266
280#define __NR_clock_getres 267
281#define __NR_clock_nanosleep 268
Bryan Wu1394f032007-05-06 14:50:22 -0700282#define __NR_statfs64 269
283#define __NR_fstatfs64 270
284#define __NR_tgkill 271
285#define __NR_utimes 272
286#define __NR_fadvise64_64 273
287 /* 274 __NR_vserver */
288 /* 275 __NR_mbind */
289 /* 276 __NR_get_mempolicy */
290 /* 277 __NR_set_mempolicy */
291#define __NR_mq_open 278
Mike Frysinger53eabf02008-04-23 08:09:45 +0800292#define __NR_mq_unlink 279
293#define __NR_mq_timedsend 280
294#define __NR_mq_timedreceive 281
295#define __NR_mq_notify 282
296#define __NR_mq_getsetattr 283
Bryan Wu0b95f222007-09-23 00:51:32 +0800297#define __NR_kexec_load 284
Bryan Wu1394f032007-05-06 14:50:22 -0700298#define __NR_waitid 285
299#define __NR_add_key 286
300#define __NR_request_key 287
301#define __NR_keyctl 288
302#define __NR_ioprio_set 289
303#define __NR_ioprio_get 290
304#define __NR_inotify_init 291
305#define __NR_inotify_add_watch 292
306#define __NR_inotify_rm_watch 293
307 /* 294 __NR_migrate_pages */
308#define __NR_openat 295
309#define __NR_mkdirat 296
310#define __NR_mknodat 297
311#define __NR_fchownat 298
312#define __NR_futimesat 299
313#define __NR_fstatat64 300
314#define __NR_unlinkat 301
315#define __NR_renameat 302
316#define __NR_linkat 303
317#define __NR_symlinkat 304
318#define __NR_readlinkat 305
319#define __NR_fchmodat 306
320#define __NR_faccessat 307
321#define __NR_pselect6 308
322#define __NR_ppoll 309
323#define __NR_unshare 310
324
325/* Blackfin private syscalls */
326#define __NR_sram_alloc 311
327#define __NR_sram_free 312
328#define __NR_dma_memcpy 313
329
330/* socket syscalls */
331#define __NR_accept 314
332#define __NR_bind 315
333#define __NR_connect 316
334#define __NR_getpeername 317
335#define __NR_getsockname 318
336#define __NR_getsockopt 319
337#define __NR_listen 320
338#define __NR_recv 321
339#define __NR_recvfrom 322
340#define __NR_recvmsg 323
341#define __NR_send 324
342#define __NR_sendmsg 325
343#define __NR_sendto 326
344#define __NR_setsockopt 327
345#define __NR_shutdown 328
346#define __NR_socket 329
347#define __NR_socketpair 330
348
349/* sysv ipc syscalls */
350#define __NR_semctl 331
351#define __NR_semget 332
352#define __NR_semop 333
353#define __NR_msgctl 334
354#define __NR_msgget 335
355#define __NR_msgrcv 336
356#define __NR_msgsnd 337
357#define __NR_shmat 338
358#define __NR_shmctl 339
359#define __NR_shmdt 340
360#define __NR_shmget 341
361
Bryan Wu0b95f222007-09-23 00:51:32 +0800362#define __NR_splice 342
363#define __NR_sync_file_range 343
364#define __NR_tee 344
365#define __NR_vmsplice 345
366
367#define __NR_epoll_pwait 346
368#define __NR_utimensat 347
369#define __NR_signalfd 348
Bryan Wu2f775db2008-03-06 16:04:58 -0700370#define __NR_timerfd_create 349
Bryan Wu0b95f222007-09-23 00:51:32 +0800371#define __NR_eventfd 350
372#define __NR_pread64 351
373#define __NR_pwrite64 352
374#define __NR_fadvise64 353
375#define __NR_set_robust_list 354
376#define __NR_get_robust_list 355
377#define __NR_fallocate 356
Bernd Schmidtfc975512008-01-27 19:56:43 +0800378#define __NR_semtimedop 357
Bryan Wu2f775db2008-03-06 16:04:58 -0700379#define __NR_timerfd_settime 358
380#define __NR_timerfd_gettime 359
Bryan Wua4b7b6d2008-08-14 15:40:19 +0800381#define __NR_signalfd4 360
382#define __NR_eventfd2 361
383#define __NR_epoll_create1 362
384#define __NR_dup3 363
385#define __NR_pipe2 364
386#define __NR_inotify_init1 365
Mike Frysinger7a1450f2009-05-26 04:55:38 -0400387#define __NR_preadv 366
388#define __NR_pwritev 367
Mike Frysinger61cdd7a2009-06-12 07:30:55 -0400389#define __NR_rt_tgsigqueueinfo 368
Ingo Molnarcdd6c482009-09-21 12:02:48 +0200390#define __NR_perf_event_open 369
Mike Frysinger5540a442009-12-15 04:07:32 -0500391#define __NR_recvmmsg 370
Bryan Wu0b95f222007-09-23 00:51:32 +0800392
Mike Frysinger5540a442009-12-15 04:07:32 -0500393#define __NR_syscall 371
Bryan Wu1394f032007-05-06 14:50:22 -0700394#define NR_syscalls __NR_syscall
395
Bryan Wu0b95f222007-09-23 00:51:32 +0800396/* Old optional stuff no one actually uses */
397#define __IGNORE_sysfs
398#define __IGNORE_uselib
399
400/* Implement the newer interfaces */
401#define __IGNORE_mmap
402#define __IGNORE_poll
403#define __IGNORE_select
404#define __IGNORE_utime
405
406/* Not relevant on no-mmu */
407#define __IGNORE_swapon
408#define __IGNORE_swapoff
409#define __IGNORE_msync
410#define __IGNORE_mlock
411#define __IGNORE_munlock
412#define __IGNORE_mlockall
413#define __IGNORE_munlockall
414#define __IGNORE_mincore
415#define __IGNORE_madvise
416#define __IGNORE_remap_file_pages
417#define __IGNORE_mbind
418#define __IGNORE_get_mempolicy
419#define __IGNORE_set_mempolicy
420#define __IGNORE_migrate_pages
421#define __IGNORE_move_pages
422#define __IGNORE_getcpu
423
Bryan Wu1394f032007-05-06 14:50:22 -0700424#ifdef __KERNEL__
425#define __ARCH_WANT_IPC_PARSE_VERSION
426#define __ARCH_WANT_STAT64
427#define __ARCH_WANT_SYS_ALARM
428#define __ARCH_WANT_SYS_GETHOSTNAME
429#define __ARCH_WANT_SYS_PAUSE
430#define __ARCH_WANT_SYS_SGETMASK
431#define __ARCH_WANT_SYS_TIME
432#define __ARCH_WANT_SYS_FADVISE64
433#define __ARCH_WANT_SYS_GETPGRP
434#define __ARCH_WANT_SYS_LLSEEK
435#define __ARCH_WANT_SYS_NICE
436#define __ARCH_WANT_SYS_RT_SIGACTION
437#define __ARCH_WANT_SYS_RT_SIGSUSPEND
Bryan Wu1394f032007-05-06 14:50:22 -0700438
439/*
440 * "Conditional" syscalls
441 *
442 * What we want is __attribute__((weak,alias("sys_ni_syscall"))),
443 * but it doesn't work on all toolchains, so we just do it by hand
444 */
445#define cond_syscall(x) asm(".weak\t_" #x "\n\t.set\t_" #x ",_sys_ni_syscall");
446
Mike Frysingerb9b71272007-06-21 11:34:16 +0800447#endif /* __KERNEL__ */
448
Bryan Wu1394f032007-05-06 14:50:22 -0700449#endif /* __ASM_BFIN_UNISTD_H */