]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/asm-sh/unistd.h
sh: Add SH-2A platform headers.
[linux-2.6-omap-h63xx.git] / include / asm-sh / unistd.h
index f1a0cbc966be0c8667a5acf7afe54982c043a9bc..0cae1d248761f5b4a47db13a47bd06f2c0bd62d1 100644 (file)
 #define __NR_sync_file_range   314
 #define __NR_tee               315
 #define __NR_vmsplice          316
+#define __NR_move_pages                317
+#define __NR_getcpu            318
+#define __NR_epoll_pwait       319
 
-#define NR_syscalls 317
+#define NR_syscalls 320
 
 #ifdef __KERNEL__
 
@@ -346,12 +349,30 @@ do { \
        return (type) (res); \
 } while (0)
 
+#if defined(__sh2__) || defined(__SH2E__) || defined(__SH2A__)
+#define SYSCALL_ARG0   "trapa #0x20"
+#define SYSCALL_ARG1   "trapa #0x21"
+#define SYSCALL_ARG2   "trapa #0x22"
+#define SYSCALL_ARG3   "trapa #0x23"
+#define SYSCALL_ARG4   "trapa #0x24"
+#define SYSCALL_ARG5   "trapa #0x25"
+#define SYSCALL_ARG6   "trapa #0x26"
+#else
+#define SYSCALL_ARG0   "trapa #0x10"
+#define SYSCALL_ARG1   "trapa #0x11"
+#define SYSCALL_ARG2   "trapa #0x12"
+#define SYSCALL_ARG3   "trapa #0x13"
+#define SYSCALL_ARG4   "trapa #0x14"
+#define SYSCALL_ARG5   "trapa #0x15"
+#define SYSCALL_ARG6   "trapa #0x16"
+#endif
+
 /* XXX - _foo needs to be __foo, while __NR_bar could be _NR_bar. */
 #define _syscall0(type,name) \
 type name(void) \
 { \
 register long __sc0 __asm__ ("r3") = __NR_##name; \
-__asm__ __volatile__ ("trapa   #0x10" \
+__asm__ __volatile__ (SYSCALL_ARG0 \
        : "=z" (__sc0) \
        : "0" (__sc0) \
        : "memory" ); \
@@ -363,7 +384,7 @@ type name(type1 arg1) \
 { \
 register long __sc0 __asm__ ("r3") = __NR_##name; \
 register long __sc4 __asm__ ("r4") = (long) arg1; \
-__asm__ __volatile__ ("trapa   #0x11" \
+__asm__ __volatile__ (SYSCALL_ARG1 \
        : "=z" (__sc0) \
        : "0" (__sc0), "r" (__sc4) \
        : "memory"); \
@@ -376,7 +397,7 @@ type name(type1 arg1,type2 arg2) \
 register long __sc0 __asm__ ("r3") = __NR_##name; \
 register long __sc4 __asm__ ("r4") = (long) arg1; \
 register long __sc5 __asm__ ("r5") = (long) arg2; \
-__asm__ __volatile__ ("trapa   #0x12" \
+__asm__ __volatile__ (SYSCALL_ARG2 \
        : "=z" (__sc0) \
        : "0" (__sc0), "r" (__sc4), "r" (__sc5) \
        : "memory"); \
@@ -390,7 +411,7 @@ register long __sc0 __asm__ ("r3") = __NR_##name; \
 register long __sc4 __asm__ ("r4") = (long) arg1; \
 register long __sc5 __asm__ ("r5") = (long) arg2; \
 register long __sc6 __asm__ ("r6") = (long) arg3; \
-__asm__ __volatile__ ("trapa   #0x13" \
+__asm__ __volatile__ (SYSCALL_ARG3 \
        : "=z" (__sc0) \
        : "0" (__sc0), "r" (__sc4), "r" (__sc5), "r" (__sc6) \
        : "memory"); \
@@ -405,7 +426,7 @@ register long __sc4 __asm__ ("r4") = (long) arg1; \
 register long __sc5 __asm__ ("r5") = (long) arg2; \
 register long __sc6 __asm__ ("r6") = (long) arg3; \
 register long __sc7 __asm__ ("r7") = (long) arg4; \
-__asm__ __volatile__ ("trapa   #0x14" \
+__asm__ __volatile__ (SYSCALL_ARG4 \
        : "=z" (__sc0) \
        : "0" (__sc0), "r" (__sc4), "r" (__sc5), "r" (__sc6),  \
          "r" (__sc7) \
@@ -422,7 +443,7 @@ register long __sc5 __asm__ ("r5") = (long) arg2; \
 register long __sc6 __asm__ ("r6") = (long) arg3; \
 register long __sc7 __asm__ ("r7") = (long) arg4; \
 register long __sc0 __asm__ ("r0") = (long) arg5; \
-__asm__ __volatile__ ("trapa   #0x15" \
+__asm__ __volatile__ (SYSCALL_ARG5 \
        : "=z" (__sc0) \
        : "0" (__sc0), "r" (__sc4), "r" (__sc5), "r" (__sc6), "r" (__sc7),  \
          "r" (__sc3) \
@@ -440,7 +461,7 @@ register long __sc6 __asm__ ("r6") = (long) arg3; \
 register long __sc7 __asm__ ("r7") = (long) arg4; \
 register long __sc0 __asm__ ("r0") = (long) arg5; \
 register long __sc1 __asm__ ("r1") = (long) arg6; \
-__asm__ __volatile__ ("trapa   #0x16" \
+__asm__ __volatile__ (SYSCALL_ARG6 \
        : "=z" (__sc0) \
        : "0" (__sc0), "r" (__sc4), "r" (__sc5), "r" (__sc6), "r" (__sc7),  \
          "r" (__sc3), "r" (__sc1) \