Commit 2521d69883285d0bb001036de64e68482ea6f826

Authored by bellard
1 parent 2ab83ea7

factorized more definitions - suppressed broken sound ioctls


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@241 c046a42c-6fe2-441c-8c8c-71466251a162
linux-user/ioctls.h
@@ -150,6 +150,7 @@ @@ -150,6 +150,7 @@
150 IOCTL(CDROM_DISC_STATUS, 0, TYPE_NULL) 150 IOCTL(CDROM_DISC_STATUS, 0, TYPE_NULL)
151 IOCTL(CDROMAUDIOBUFSIZ, 0, TYPE_INT) 151 IOCTL(CDROMAUDIOBUFSIZ, 0, TYPE_INT)
152 152
  153 +#if 0
153 IOCTL(SNDCTL_COPR_HALT, IOC_RW, MK_PTR(TYPE_INT)) 154 IOCTL(SNDCTL_COPR_HALT, IOC_RW, MK_PTR(TYPE_INT))
154 IOCTL(SNDCTL_COPR_LOAD, IOC_RW, MK_PTR(TYPE_INT)) 155 IOCTL(SNDCTL_COPR_LOAD, IOC_RW, MK_PTR(TYPE_INT))
155 IOCTL(SNDCTL_COPR_RCODE, IOC_RW, MK_PTR(TYPE_INT)) 156 IOCTL(SNDCTL_COPR_RCODE, IOC_RW, MK_PTR(TYPE_INT))
@@ -160,14 +161,15 @@ @@ -160,14 +161,15 @@
160 IOCTL(SNDCTL_COPR_SENDMSG, IOC_RW, MK_PTR(TYPE_INT)) 161 IOCTL(SNDCTL_COPR_SENDMSG, IOC_RW, MK_PTR(TYPE_INT))
161 IOCTL(SNDCTL_COPR_WCODE, IOC_W, MK_PTR(TYPE_INT)) 162 IOCTL(SNDCTL_COPR_WCODE, IOC_W, MK_PTR(TYPE_INT))
162 IOCTL(SNDCTL_COPR_WDATA, IOC_W, MK_PTR(TYPE_INT)) 163 IOCTL(SNDCTL_COPR_WDATA, IOC_W, MK_PTR(TYPE_INT))
  164 +#endif
163 IOCTL(SNDCTL_DSP_CHANNELS, IOC_RW, MK_PTR(TYPE_INT)) 165 IOCTL(SNDCTL_DSP_CHANNELS, IOC_RW, MK_PTR(TYPE_INT))
164 IOCTL(SNDCTL_DSP_GETBLKSIZE, IOC_RW, MK_PTR(TYPE_INT)) 166 IOCTL(SNDCTL_DSP_GETBLKSIZE, IOC_RW, MK_PTR(TYPE_INT))
165 IOCTL(SNDCTL_DSP_GETCAPS, IOC_R, MK_PTR(TYPE_INT)) 167 IOCTL(SNDCTL_DSP_GETCAPS, IOC_R, MK_PTR(TYPE_INT))
166 IOCTL(SNDCTL_DSP_GETFMTS, IOC_R, MK_PTR(TYPE_INT)) 168 IOCTL(SNDCTL_DSP_GETFMTS, IOC_R, MK_PTR(TYPE_INT))
167 - IOCTL(SNDCTL_DSP_GETIPTR, IOC_R, MK_PTR(TYPE_INT))  
168 - IOCTL(SNDCTL_DSP_GETISPACE, IOC_R, MK_PTR(TYPE_INT))  
169 - IOCTL(SNDCTL_DSP_GETOPTR, IOC_R, MK_PTR(TYPE_INT))  
170 - IOCTL(SNDCTL_DSP_GETOSPACE, IOC_R, MK_PTR(TYPE_INT)) 169 + IOCTL(SNDCTL_DSP_GETIPTR, IOC_R, MK_PTR(MK_STRUCT(STRUCT_count_info)))
  170 + IOCTL(SNDCTL_DSP_GETOPTR, IOC_R, MK_PTR(MK_STRUCT(STRUCT_count_info)))
  171 + IOCTL(SNDCTL_DSP_GETISPACE, IOC_R, MK_PTR(MK_STRUCT(STRUCT_audio_buf_info)))
  172 + IOCTL(SNDCTL_DSP_GETOSPACE, IOC_R, MK_PTR(MK_STRUCT(STRUCT_audio_buf_info)))
171 IOCTL(SNDCTL_DSP_GETTRIGGER, IOC_R, MK_PTR(TYPE_INT)) 173 IOCTL(SNDCTL_DSP_GETTRIGGER, IOC_R, MK_PTR(TYPE_INT))
172 IOCTL(SNDCTL_DSP_MAPINBUF, IOC_R, MK_PTR(TYPE_INT)) 174 IOCTL(SNDCTL_DSP_MAPINBUF, IOC_R, MK_PTR(TYPE_INT))
173 IOCTL(SNDCTL_DSP_MAPOUTBUF, IOC_R, MK_PTR(TYPE_INT)) 175 IOCTL(SNDCTL_DSP_MAPOUTBUF, IOC_R, MK_PTR(TYPE_INT))
@@ -183,6 +185,7 @@ @@ -183,6 +185,7 @@
183 IOCTL(SNDCTL_DSP_STEREO, IOC_RW, MK_PTR(TYPE_INT)) 185 IOCTL(SNDCTL_DSP_STEREO, IOC_RW, MK_PTR(TYPE_INT))
184 IOCTL(SNDCTL_DSP_SUBDIVIDE, IOC_RW, MK_PTR(TYPE_INT)) 186 IOCTL(SNDCTL_DSP_SUBDIVIDE, IOC_RW, MK_PTR(TYPE_INT))
185 IOCTL(SNDCTL_DSP_SYNC, 0, TYPE_NULL) 187 IOCTL(SNDCTL_DSP_SYNC, 0, TYPE_NULL)
  188 +#if 0
186 IOCTL(SNDCTL_FM_4OP_ENABLE, IOC_W, MK_PTR(TYPE_INT)) 189 IOCTL(SNDCTL_FM_4OP_ENABLE, IOC_W, MK_PTR(TYPE_INT))
187 IOCTL(SNDCTL_FM_LOAD_INSTR, IOC_W, MK_PTR(TYPE_INT)) 190 IOCTL(SNDCTL_FM_LOAD_INSTR, IOC_W, MK_PTR(TYPE_INT))
188 IOCTL(SNDCTL_MIDI_INFO, IOC_RW, MK_PTR(TYPE_INT)) 191 IOCTL(SNDCTL_MIDI_INFO, IOC_RW, MK_PTR(TYPE_INT))
@@ -222,6 +225,7 @@ @@ -222,6 +225,7 @@
222 IOCTL(SOUND_PCM_READ_CHANNELS, IOC_R, MK_PTR(TYPE_INT)) 225 IOCTL(SOUND_PCM_READ_CHANNELS, IOC_R, MK_PTR(TYPE_INT))
223 IOCTL(SOUND_PCM_READ_BITS, IOC_R, MK_PTR(TYPE_INT)) 226 IOCTL(SOUND_PCM_READ_BITS, IOC_R, MK_PTR(TYPE_INT))
224 IOCTL(SOUND_PCM_READ_FILTER, IOC_R, MK_PTR(TYPE_INT)) 227 IOCTL(SOUND_PCM_READ_FILTER, IOC_R, MK_PTR(TYPE_INT))
  228 +#endif
225 IOCTL(SOUND_MIXER_INFO, IOC_R, MK_PTR(TYPE_INT)) 229 IOCTL(SOUND_MIXER_INFO, IOC_R, MK_PTR(TYPE_INT))
226 IOCTL(SOUND_MIXER_ACCESS, 0, TYPE_PTRVOID) 230 IOCTL(SOUND_MIXER_ACCESS, 0, TYPE_PTRVOID)
227 IOCTL(SOUND_MIXER_PRIVATE1, IOC_RW, MK_PTR(TYPE_INT)) 231 IOCTL(SOUND_MIXER_PRIVATE1, IOC_RW, MK_PTR(TYPE_INT))
linux-user/syscall_defs.h
1 -  
2 /* common syscall defines for all architectures */ 1 /* common syscall defines for all architectures */
3 2
  3 +/* Note: although the syscall numbers change between architectures,
  4 + most of them stay the same, so we handle it by puting ifdefs if
  5 + necessary */
  6 +
  7 +#define TARGET_NR_exit 1
  8 +#define TARGET_NR_fork 2
  9 +#define TARGET_NR_read 3
  10 +#define TARGET_NR_write 4
  11 +#define TARGET_NR_open 5
  12 +#define TARGET_NR_close 6
  13 +#define TARGET_NR_waitpid 7
  14 +#define TARGET_NR_creat 8
  15 +#define TARGET_NR_link 9
  16 +#define TARGET_NR_unlink 10
  17 +#define TARGET_NR_execve 11
  18 +#define TARGET_NR_chdir 12
  19 +#define TARGET_NR_time 13
  20 +#define TARGET_NR_mknod 14
  21 +#define TARGET_NR_chmod 15
  22 +#define TARGET_NR_lchown 16
  23 +#define TARGET_NR_break 17
  24 +#define TARGET_NR_oldstat 18
  25 +#define TARGET_NR_lseek 19
  26 +#define TARGET_NR_getpid 20
  27 +#define TARGET_NR_mount 21
  28 +#define TARGET_NR_umount 22
  29 +#define TARGET_NR_setuid 23
  30 +#define TARGET_NR_getuid 24
  31 +#define TARGET_NR_stime 25
  32 +#define TARGET_NR_ptrace 26
  33 +#define TARGET_NR_alarm 27
  34 +#define TARGET_NR_oldfstat 28
  35 +#define TARGET_NR_pause 29
  36 +#define TARGET_NR_utime 30
  37 +#define TARGET_NR_stty 31
  38 +#define TARGET_NR_gtty 32
  39 +#define TARGET_NR_access 33
  40 +#define TARGET_NR_nice 34
  41 +#define TARGET_NR_ftime 35
  42 +#define TARGET_NR_sync 36
  43 +#define TARGET_NR_kill 37
  44 +#define TARGET_NR_rename 38
  45 +#define TARGET_NR_mkdir 39
  46 +#define TARGET_NR_rmdir 40
  47 +#define TARGET_NR_dup 41
  48 +#define TARGET_NR_pipe 42
  49 +#define TARGET_NR_times 43
  50 +#define TARGET_NR_prof 44
  51 +#define TARGET_NR_brk 45
  52 +#define TARGET_NR_setgid 46
  53 +#define TARGET_NR_getgid 47
  54 +#define TARGET_NR_signal 48
  55 +#define TARGET_NR_geteuid 49
  56 +#define TARGET_NR_getegid 50
  57 +#define TARGET_NR_acct 51
  58 +#define TARGET_NR_umount2 52
  59 +#define TARGET_NR_lock 53
  60 +#define TARGET_NR_ioctl 54
  61 +#define TARGET_NR_fcntl 55
  62 +#define TARGET_NR_mpx 56
  63 +#define TARGET_NR_setpgid 57
  64 +#define TARGET_NR_ulimit 58
  65 +#define TARGET_NR_oldolduname 59
  66 +#define TARGET_NR_umask 60
  67 +#define TARGET_NR_chroot 61
  68 +#define TARGET_NR_ustat 62
  69 +#define TARGET_NR_dup2 63
  70 +#define TARGET_NR_getppid 64
  71 +#define TARGET_NR_getpgrp 65
  72 +#define TARGET_NR_setsid 66
  73 +#define TARGET_NR_sigaction 67
  74 +#define TARGET_NR_sgetmask 68
  75 +#define TARGET_NR_ssetmask 69
  76 +#define TARGET_NR_setreuid 70
  77 +#define TARGET_NR_setregid 71
  78 +#define TARGET_NR_sigsuspend 72
  79 +#define TARGET_NR_sigpending 73
  80 +#define TARGET_NR_sethostname 74
  81 +#define TARGET_NR_setrlimit 75
  82 +#define TARGET_NR_getrlimit 76 /* Back compatible 2Gig limited rlimit */
  83 +#define TARGET_NR_getrusage 77
  84 +#define TARGET_NR_gettimeofday 78
  85 +#define TARGET_NR_settimeofday 79
  86 +#define TARGET_NR_getgroups 80
  87 +#define TARGET_NR_setgroups 81
  88 +#define TARGET_NR_select 82
  89 +#define TARGET_NR_symlink 83
  90 +#define TARGET_NR_oldlstat 84
  91 +#define TARGET_NR_readlink 85
  92 +#define TARGET_NR_uselib 86
  93 +#define TARGET_NR_swapon 87
  94 +#define TARGET_NR_reboot 88
  95 +#define TARGET_NR_readdir 89
  96 +#define TARGET_NR_mmap 90
  97 +#define TARGET_NR_munmap 91
  98 +#define TARGET_NR_truncate 92
  99 +#define TARGET_NR_ftruncate 93
  100 +#define TARGET_NR_fchmod 94
  101 +#define TARGET_NR_fchown 95
  102 +#define TARGET_NR_getpriority 96
  103 +#define TARGET_NR_setpriority 97
  104 +#define TARGET_NR_profil 98
  105 +#define TARGET_NR_statfs 99
  106 +#define TARGET_NR_fstatfs 100
  107 +#define TARGET_NR_ioperm 101
  108 +#define TARGET_NR_socketcall 102
  109 +#define TARGET_NR_syslog 103
  110 +#define TARGET_NR_setitimer 104
  111 +#define TARGET_NR_getitimer 105
  112 +#define TARGET_NR_stat 106
  113 +#define TARGET_NR_lstat 107
  114 +#define TARGET_NR_fstat 108
  115 +#define TARGET_NR_olduname 109
  116 +#define TARGET_NR_iopl 110
  117 +#define TARGET_NR_vhangup 111
  118 +#define TARGET_NR_idle 112
  119 +#define TARGET_NR_vm86old 113
  120 +#define TARGET_NR_wait4 114
  121 +#define TARGET_NR_swapoff 115
  122 +#define TARGET_NR_sysinfo 116
  123 +#define TARGET_NR_ipc 117
  124 +#define TARGET_NR_fsync 118
  125 +#define TARGET_NR_sigreturn 119
  126 +#define TARGET_NR_clone 120
  127 +#define TARGET_NR_setdomainname 121
  128 +#define TARGET_NR_uname 122
  129 +#define TARGET_NR_modify_ldt 123
  130 +#define TARGET_NR_adjtimex 124
  131 +#define TARGET_NR_mprotect 125
  132 +#define TARGET_NR_sigprocmask 126
  133 +#define TARGET_NR_create_module 127
  134 +#define TARGET_NR_init_module 128
  135 +#define TARGET_NR_delete_module 129
  136 +#define TARGET_NR_get_kernel_syms 130
  137 +#define TARGET_NR_quotactl 131
  138 +#define TARGET_NR_getpgid 132
  139 +#define TARGET_NR_fchdir 133
  140 +#define TARGET_NR_bdflush 134
  141 +#define TARGET_NR_sysfs 135
  142 +#define TARGET_NR_personality 136
  143 +#define TARGET_NR_afs_syscall 137 /* Syscall for Andrew File System */
  144 +#define TARGET_NR_setfsuid 138
  145 +#define TARGET_NR_setfsgid 139
  146 +#define TARGET_NR__llseek 140
  147 +#define TARGET_NR_getdents 141
  148 +#define TARGET_NR__newselect 142
  149 +#define TARGET_NR_flock 143
  150 +#define TARGET_NR_msync 144
  151 +#define TARGET_NR_readv 145
  152 +#define TARGET_NR_writev 146
  153 +#define TARGET_NR_getsid 147
  154 +#define TARGET_NR_fdatasync 148
  155 +#define TARGET_NR__sysctl 149
  156 +#define TARGET_NR_mlock 150
  157 +#define TARGET_NR_munlock 151
  158 +#define TARGET_NR_mlockall 152
  159 +#define TARGET_NR_munlockall 153
  160 +#define TARGET_NR_sched_setparam 154
  161 +#define TARGET_NR_sched_getparam 155
  162 +#define TARGET_NR_sched_setscheduler 156
  163 +#define TARGET_NR_sched_getscheduler 157
  164 +#define TARGET_NR_sched_yield 158
  165 +#define TARGET_NR_sched_get_priority_max 159
  166 +#define TARGET_NR_sched_get_priority_min 160
  167 +#define TARGET_NR_sched_rr_get_interval 161
  168 +#define TARGET_NR_nanosleep 162
  169 +#define TARGET_NR_mremap 163
  170 +#define TARGET_NR_setresuid 164
  171 +#define TARGET_NR_getresuid 165
  172 +#define TARGET_NR_vm86 166
  173 +#define TARGET_NR_query_module 167
  174 +#define TARGET_NR_poll 168
  175 +#define TARGET_NR_nfsservctl 169
  176 +#define TARGET_NR_setresgid 170
  177 +#define TARGET_NR_getresgid 171
  178 +#define TARGET_NR_prctl 172
  179 +#define TARGET_NR_rt_sigreturn 173
  180 +#define TARGET_NR_rt_sigaction 174
  181 +#define TARGET_NR_rt_sigprocmask 175
  182 +#define TARGET_NR_rt_sigpending 176
  183 +#define TARGET_NR_rt_sigtimedwait 177
  184 +#define TARGET_NR_rt_sigqueueinfo 178
  185 +#define TARGET_NR_rt_sigsuspend 179
  186 +#define TARGET_NR_pread 180
  187 +#define TARGET_NR_pwrite 181
  188 +#define TARGET_NR_chown 182
  189 +#define TARGET_NR_getcwd 183
  190 +#define TARGET_NR_capget 184
  191 +#define TARGET_NR_capset 185
  192 +#define TARGET_NR_sigaltstack 186
  193 +#define TARGET_NR_sendfile 187
  194 +#define TARGET_NR_getpmsg 188 /* some people actually want streams */
  195 +#define TARGET_NR_putpmsg 189 /* some people actually want streams */
  196 +#define TARGET_NR_vfork 190
  197 +#define TARGET_NR_ugetrlimit 191 /* SuS compliant getrlimit */
  198 +#define TARGET_NR_mmap2 192
  199 +#define TARGET_NR_truncate64 193
  200 +#define TARGET_NR_ftruncate64 194
  201 +#define TARGET_NR_stat64 195
  202 +#define TARGET_NR_lstat64 196
  203 +#define TARGET_NR_fstat64 197
  204 +#define TARGET_NR_lchown32 198
  205 +#define TARGET_NR_getuid32 199
  206 +#define TARGET_NR_getgid32 200
  207 +#define TARGET_NR_geteuid32 201
  208 +#define TARGET_NR_getegid32 202
  209 +#define TARGET_NR_setreuid32 203
  210 +#define TARGET_NR_setregid32 204
  211 +#define TARGET_NR_getgroups32 205
  212 +#define TARGET_NR_setgroups32 206
  213 +#define TARGET_NR_fchown32 207
  214 +#define TARGET_NR_setresuid32 208
  215 +#define TARGET_NR_getresuid32 209
  216 +#define TARGET_NR_setresgid32 210
  217 +#define TARGET_NR_getresgid32 211
  218 +#define TARGET_NR_chown32 212
  219 +#define TARGET_NR_setuid32 213
  220 +#define TARGET_NR_setgid32 214
  221 +#define TARGET_NR_setfsuid32 215
  222 +#define TARGET_NR_setfsgid32 216
  223 +
  224 +#if defined(TARGET_I386)
  225 +#define TARGET_NR_pivot_root 217
  226 +#define TARGET_NR_mincore 218
  227 +#define TARGET_NR_madvise 219
  228 +#define TARGET_NR_madvise1 219 /* delete when C lib stub is removed */
  229 +#define TARGET_NR_getdents64 220
  230 +#endif
  231 +
  232 +#if defined(TARGET_ARM)
  233 +#define TARGET_NR_getdents64 217
  234 +#define TARGET_NR_pivot_root 218
  235 +#define TARGET_NR_mincore 219
  236 +#define TARGET_NR_madvise 220
  237 +#endif
  238 +
  239 +#define TARGET_NR_fcntl64 221
  240 +#define TARGET_NR_security 223 /* syscall for security modules */
  241 +#define TARGET_NR_gettid 224
  242 +#define TARGET_NR_readahead 225
  243 +#define TARGET_NR_setxattr 226
  244 +#define TARGET_NR_lsetxattr 227
  245 +#define TARGET_NR_fsetxattr 228
  246 +#define TARGET_NR_getxattr 229
  247 +#define TARGET_NR_lgetxattr 230
  248 +#define TARGET_NR_fgetxattr 231
  249 +#define TARGET_NR_listxattr 232
  250 +#define TARGET_NR_llistxattr 233
  251 +#define TARGET_NR_flistxattr 234
  252 +#define TARGET_NR_removexattr 235
  253 +#define TARGET_NR_lremovexattr 236
  254 +#define TARGET_NR_fremovexattr 237
  255 +#define TARGET_NR_tkill 238
  256 +#define TARGET_NR_sendfile64 239
  257 +#define TARGET_NR_futex 240
  258 +#define TARGET_NR_sched_setaffinity 241
  259 +#define TARGET_NR_sched_getaffinity 242
  260 +#define TARGET_NR_set_thread_area 243
  261 +#define TARGET_NR_get_thread_area 244
  262 +#define TARGET_NR_io_setup 245
  263 +#define TARGET_NR_io_destroy 246
  264 +#define TARGET_NR_io_getevents 247
  265 +#define TARGET_NR_io_submit 248
  266 +#define TARGET_NR_io_cancel 249
  267 +#define TARGET_NR_fadvise64 250
  268 +
  269 +#define TARGET_NR_exit_group 252
  270 +#define TARGET_NR_lookup_dcookie 253
  271 +#define TARGET_NR_epoll_create 254
  272 +#define TARGET_NR_epoll_ctl 255
  273 +#define TARGET_NR_epoll_wait 256
  274 +#define TARGET_NR_remap_file_pages 257
  275 +#define TARGET_NR_set_tid_address 258
  276 +#define TARGET_NR_timer_create 259
  277 +#define TARGET_NR_timer_settime (TARGET_NR_timer_create+1)
  278 +#define TARGET_NR_timer_gettime (TARGET_NR_timer_create+2)
  279 +#define TARGET_NR_timer_getoverrun (TARGET_NR_timer_create+3)
  280 +#define TARGET_NR_timer_delete (TARGET_NR_timer_create+4)
  281 +#define TARGET_NR_clock_settime (TARGET_NR_timer_create+5)
  282 +#define TARGET_NR_clock_gettime (TARGET_NR_timer_create+6)
  283 +#define TARGET_NR_clock_getres (TARGET_NR_timer_create+7)
  284 +#define TARGET_NR_clock_nanosleep (TARGET_NR_timer_create+8)
  285 +
4 #define SOCKOP_socket 1 286 #define SOCKOP_socket 1
5 #define SOCKOP_bind 2 287 #define SOCKOP_bind 2
6 #define SOCKOP_connect 3 288 #define SOCKOP_connect 3
@@ -19,6 +301,66 @@ @@ -19,6 +301,66 @@
19 #define SOCKOP_sendmsg 16 301 #define SOCKOP_sendmsg 16
20 #define SOCKOP_recvmsg 17 302 #define SOCKOP_recvmsg 17
21 303
  304 +/*
  305 + * The following is for compatibility across the various Linux
  306 + * platforms. The i386 ioctl numbering scheme doesn't really enforce
  307 + * a type field. De facto, however, the top 8 bits of the lower 16
  308 + * bits are indeed used as a type field, so we might just as well make
  309 + * this explicit here. Please be sure to use the decoding macros
  310 + * below from now on.
  311 + */
  312 +#define TARGET_IOC_NRBITS 8
  313 +#define TARGET_IOC_TYPEBITS 8
  314 +
  315 +#if defined(TARGET_I386) || defined(TARGET_ARM)
  316 +
  317 +#define TARGET_IOC_SIZEBITS 14
  318 +#define TARGET_IOC_DIRBITS 2
  319 +
  320 +#define TARGET_IOC_NONE 0U
  321 +#define TARGET_IOC_WRITE 1U
  322 +#define TARGET_IOC_READ 2U
  323 +
  324 +#elif defined(TARGET_PPC) || defined(TARGET_ALPHA)
  325 +
  326 +#define TARGET_IOC_SIZEBITS 13
  327 +#define TARGET_IOC_DIRBITS 3
  328 +
  329 +#define TARGET_IOC_NONE 1U
  330 +#define TARGET_IOC_READ 2U
  331 +#define TARGET_IOC_WRITE 4U
  332 +
  333 +#else
  334 +#error unsupported CPU
  335 +#endif
  336 +
  337 +#define TARGET_IOC_NRMASK ((1 << TARGET_IOC_NRBITS)-1)
  338 +#define TARGET_IOC_TYPEMASK ((1 << TARGET_IOC_TYPEBITS)-1)
  339 +#define TARGET_IOC_SIZEMASK ((1 << TARGET_IOC_SIZEBITS)-1)
  340 +#define TARGET_IOC_DIRMASK ((1 << TARGET_IOC_DIRBITS)-1)
  341 +
  342 +#define TARGET_IOC_NRSHIFT 0
  343 +#define TARGET_IOC_TYPESHIFT (TARGET_IOC_NRSHIFT+TARGET_IOC_NRBITS)
  344 +#define TARGET_IOC_SIZESHIFT (TARGET_IOC_TYPESHIFT+TARGET_IOC_TYPEBITS)
  345 +#define TARGET_IOC_DIRSHIFT (TARGET_IOC_SIZESHIFT+TARGET_IOC_SIZEBITS)
  346 +
  347 +#define TARGET_IOC(dir,type,nr,size) \
  348 + (((dir) << TARGET_IOC_DIRSHIFT) | \
  349 + ((type) << TARGET_IOC_TYPESHIFT) | \
  350 + ((nr) << TARGET_IOC_NRSHIFT) | \
  351 + ((size) << TARGET_IOC_SIZESHIFT))
  352 +
  353 +/* used to create numbers */
  354 +#define TARGET_IO(type,nr) TARGET_IOC(TARGET_IOC_NONE,(type),(nr),0)
  355 +#define TARGET_IOR(type,nr,size) TARGET_IOC(TARGET_IOC_READ,(type),(nr),sizeof(size))
  356 +#define TARGET_IOW(type,nr,size) TARGET_IOC(TARGET_IOC_WRITE,(type),(nr),sizeof(size))
  357 +#define TARGET_IOWR(type,nr,size) TARGET_IOC(TARGET_IOC_READ|TARGET_IOC_WRITE,(type),(nr),sizeof(size))
  358 +
  359 +/* the size is automatically computed for these defines */
  360 +#define TARGET_IORU(type,nr) TARGET_IOC(TARGET_IOC_READ,(type),(nr),TARGET_IOC_SIZEMASK)
  361 +#define TARGET_IOWU(type,nr) TARGET_IOC(TARGET_IOC_WRITE,(type),(nr),TARGET_IOC_SIZEMASK)
  362 +#define TARGET_IOWRU(type,nr) TARGET_IOC(TARGET_IOC_READ|TARGET_IOC_WRITE,(type),(nr),TARGET_IOC_SIZEMASK)
  363 +
22 struct target_sockaddr { 364 struct target_sockaddr {
23 uint16_t sa_family; 365 uint16_t sa_family;
24 uint8_t sa_data[14]; 366 uint8_t sa_data[14];
@@ -201,6 +543,168 @@ struct target_sigaction; @@ -201,6 +543,168 @@ struct target_sigaction;
201 int do_sigaction(int sig, const struct target_sigaction *act, 543 int do_sigaction(int sig, const struct target_sigaction *act,
202 struct target_sigaction *oact); 544 struct target_sigaction *oact);
203 545
  546 +#if defined(TARGET_I386) || defined(TARGET_ARM)
  547 +
  548 +#define TARGET_SA_NOCLDSTOP 0x00000001
  549 +#define TARGET_SA_NOCLDWAIT 0x00000002 /* not supported yet */
  550 +#define TARGET_SA_SIGINFO 0x00000004
  551 +#define TARGET_SA_ONSTACK 0x08000000
  552 +#define TARGET_SA_RESTART 0x10000000
  553 +#define TARGET_SA_NODEFER 0x40000000
  554 +#define TARGET_SA_RESETHAND 0x80000000
  555 +#define TARGET_SA_RESTORER 0x04000000
  556 +
  557 +#define TARGET_SIGHUP 1
  558 +#define TARGET_SIGINT 2
  559 +#define TARGET_SIGQUIT 3
  560 +#define TARGET_SIGILL 4
  561 +#define TARGET_SIGTRAP 5
  562 +#define TARGET_SIGABRT 6
  563 +#define TARGET_SIGIOT 6
  564 +#define TARGET_SIGBUS 7
  565 +#define TARGET_SIGFPE 8
  566 +#define TARGET_SIGKILL 9
  567 +#define TARGET_SIGUSR1 10
  568 +#define TARGET_SIGSEGV 11
  569 +#define TARGET_SIGUSR2 12
  570 +#define TARGET_SIGPIPE 13
  571 +#define TARGET_SIGALRM 14
  572 +#define TARGET_SIGTERM 15
  573 +#define TARGET_SIGSTKFLT 16
  574 +#define TARGET_SIGCHLD 17
  575 +#define TARGET_SIGCONT 18
  576 +#define TARGET_SIGSTOP 19
  577 +#define TARGET_SIGTSTP 20
  578 +#define TARGET_SIGTTIN 21
  579 +#define TARGET_SIGTTOU 22
  580 +#define TARGET_SIGURG 23
  581 +#define TARGET_SIGXCPU 24
  582 +#define TARGET_SIGXFSZ 25
  583 +#define TARGET_SIGVTALRM 26
  584 +#define TARGET_SIGPROF 27
  585 +#define TARGET_SIGWINCH 28
  586 +#define TARGET_SIGIO 29
  587 +#define TARGET_SIGRTMIN 32
  588 +
  589 +#define TARGET_SIG_BLOCK 0 /* for blocking signals */
  590 +#define TARGET_SIG_UNBLOCK 1 /* for unblocking signals */
  591 +#define TARGET_SIG_SETMASK 2 /* for setting the signal mask */
  592 +
  593 +struct target_old_sigaction {
  594 + target_ulong _sa_handler;
  595 + target_ulong sa_mask;
  596 + target_ulong sa_flags;
  597 + target_ulong sa_restorer;
  598 +};
  599 +
  600 +struct target_sigaction {
  601 + target_ulong _sa_handler;
  602 + target_ulong sa_flags;
  603 + target_ulong sa_restorer;
  604 + target_sigset_t sa_mask;
  605 +};
  606 +
  607 +typedef union target_sigval {
  608 + int sival_int;
  609 + target_ulong sival_ptr;
  610 +} target_sigval_t;
  611 +
  612 +#define TARGET_SI_MAX_SIZE 128
  613 +#define TARGET_SI_PAD_SIZE ((TARGET_SI_MAX_SIZE/sizeof(int)) - 3)
  614 +
  615 +typedef struct target_siginfo {
  616 + int si_signo;
  617 + int si_errno;
  618 + int si_code;
  619 +
  620 + union {
  621 + int _pad[TARGET_SI_PAD_SIZE];
  622 +
  623 + /* kill() */
  624 + struct {
  625 + pid_t _pid; /* sender's pid */
  626 + uid_t _uid; /* sender's uid */
  627 + } _kill;
  628 +
  629 + /* POSIX.1b timers */
  630 + struct {
  631 + unsigned int _timer1;
  632 + unsigned int _timer2;
  633 + } _timer;
  634 +
  635 + /* POSIX.1b signals */
  636 + struct {
  637 + pid_t _pid; /* sender's pid */
  638 + uid_t _uid; /* sender's uid */
  639 + target_sigval_t _sigval;
  640 + } _rt;
  641 +
  642 + /* SIGCHLD */
  643 + struct {
  644 + pid_t _pid; /* which child */
  645 + uid_t _uid; /* sender's uid */
  646 + int _status; /* exit code */
  647 + target_clock_t _utime;
  648 + target_clock_t _stime;
  649 + } _sigchld;
  650 +
  651 + /* SIGILL, SIGFPE, SIGSEGV, SIGBUS */
  652 + struct {
  653 + target_ulong _addr; /* faulting insn/memory ref. */
  654 + } _sigfault;
  655 +
  656 + /* SIGPOLL */
  657 + struct {
  658 + int _band; /* POLL_IN, POLL_OUT, POLL_MSG */
  659 + int _fd;
  660 + } _sigpoll;
  661 + } _sifields;
  662 +} target_siginfo_t;
  663 +
  664 +/*
  665 + * si_code values
  666 + * Digital reserves positive values for kernel-generated signals.
  667 + */
  668 +#define TARGET_SI_USER 0 /* sent by kill, sigsend, raise */
  669 +#define TARGET_SI_KERNEL 0x80 /* sent by the kernel from somewhere */
  670 +#define TARGET_SI_QUEUE -1 /* sent by sigqueue */
  671 +#define TARGET_SI_TIMER -2 /* sent by timer expiration */
  672 +#define TARGET_SI_MESGQ -3 /* sent by real time mesq state change */
  673 +#define TARGET_SI_ASYNCIO -4 /* sent by AIO completion */
  674 +#define TARGET_SI_SIGIO -5 /* sent by queued SIGIO */
  675 +
  676 +/*
  677 + * SIGILL si_codes
  678 + */
  679 +#define TARGET_ILL_ILLOPN (2) /* illegal operand */
  680 +
  681 +/*
  682 + * SIGFPE si_codes
  683 + */
  684 +#define TARGET_FPE_INTDIV (1) /* integer divide by zero */
  685 +#define TARGET_FPE_INTOVF (2) /* integer overflow */
  686 +#define TARGET_FPE_FLTDIV (3) /* floating point divide by zero */
  687 +#define TARGET_FPE_FLTOVF (4) /* floating point overflow */
  688 +#define TARGET_FPE_FLTUND (5) /* floating point underflow */
  689 +#define TARGET_FPE_FLTRES (6) /* floating point inexact result */
  690 +#define TARGET_FPE_FLTINV (7) /* floating point invalid operation */
  691 +#define TARGET_FPE_FLTSUB (8) /* subscript out of range */
  692 +#define TARGET_NSIGFPE 8
  693 +
  694 +/*
  695 + * SIGSEGV si_codes
  696 + */
  697 +#define TARGET_SEGV_MAPERR (1) /* address not mapped to object */
  698 +#define TARGET_SEGV_ACCERR (2) /* invalid permissions for mapped object */
  699 +
  700 +/*
  701 + * SIGTRAP si_codes
  702 + */
  703 +#define TARGET_TRAP_BRKPT (1) /* process breakpoint */
  704 +#define TARGET_TRAP_TRACE (2) /* process trace trap */
  705 +
  706 +#endif /* defined(TARGET_I386) || defined(TARGET_ARM) */
  707 +
204 struct target_rlimit { 708 struct target_rlimit {
205 target_ulong rlim_cur; 709 target_ulong rlim_cur;
206 target_ulong rlim_max; 710 target_ulong rlim_max;
@@ -219,6 +723,8 @@ struct target_pollfd { @@ -219,6 +723,8 @@ struct target_pollfd {
219 #define TARGET_KDGKBENT 0x4B46 /* gets one entry in translation table */ 723 #define TARGET_KDGKBENT 0x4B46 /* gets one entry in translation table */
220 #define TARGET_KDGKBSENT 0x4B48 /* gets one function key string entry */ 724 #define TARGET_KDGKBSENT 0x4B48 /* gets one function key string entry */
221 725
  726 +#define TARGET_SIOCATMARK 0x8905
  727 +
222 /* Networking ioctls */ 728 /* Networking ioctls */
223 #define TARGET_SIOCADDRT 0x890B /* add routing table entry */ 729 #define TARGET_SIOCADDRT 0x890B /* add routing table entry */
224 #define TARGET_SIOCDELRT 0x890C /* delete routing table entry */ 730 #define TARGET_SIOCDELRT 0x890C /* delete routing table entry */
@@ -403,11 +909,11 @@ struct target_pollfd { @@ -403,11 +909,11 @@ struct target_pollfd {
403 #define TARGET_HDIO_GETGEO 0x0301 /* get device geometry */ 909 #define TARGET_HDIO_GETGEO 0x0301 /* get device geometry */
404 #define TARGET_HDIO_GET_UNMASKINTR 0x0302 /* get current unmask setting */ 910 #define TARGET_HDIO_GET_UNMASKINTR 0x0302 /* get current unmask setting */
405 #define TARGET_HDIO_GET_MULTCOUNT 0x0304 /* get current IDE blockmode setting */ 911 #define TARGET_HDIO_GET_MULTCOUNT 0x0304 /* get current IDE blockmode setting */
406 -#define TARGET_HDIO_GET_IDENTITY 0x0307 /* get IDE identification info */  
407 #define TARGET_HDIO_GET_KEEPSETTINGS 0x0308 /* get keep-settings-on-reset flag */ 912 #define TARGET_HDIO_GET_KEEPSETTINGS 0x0308 /* get keep-settings-on-reset flag */
408 #define TARGET_HDIO_GET_32BIT 0x0309 /* get current io_32bit setting */ 913 #define TARGET_HDIO_GET_32BIT 0x0309 /* get current io_32bit setting */
409 #define TARGET_HDIO_GET_NOWERR 0x030a /* get ignore-write-error flag */ 914 #define TARGET_HDIO_GET_NOWERR 0x030a /* get ignore-write-error flag */
410 #define TARGET_HDIO_GET_DMA 0x030b /* get use-dma flag */ 915 #define TARGET_HDIO_GET_DMA 0x030b /* get use-dma flag */
  916 +#define TARGET_HDIO_GET_IDENTITY 0x030d /* get IDE identification info */
411 #define TARGET_HDIO_DRIVE_CMD 0x031f /* execute a special drive command */ 917 #define TARGET_HDIO_DRIVE_CMD 0x031f /* execute a special drive command */
412 918
413 /* hd/ide ctl's that pass (arg) non-ptr values are numbered 0x032n/0x033n */ 919 /* hd/ide ctl's that pass (arg) non-ptr values are numbered 0x032n/0x033n */
@@ -418,3 +924,480 @@ struct target_pollfd { @@ -418,3 +924,480 @@ struct target_pollfd {
418 #define TARGET_HDIO_SET_NOWERR 0x0325 /* change ignore-write-error flag */ 924 #define TARGET_HDIO_SET_NOWERR 0x0325 /* change ignore-write-error flag */
419 #define TARGET_HDIO_SET_DMA 0x0326 /* change use-dma flag */ 925 #define TARGET_HDIO_SET_DMA 0x0326 /* change use-dma flag */
420 #define TARGET_HDIO_SET_PIO_MODE 0x0327 /* reconfig interface to new speed */ 926 #define TARGET_HDIO_SET_PIO_MODE 0x0327 /* reconfig interface to new speed */
  927 +
  928 +
  929 +#if defined(TARGET_I386) || defined(TARGET_ARM)
  930 +
  931 +/* 0x54 is just a magic number to make these relatively unique ('T') */
  932 +
  933 +#define TARGET_TCGETS 0x5401
  934 +#define TARGET_TCSETS 0x5402
  935 +#define TARGET_TCSETSW 0x5403
  936 +#define TARGET_TCSETSF 0x5404
  937 +#define TARGET_TCGETA 0x5405
  938 +#define TARGET_TCSETA 0x5406
  939 +#define TARGET_TCSETAW 0x5407
  940 +#define TARGET_TCSETAF 0x5408
  941 +#define TARGET_TCSBRK 0x5409
  942 +#define TARGET_TCXONC 0x540A
  943 +#define TARGET_TCFLSH 0x540B
  944 +#define TARGET_TIOCEXCL 0x540C
  945 +#define TARGET_TIOCNXCL 0x540D
  946 +#define TARGET_TIOCSCTTY 0x540E
  947 +#define TARGET_TIOCGPGRP 0x540F
  948 +#define TARGET_TIOCSPGRP 0x5410
  949 +#define TARGET_TIOCOUTQ 0x5411
  950 +#define TARGET_TIOCSTI 0x5412
  951 +#define TARGET_TIOCGWINSZ 0x5413
  952 +#define TARGET_TIOCSWINSZ 0x5414
  953 +#define TARGET_TIOCMGET 0x5415
  954 +#define TARGET_TIOCMBIS 0x5416
  955 +#define TARGET_TIOCMBIC 0x5417
  956 +#define TARGET_TIOCMSET 0x5418
  957 +#define TARGET_TIOCGSOFTCAR 0x5419
  958 +#define TARGET_TIOCSSOFTCAR 0x541A
  959 +#define TARGET_FIONREAD 0x541B
  960 +#define TARGET_TIOCINQ FIONREAD
  961 +#define TARGET_TIOCLINUX 0x541C
  962 +#define TARGET_TIOCCONS 0x541D
  963 +#define TARGET_TIOCGSERIAL 0x541E
  964 +#define TARGET_TIOCSSERIAL 0x541F
  965 +#define TARGET_TIOCPKT 0x5420
  966 +#define TARGET_FIONBIO 0x5421
  967 +#define TARGET_TIOCNOTTY 0x5422
  968 +#define TARGET_TIOCSETD 0x5423
  969 +#define TARGET_TIOCGETD 0x5424
  970 +#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX tcsendbreak() */
  971 +#define TARGET_TIOCTTYGSTRUCT 0x5426 /* For debugging only */
  972 +#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */
  973 +#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */
  974 +#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */
  975 +#define TARGET_TIOCGPTN TARGET_IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */
  976 +#define TARGET_TIOCSPTLCK TARGET_IOW('T',0x31, int) /* Lock/unlock Pty */
  977 +
  978 +#define TARGET_FIONCLEX 0x5450 /* these numbers need to be adjusted. */
  979 +#define TARGET_FIOCLEX 0x5451
  980 +#define TARGET_FIOASYNC 0x5452
  981 +#define TARGET_TIOCSERCONFIG 0x5453
  982 +#define TARGET_TIOCSERGWILD 0x5454
  983 +#define TARGET_TIOCSERSWILD 0x5455
  984 +#define TARGET_TIOCGLCKTRMIOS 0x5456
  985 +#define TARGET_TIOCSLCKTRMIOS 0x5457
  986 +#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */
  987 +#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */
  988 +#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */
  989 +#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */
  990 +
  991 +#define TARGET_TIOCMIWAIT 0x545C /* wait for a change on serial input line(s) */
  992 +#define TARGET_TIOCGICOUNT 0x545D /* read serial port inline interrupt counts */
  993 +#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */
  994 +#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */
  995 +
  996 +/* Used for packet mode */
  997 +#define TARGET_TIOCPKT_DATA 0
  998 +#define TARGET_TIOCPKT_FLUSHREAD 1
  999 +#define TARGET_TIOCPKT_FLUSHWRITE 2
  1000 +#define TARGET_TIOCPKT_STOP 4
  1001 +#define TARGET_TIOCPKT_START 8
  1002 +#define TARGET_TIOCPKT_NOSTOP 16
  1003 +#define TARGET_TIOCPKT_DOSTOP 32
  1004 +
  1005 +#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */
  1006 +
  1007 +/* from asm/termbits.h */
  1008 +
  1009 +#define TARGET_NCCS 19
  1010 +
  1011 +struct target_termios {
  1012 + unsigned int c_iflag; /* input mode flags */
  1013 + unsigned int c_oflag; /* output mode flags */
  1014 + unsigned int c_cflag; /* control mode flags */
  1015 + unsigned int c_lflag; /* local mode flags */
  1016 + unsigned char c_line; /* line discipline */
  1017 + unsigned char c_cc[TARGET_NCCS]; /* control characters */
  1018 +};
  1019 +
  1020 +/* c_iflag bits */
  1021 +#define TARGET_IGNBRK 0000001
  1022 +#define TARGET_BRKINT 0000002
  1023 +#define TARGET_IGNPAR 0000004
  1024 +#define TARGET_PARMRK 0000010
  1025 +#define TARGET_INPCK 0000020
  1026 +#define TARGET_ISTRIP 0000040
  1027 +#define TARGET_INLCR 0000100
  1028 +#define TARGET_IGNCR 0000200
  1029 +#define TARGET_ICRNL 0000400
  1030 +#define TARGET_IUCLC 0001000
  1031 +#define TARGET_IXON 0002000
  1032 +#define TARGET_IXANY 0004000
  1033 +#define TARGET_IXOFF 0010000
  1034 +#define TARGET_IMAXBEL 0020000
  1035 +
  1036 +/* c_oflag bits */
  1037 +#define TARGET_OPOST 0000001
  1038 +#define TARGET_OLCUC 0000002
  1039 +#define TARGET_ONLCR 0000004
  1040 +#define TARGET_OCRNL 0000010
  1041 +#define TARGET_ONOCR 0000020
  1042 +#define TARGET_ONLRET 0000040
  1043 +#define TARGET_OFILL 0000100
  1044 +#define TARGET_OFDEL 0000200
  1045 +#define TARGET_NLDLY 0000400
  1046 +#define TARGET_NL0 0000000
  1047 +#define TARGET_NL1 0000400
  1048 +#define TARGET_CRDLY 0003000
  1049 +#define TARGET_CR0 0000000
  1050 +#define TARGET_CR1 0001000
  1051 +#define TARGET_CR2 0002000
  1052 +#define TARGET_CR3 0003000
  1053 +#define TARGET_TABDLY 0014000
  1054 +#define TARGET_TAB0 0000000
  1055 +#define TARGET_TAB1 0004000
  1056 +#define TARGET_TAB2 0010000
  1057 +#define TARGET_TAB3 0014000
  1058 +#define TARGET_XTABS 0014000
  1059 +#define TARGET_BSDLY 0020000
  1060 +#define TARGET_BS0 0000000
  1061 +#define TARGET_BS1 0020000
  1062 +#define TARGET_VTDLY 0040000
  1063 +#define TARGET_VT0 0000000
  1064 +#define TARGET_VT1 0040000
  1065 +#define TARGET_FFDLY 0100000
  1066 +#define TARGET_FF0 0000000
  1067 +#define TARGET_FF1 0100000
  1068 +
  1069 +/* c_cflag bit meaning */
  1070 +#define TARGET_CBAUD 0010017
  1071 +#define TARGET_B0 0000000 /* hang up */
  1072 +#define TARGET_B50 0000001
  1073 +#define TARGET_B75 0000002
  1074 +#define TARGET_B110 0000003
  1075 +#define TARGET_B134 0000004
  1076 +#define TARGET_B150 0000005
  1077 +#define TARGET_B200 0000006
  1078 +#define TARGET_B300 0000007
  1079 +#define TARGET_B600 0000010
  1080 +#define TARGET_B1200 0000011
  1081 +#define TARGET_B1800 0000012
  1082 +#define TARGET_B2400 0000013
  1083 +#define TARGET_B4800 0000014
  1084 +#define TARGET_B9600 0000015
  1085 +#define TARGET_B19200 0000016
  1086 +#define TARGET_B38400 0000017
  1087 +#define TARGET_EXTA B19200
  1088 +#define TARGET_EXTB B38400
  1089 +#define TARGET_CSIZE 0000060
  1090 +#define TARGET_CS5 0000000
  1091 +#define TARGET_CS6 0000020
  1092 +#define TARGET_CS7 0000040
  1093 +#define TARGET_CS8 0000060
  1094 +#define TARGET_CSTOPB 0000100
  1095 +#define TARGET_CREAD 0000200
  1096 +#define TARGET_PARENB 0000400
  1097 +#define TARGET_PARODD 0001000
  1098 +#define TARGET_HUPCL 0002000
  1099 +#define TARGET_CLOCAL 0004000
  1100 +#define TARGET_CBAUDEX 0010000
  1101 +#define TARGET_B57600 0010001
  1102 +#define TARGET_B115200 0010002
  1103 +#define TARGET_B230400 0010003
  1104 +#define TARGET_B460800 0010004
  1105 +#define TARGET_CIBAUD 002003600000 /* input baud rate (not used) */
  1106 +#define TARGET_CRTSCTS 020000000000 /* flow control */
  1107 +
  1108 +/* c_lflag bits */
  1109 +#define TARGET_ISIG 0000001
  1110 +#define TARGET_ICANON 0000002
  1111 +#define TARGET_XCASE 0000004
  1112 +#define TARGET_ECHO 0000010
  1113 +#define TARGET_ECHOE 0000020
  1114 +#define TARGET_ECHOK 0000040
  1115 +#define TARGET_ECHONL 0000100
  1116 +#define TARGET_NOFLSH 0000200
  1117 +#define TARGET_TOSTOP 0000400
  1118 +#define TARGET_ECHOCTL 0001000
  1119 +#define TARGET_ECHOPRT 0002000
  1120 +#define TARGET_ECHOKE 0004000
  1121 +#define TARGET_FLUSHO 0010000
  1122 +#define TARGET_PENDIN 0040000
  1123 +#define TARGET_IEXTEN 0100000
  1124 +
  1125 +/* c_cc character offsets */
  1126 +#define TARGET_VINTR 0
  1127 +#define TARGET_VQUIT 1
  1128 +#define TARGET_VERASE 2
  1129 +#define TARGET_VKILL 3
  1130 +#define TARGET_VEOF 4
  1131 +#define TARGET_VTIME 5
  1132 +#define TARGET_VMIN 6
  1133 +#define TARGET_VSWTC 7
  1134 +#define TARGET_VSTART 8
  1135 +#define TARGET_VSTOP 9
  1136 +#define TARGET_VSUSP 10
  1137 +#define TARGET_VEOL 11
  1138 +#define TARGET_VREPRINT 12
  1139 +#define TARGET_VDISCARD 13
  1140 +#define TARGET_VWERASE 14
  1141 +#define TARGET_VLNEXT 15
  1142 +#define TARGET_VEOL2 16
  1143 +
  1144 +#define TARGET_MAP_SHARED 0x01 /* Share changes */
  1145 +#define TARGET_MAP_PRIVATE 0x02 /* Changes are private */
  1146 +#define TARGET_MAP_TYPE 0x0f /* Mask for type of mapping */
  1147 +#define TARGET_MAP_FIXED 0x10 /* Interpret addr exactly */
  1148 +#define TARGET_MAP_ANONYMOUS 0x20 /* don't use a file */
  1149 +
  1150 +#define TARGET_MAP_GROWSDOWN 0x0100 /* stack-like segment */
  1151 +#define TARGET_MAP_DENYWRITE 0x0800 /* ETXTBSY */
  1152 +#define TARGET_MAP_EXECUTABLE 0x1000 /* mark it as an executable */
  1153 +#define TARGET_MAP_LOCKED 0x2000 /* pages are locked */
  1154 +#define TARGET_MAP_NORESERVE 0x4000 /* don't check for reservations */
  1155 +
  1156 +struct target_stat {
  1157 + unsigned short st_dev;
  1158 + unsigned short __pad1;
  1159 + target_ulong st_ino;
  1160 + unsigned short st_mode;
  1161 + unsigned short st_nlink;
  1162 + unsigned short st_uid;
  1163 + unsigned short st_gid;
  1164 + unsigned short st_rdev;
  1165 + unsigned short __pad2;
  1166 + target_ulong st_size;
  1167 + target_ulong st_blksize;
  1168 + target_ulong st_blocks;
  1169 + target_ulong target_st_atime;
  1170 + target_ulong __unused1;
  1171 + target_ulong target_st_mtime;
  1172 + target_ulong __unused2;
  1173 + target_ulong target_st_ctime;
  1174 + target_ulong __unused3;
  1175 + target_ulong __unused4;
  1176 + target_ulong __unused5;
  1177 +};
  1178 +
  1179 +/* This matches struct stat64 in glibc2.1, hence the absolutely
  1180 + * insane amounts of padding around dev_t's.
  1181 + */
  1182 +struct target_stat64 {
  1183 + unsigned short st_dev;
  1184 + unsigned char __pad0[10];
  1185 +
  1186 +#define TARGET_STAT64_HAS_BROKEN_ST_INO 1
  1187 + target_ulong __st_ino;
  1188 +
  1189 + unsigned int st_mode;
  1190 + unsigned int st_nlink;
  1191 +
  1192 + target_ulong st_uid;
  1193 + target_ulong st_gid;
  1194 +
  1195 + unsigned short st_rdev;
  1196 + unsigned char __pad3[10];
  1197 +
  1198 + long long st_size;
  1199 + target_ulong st_blksize;
  1200 +
  1201 + target_ulong st_blocks; /* Number 512-byte blocks allocated. */
  1202 + target_ulong __pad4; /* future possible st_blocks high bits */
  1203 +
  1204 + target_ulong target_st_atime;
  1205 + target_ulong __pad5;
  1206 +
  1207 + target_ulong target_st_mtime;
  1208 + target_ulong __pad6;
  1209 +
  1210 + target_ulong target_st_ctime;
  1211 + target_ulong __pad7; /* will be high 32 bits of ctime someday */
  1212 +
  1213 + unsigned long long st_ino;
  1214 +} __attribute__((packed));
  1215 +
  1216 +#endif /* defined(TARGET_I386) || defined(TARGET_ARM) */
  1217 +
  1218 +#define TARGET_F_DUPFD 0 /* dup */
  1219 +#define TARGET_F_GETFD 1 /* get close_on_exec */
  1220 +#define TARGET_F_SETFD 2 /* set/clear close_on_exec */
  1221 +#define TARGET_F_GETFL 3 /* get file->f_flags */
  1222 +#define TARGET_F_SETFL 4 /* set file->f_flags */
  1223 +
  1224 +#if defined(TARGET_ALPHA)
  1225 +#define TARGET_F_GETLK 7
  1226 +#define TARGET_F_SETLK 8
  1227 +#define TARGET_F_SETLKW 9
  1228 +#define TARGET_F_SETOWN 5 /* for sockets. */
  1229 +#define TARGET_F_GETOWN 6 /* for sockets. */
  1230 +#else
  1231 +#define TARGET_F_GETLK 5
  1232 +#define TARGET_F_SETLK 6
  1233 +#define TARGET_F_SETLKW 7
  1234 +#define TARGET_F_SETOWN 8 /* for sockets. */
  1235 +#define TARGET_F_GETOWN 9 /* for sockets. */
  1236 +#endif
  1237 +
  1238 +#define TARGET_F_SETSIG 10 /* for sockets. */
  1239 +#define TARGET_F_GETSIG 11 /* for sockets. */
  1240 +
  1241 +#define TARGET_F_GETLK64 12 /* using 'struct flock64' */
  1242 +#define TARGET_F_SETLK64 13
  1243 +#define TARGET_F_SETLKW64 14
  1244 +
  1245 +struct target_flock {
  1246 + short l_type;
  1247 + short l_whence;
  1248 + target_ulong l_start;
  1249 + target_ulong l_len;
  1250 + int l_pid;
  1251 +};
  1252 +
  1253 +struct target_flock64 {
  1254 + short l_type;
  1255 + short l_whence;
  1256 + unsigned long long l_start;
  1257 + unsigned long long l_len;
  1258 + int l_pid;
  1259 +};
  1260 +
  1261 +
  1262 +/* soundcard defines */
  1263 +/* XXX: convert them all to arch indepedent entries */
  1264 +#define TARGET_SNDCTL_COPR_HALT TARGET_IOWR('C', 7, int);
  1265 +#define TARGET_SNDCTL_COPR_LOAD 0xcfb04301
  1266 +#define TARGET_SNDCTL_COPR_RCODE 0xc0144303
  1267 +#define TARGET_SNDCTL_COPR_RCVMSG 0x8fa44309
  1268 +#define TARGET_SNDCTL_COPR_RDATA 0xc0144302
  1269 +#define TARGET_SNDCTL_COPR_RESET 0x00004300
  1270 +#define TARGET_SNDCTL_COPR_RUN 0xc0144306
  1271 +#define TARGET_SNDCTL_COPR_SENDMSG 0xcfa44308
  1272 +#define TARGET_SNDCTL_COPR_WCODE 0x40144305
  1273 +#define TARGET_SNDCTL_COPR_WDATA 0x40144304
  1274 +#define TARGET_SNDCTL_DSP_RESET TARGET_IO('P', 0)
  1275 +#define TARGET_SNDCTL_DSP_SYNC TARGET_IO('P', 1)
  1276 +#define TARGET_SNDCTL_DSP_SPEED TARGET_IOWR('P', 2, int)
  1277 +#define TARGET_SNDCTL_DSP_STEREO TARGET_IOWR('P', 3, int)
  1278 +#define TARGET_SNDCTL_DSP_GETBLKSIZE TARGET_IOWR('P', 4, int)
  1279 +#define TARGET_SNDCTL_DSP_SETFMT TARGET_IOWR('P', 5, int)
  1280 +#define TARGET_SNDCTL_DSP_CHANNELS TARGET_IOWR('P', 6, int)
  1281 +#define TARGET_SOUND_PCM_WRITE_FILTER TARGET_IOWR('P', 7, int)
  1282 +#define TARGET_SNDCTL_DSP_POST TARGET_IO('P', 8)
  1283 +#define TARGET_SNDCTL_DSP_SUBDIVIDE TARGET_IOWR('P', 9, int)
  1284 +#define TARGET_SNDCTL_DSP_SETFRAGMENT TARGET_IOWR('P',10, int)
  1285 +#define TARGET_SNDCTL_DSP_GETFMTS TARGET_IOR('P', 11, int)
  1286 +#define TARGET_SNDCTL_DSP_GETOSPACE TARGET_IORU('P',12)
  1287 +#define TARGET_SNDCTL_DSP_GETISPACE TARGET_IORU('P',13)
  1288 +#define TARGET_SNDCTL_DSP_GETCAPS TARGET_IOR('P', 15, int)
  1289 +#define TARGET_SNDCTL_DSP_GETTRIGGER TARGET_IOR('P',16, int)
  1290 +#define TARGET_SNDCTL_DSP_GETIPTR TARGET_IORU('P',17)
  1291 +#define TARGET_SNDCTL_DSP_GETOPTR TARGET_IORU('P',18)
  1292 +#define TARGET_SNDCTL_DSP_MAPINBUF 0x80085013
  1293 +#define TARGET_SNDCTL_DSP_MAPOUTBUF 0x80085014
  1294 +#define TARGET_SNDCTL_DSP_NONBLOCK 0x0000500e
  1295 +#define TARGET_SNDCTL_DSP_SAMPLESIZE 0xc0045005
  1296 +#define TARGET_SNDCTL_DSP_SETDUPLEX 0x00005016
  1297 +#define TARGET_SNDCTL_DSP_SETSYNCRO 0x00005015
  1298 +#define TARGET_SNDCTL_DSP_SETTRIGGER 0x40045010
  1299 +#define TARGET_SNDCTL_FM_4OP_ENABLE 0x4004510f
  1300 +#define TARGET_SNDCTL_FM_LOAD_INSTR 0x40285107
  1301 +#define TARGET_SNDCTL_MIDI_INFO 0xc074510c
  1302 +#define TARGET_SNDCTL_MIDI_MPUCMD 0xc0216d02
  1303 +#define TARGET_SNDCTL_MIDI_MPUMODE 0xc0046d01
  1304 +#define TARGET_SNDCTL_MIDI_PRETIME 0xc0046d00
  1305 +#define TARGET_SNDCTL_PMGR_ACCESS 0xcfb85110
  1306 +#define TARGET_SNDCTL_PMGR_IFACE 0xcfb85001
  1307 +#define TARGET_SNDCTL_SEQ_CTRLRATE 0xc0045103
  1308 +#define TARGET_SNDCTL_SEQ_GETINCOUNT 0x80045105
  1309 +#define TARGET_SNDCTL_SEQ_GETOUTCOUNT 0x80045104
  1310 +#define TARGET_SNDCTL_SEQ_NRMIDIS 0x8004510b
  1311 +#define TARGET_SNDCTL_SEQ_NRSYNTHS 0x8004510a
  1312 +#define TARGET_SNDCTL_SEQ_OUTOFBAND 0x40085112
  1313 +#define TARGET_SNDCTL_SEQ_PANIC 0x00005111
  1314 +#define TARGET_SNDCTL_SEQ_PERCMODE 0x40045106
  1315 +#define TARGET_SNDCTL_SEQ_RESET 0x00005100
  1316 +#define TARGET_SNDCTL_SEQ_RESETSAMPLES 0x40045109
  1317 +#define TARGET_SNDCTL_SEQ_SYNC 0x00005101
  1318 +#define TARGET_SNDCTL_SEQ_TESTMIDI 0x40045108
  1319 +#define TARGET_SNDCTL_SEQ_THRESHOLD 0x4004510d
  1320 +#define TARGET_SNDCTL_SEQ_TRESHOLD 0x4004510d
  1321 +#define TARGET_SNDCTL_SYNTH_INFO 0xc08c5102
  1322 +#define TARGET_SNDCTL_SYNTH_MEMAVL 0xc004510e
  1323 +#define TARGET_SNDCTL_TMR_CONTINUE 0x00005404
  1324 +#define TARGET_SNDCTL_TMR_METRONOME 0x40045407
  1325 +#define TARGET_SNDCTL_TMR_SELECT 0x40045408
  1326 +#define TARGET_SNDCTL_TMR_SOURCE 0xc0045406
  1327 +#define TARGET_SNDCTL_TMR_START 0x00005402
  1328 +#define TARGET_SNDCTL_TMR_STOP 0x00005403
  1329 +#define TARGET_SNDCTL_TMR_TEMPO 0xc0045405
  1330 +#define TARGET_SNDCTL_TMR_TIMEBASE 0xc0045401
  1331 +#define TARGET_SOUND_PCM_READ_RATE 0x80045002
  1332 +#define TARGET_SOUND_PCM_READ_CHANNELS 0x80045006
  1333 +#define TARGET_SOUND_PCM_READ_BITS 0x80045005
  1334 +#define TARGET_SOUND_PCM_READ_FILTER 0x80045007
  1335 +#define TARGET_SOUND_MIXER_INFO TARGET_IOR ('M', 101, mixer_info)
  1336 +#define TARGET_SOUND_MIXER_ACCESS 0xc0804d66
  1337 +#define TARGET_SOUND_MIXER_PRIVATE1 TARGET_IOWR('M', 111, int)
  1338 +#define TARGET_SOUND_MIXER_PRIVATE2 TARGET_IOWR('M', 112, int)
  1339 +#define TARGET_SOUND_MIXER_PRIVATE3 TARGET_IOWR('M', 113, int)
  1340 +#define TARGET_SOUND_MIXER_PRIVATE4 TARGET_IOWR('M', 114, int)
  1341 +#define TARGET_SOUND_MIXER_PRIVATE5 TARGET_IOWR('M', 115, int)
  1342 +
  1343 +#define TARGET_MIXER_READ(dev) TARGET_IOR('M', dev, int)
  1344 +
  1345 +#define TARGET_SOUND_MIXER_READ_VOLUME TARGET_MIXER_READ(SOUND_MIXER_VOLUME)
  1346 +#define TARGET_SOUND_MIXER_READ_BASS TARGET_MIXER_READ(SOUND_MIXER_BASS)
  1347 +#define TARGET_SOUND_MIXER_READ_TREBLE TARGET_MIXER_READ(SOUND_MIXER_TREBLE)
  1348 +#define TARGET_SOUND_MIXER_READ_SYNTH TARGET_MIXER_READ(SOUND_MIXER_SYNTH)
  1349 +#define TARGET_SOUND_MIXER_READ_PCM TARGET_MIXER_READ(SOUND_MIXER_PCM)
  1350 +#define TARGET_SOUND_MIXER_READ_SPEAKER TARGET_MIXER_READ(SOUND_MIXER_SPEAKER)
  1351 +#define TARGET_SOUND_MIXER_READ_LINE TARGET_MIXER_READ(SOUND_MIXER_LINE)
  1352 +#define TARGET_SOUND_MIXER_READ_MIC TARGET_MIXER_READ(SOUND_MIXER_MIC)
  1353 +#define TARGET_SOUND_MIXER_READ_CD TARGET_MIXER_READ(SOUND_MIXER_CD)
  1354 +#define TARGET_SOUND_MIXER_READ_IMIX TARGET_MIXER_READ(SOUND_MIXER_IMIX)
  1355 +#define TARGET_SOUND_MIXER_READ_ALTPCM TARGET_MIXER_READ(SOUND_MIXER_ALTPCM)
  1356 +#define TARGET_SOUND_MIXER_READ_RECLEV TARGET_MIXER_READ(SOUND_MIXER_RECLEV)
  1357 +#define TARGET_SOUND_MIXER_READ_IGAIN TARGET_MIXER_READ(SOUND_MIXER_IGAIN)
  1358 +#define TARGET_SOUND_MIXER_READ_OGAIN TARGET_MIXER_READ(SOUND_MIXER_OGAIN)
  1359 +#define TARGET_SOUND_MIXER_READ_LINE1 TARGET_MIXER_READ(SOUND_MIXER_LINE1)
  1360 +#define TARGET_SOUND_MIXER_READ_LINE2 TARGET_MIXER_READ(SOUND_MIXER_LINE2)
  1361 +#define TARGET_SOUND_MIXER_READ_LINE3 TARGET_MIXER_READ(SOUND_MIXER_LINE3)
  1362 +
  1363 +/* Obsolete macros */
  1364 +#define TARGET_SOUND_MIXER_READ_MUTE TARGET_MIXER_READ(SOUND_MIXER_MUTE)
  1365 +#define TARGET_SOUND_MIXER_READ_ENHANCE TARGET_MIXER_READ(SOUND_MIXER_ENHANCE)
  1366 +#define TARGET_SOUND_MIXER_READ_LOUD TARGET_MIXER_READ(SOUND_MIXER_LOUD)
  1367 +
  1368 +#define TARGET_SOUND_MIXER_READ_RECSRC TARGET_MIXER_READ(SOUND_MIXER_RECSRC)
  1369 +#define TARGET_SOUND_MIXER_READ_DEVMASK TARGET_MIXER_READ(SOUND_MIXER_DEVMASK)
  1370 +#define TARGET_SOUND_MIXER_READ_RECMASK TARGET_MIXER_READ(SOUND_MIXER_RECMASK)
  1371 +#define TARGET_SOUND_MIXER_READ_STEREODEVS TARGET_MIXER_READ(SOUND_MIXER_STEREODEVS)
  1372 +#define TARGET_SOUND_MIXER_READ_CAPS TARGET_MIXER_READ(SOUND_MIXER_CAPS)
  1373 +
  1374 +#define TARGET_MIXER_WRITE(dev) TARGET_IOWR('M', dev, int)
  1375 +
  1376 +#define TARGET_SOUND_MIXER_WRITE_VOLUME TARGET_MIXER_WRITE(SOUND_MIXER_VOLUME)
  1377 +#define TARGET_SOUND_MIXER_WRITE_BASS TARGET_MIXER_WRITE(SOUND_MIXER_BASS)
  1378 +#define TARGET_SOUND_MIXER_WRITE_TREBLE TARGET_MIXER_WRITE(SOUND_MIXER_TREBLE)
  1379 +#define TARGET_SOUND_MIXER_WRITE_SYNTH TARGET_MIXER_WRITE(SOUND_MIXER_SYNTH)
  1380 +#define TARGET_SOUND_MIXER_WRITE_PCM TARGET_MIXER_WRITE(SOUND_MIXER_PCM)
  1381 +#define TARGET_SOUND_MIXER_WRITE_SPEAKER TARGET_MIXER_WRITE(SOUND_MIXER_SPEAKER)
  1382 +#define TARGET_SOUND_MIXER_WRITE_LINE TARGET_MIXER_WRITE(SOUND_MIXER_LINE)
  1383 +#define TARGET_SOUND_MIXER_WRITE_MIC TARGET_MIXER_WRITE(SOUND_MIXER_MIC)
  1384 +#define TARGET_SOUND_MIXER_WRITE_CD TARGET_MIXER_WRITE(SOUND_MIXER_CD)
  1385 +#define TARGET_SOUND_MIXER_WRITE_IMIX TARGET_MIXER_WRITE(SOUND_MIXER_IMIX)
  1386 +#define TARGET_SOUND_MIXER_WRITE_ALTPCM TARGET_MIXER_WRITE(SOUND_MIXER_ALTPCM)
  1387 +#define TARGET_SOUND_MIXER_WRITE_RECLEV TARGET_MIXER_WRITE(SOUND_MIXER_RECLEV)
  1388 +#define TARGET_SOUND_MIXER_WRITE_IGAIN TARGET_MIXER_WRITE(SOUND_MIXER_IGAIN)
  1389 +#define TARGET_SOUND_MIXER_WRITE_OGAIN TARGET_MIXER_WRITE(SOUND_MIXER_OGAIN)
  1390 +#define TARGET_SOUND_MIXER_WRITE_LINE1 TARGET_MIXER_WRITE(SOUND_MIXER_LINE1)
  1391 +#define TARGET_SOUND_MIXER_WRITE_LINE2 TARGET_MIXER_WRITE(SOUND_MIXER_LINE2)
  1392 +#define TARGET_SOUND_MIXER_WRITE_LINE3 TARGET_MIXER_WRITE(SOUND_MIXER_LINE3)
  1393 +
  1394 +/* Obsolete macros */
  1395 +#define TARGET_SOUND_MIXER_WRITE_MUTE TARGET_MIXER_WRITE(SOUND_MIXER_MUTE)
  1396 +#define TARGET_SOUND_MIXER_WRITE_ENHANCE TARGET_MIXER_WRITE(SOUND_MIXER_ENHANCE)
  1397 +#define TARGET_SOUND_MIXER_WRITE_LOUD TARGET_MIXER_WRITE(SOUND_MIXER_LOUD)
  1398 +
  1399 +#define TARGET_SOUND_MIXER_WRITE_RECSRC TARGET_MIXER_WRITE(SOUND_MIXER_RECSRC)
  1400 +
  1401 +/* vfat ioctls */
  1402 +#define TARGET_VFAT_IOCTL_READDIR_BOTH TARGET_IORU('r', 1)
  1403 +#define TARGET_VFAT_IOCTL_READDIR_SHORT TARGET_IORU('r', 2)
linux-user/syscall_types.h
@@ -67,3 +67,12 @@ STRUCT(dirent, @@ -67,3 +67,12 @@ STRUCT(dirent,
67 67
68 STRUCT(kbentry, 68 STRUCT(kbentry,
69 TYPE_CHAR, TYPE_CHAR, TYPE_SHORT) 69 TYPE_CHAR, TYPE_CHAR, TYPE_SHORT)
  70 +
  71 +STRUCT(audio_buf_info,
  72 + TYPE_INT, TYPE_INT, TYPE_INT, TYPE_INT)
  73 +
  74 +STRUCT(count_info,
  75 + TYPE_INT, TYPE_INT, TYPE_INT)
  76 +
  77 +STRUCT(mixer_info,
  78 + MK_ARRAY(TYPE_CHAR, 16), MK_ARRAY(TYPE_CHAR, 32), TYPE_INT, MK_ARRAY(TYPE_INT, 10))
syscall-i386.h
1 -/* from linux/unistd.h */  
2 -  
3 -#define TARGET_NR_exit 1  
4 -#define TARGET_NR_fork 2  
5 -#define TARGET_NR_read 3  
6 -#define TARGET_NR_write 4  
7 -#define TARGET_NR_open 5  
8 -#define TARGET_NR_close 6  
9 -#define TARGET_NR_waitpid 7  
10 -#define TARGET_NR_creat 8  
11 -#define TARGET_NR_link 9  
12 -#define TARGET_NR_unlink 10  
13 -#define TARGET_NR_execve 11  
14 -#define TARGET_NR_chdir 12  
15 -#define TARGET_NR_time 13  
16 -#define TARGET_NR_mknod 14  
17 -#define TARGET_NR_chmod 15  
18 -#define TARGET_NR_lchown 16  
19 -#define TARGET_NR_break 17  
20 -#define TARGET_NR_oldstat 18  
21 -#define TARGET_NR_lseek 19  
22 -#define TARGET_NR_getpid 20  
23 -#define TARGET_NR_mount 21  
24 -#define TARGET_NR_umount 22  
25 -#define TARGET_NR_setuid 23  
26 -#define TARGET_NR_getuid 24  
27 -#define TARGET_NR_stime 25  
28 -#define TARGET_NR_ptrace 26  
29 -#define TARGET_NR_alarm 27  
30 -#define TARGET_NR_oldfstat 28  
31 -#define TARGET_NR_pause 29  
32 -#define TARGET_NR_utime 30  
33 -#define TARGET_NR_stty 31  
34 -#define TARGET_NR_gtty 32  
35 -#define TARGET_NR_access 33  
36 -#define TARGET_NR_nice 34  
37 -#define TARGET_NR_ftime 35  
38 -#define TARGET_NR_sync 36  
39 -#define TARGET_NR_kill 37  
40 -#define TARGET_NR_rename 38  
41 -#define TARGET_NR_mkdir 39  
42 -#define TARGET_NR_rmdir 40  
43 -#define TARGET_NR_dup 41  
44 -#define TARGET_NR_pipe 42  
45 -#define TARGET_NR_times 43  
46 -#define TARGET_NR_prof 44  
47 -#define TARGET_NR_brk 45  
48 -#define TARGET_NR_setgid 46  
49 -#define TARGET_NR_getgid 47  
50 -#define TARGET_NR_signal 48  
51 -#define TARGET_NR_geteuid 49  
52 -#define TARGET_NR_getegid 50  
53 -#define TARGET_NR_acct 51  
54 -#define TARGET_NR_umount2 52  
55 -#define TARGET_NR_lock 53  
56 -#define TARGET_NR_ioctl 54  
57 -#define TARGET_NR_fcntl 55  
58 -#define TARGET_NR_mpx 56  
59 -#define TARGET_NR_setpgid 57  
60 -#define TARGET_NR_ulimit 58  
61 -#define TARGET_NR_oldolduname 59  
62 -#define TARGET_NR_umask 60  
63 -#define TARGET_NR_chroot 61  
64 -#define TARGET_NR_ustat 62  
65 -#define TARGET_NR_dup2 63  
66 -#define TARGET_NR_getppid 64  
67 -#define TARGET_NR_getpgrp 65  
68 -#define TARGET_NR_setsid 66  
69 -#define TARGET_NR_sigaction 67  
70 -#define TARGET_NR_sgetmask 68  
71 -#define TARGET_NR_ssetmask 69  
72 -#define TARGET_NR_setreuid 70  
73 -#define TARGET_NR_setregid 71  
74 -#define TARGET_NR_sigsuspend 72  
75 -#define TARGET_NR_sigpending 73  
76 -#define TARGET_NR_sethostname 74  
77 -#define TARGET_NR_setrlimit 75  
78 -#define TARGET_NR_getrlimit 76 /* Back compatible 2Gig limited rlimit */  
79 -#define TARGET_NR_getrusage 77  
80 -#define TARGET_NR_gettimeofday 78  
81 -#define TARGET_NR_settimeofday 79  
82 -#define TARGET_NR_getgroups 80  
83 -#define TARGET_NR_setgroups 81  
84 -#define TARGET_NR_select 82  
85 -#define TARGET_NR_symlink 83  
86 -#define TARGET_NR_oldlstat 84  
87 -#define TARGET_NR_readlink 85  
88 -#define TARGET_NR_uselib 86  
89 -#define TARGET_NR_swapon 87  
90 -#define TARGET_NR_reboot 88  
91 -#define TARGET_NR_readdir 89  
92 -#define TARGET_NR_mmap 90  
93 -#define TARGET_NR_munmap 91  
94 -#define TARGET_NR_truncate 92  
95 -#define TARGET_NR_ftruncate 93  
96 -#define TARGET_NR_fchmod 94  
97 -#define TARGET_NR_fchown 95  
98 -#define TARGET_NR_getpriority 96  
99 -#define TARGET_NR_setpriority 97  
100 -#define TARGET_NR_profil 98  
101 -#define TARGET_NR_statfs 99  
102 -#define TARGET_NR_fstatfs 100  
103 -#define TARGET_NR_ioperm 101  
104 -#define TARGET_NR_socketcall 102  
105 -#define TARGET_NR_syslog 103  
106 -#define TARGET_NR_setitimer 104  
107 -#define TARGET_NR_getitimer 105  
108 -#define TARGET_NR_stat 106  
109 -#define TARGET_NR_lstat 107  
110 -#define TARGET_NR_fstat 108  
111 -#define TARGET_NR_olduname 109  
112 -#define TARGET_NR_iopl 110  
113 -#define TARGET_NR_vhangup 111  
114 -#define TARGET_NR_idle 112  
115 -#define TARGET_NR_vm86old 113  
116 -#define TARGET_NR_wait4 114  
117 -#define TARGET_NR_swapoff 115  
118 -#define TARGET_NR_sysinfo 116  
119 -#define TARGET_NR_ipc 117  
120 -#define TARGET_NR_fsync 118  
121 -#define TARGET_NR_sigreturn 119  
122 -#define TARGET_NR_clone 120  
123 -#define TARGET_NR_setdomainname 121  
124 -#define TARGET_NR_uname 122  
125 -#define TARGET_NR_modify_ldt 123  
126 -#define TARGET_NR_adjtimex 124  
127 -#define TARGET_NR_mprotect 125  
128 -#define TARGET_NR_sigprocmask 126  
129 -#define TARGET_NR_create_module 127  
130 -#define TARGET_NR_init_module 128  
131 -#define TARGET_NR_delete_module 129  
132 -#define TARGET_NR_get_kernel_syms 130  
133 -#define TARGET_NR_quotactl 131  
134 -#define TARGET_NR_getpgid 132  
135 -#define TARGET_NR_fchdir 133  
136 -#define TARGET_NR_bdflush 134  
137 -#define TARGET_NR_sysfs 135  
138 -#define TARGET_NR_personality 136  
139 -#define TARGET_NR_afs_syscall 137 /* Syscall for Andrew File System */  
140 -#define TARGET_NR_setfsuid 138  
141 -#define TARGET_NR_setfsgid 139  
142 -#define TARGET_NR__llseek 140  
143 -#define TARGET_NR_getdents 141  
144 -#define TARGET_NR__newselect 142  
145 -#define TARGET_NR_flock 143  
146 -#define TARGET_NR_msync 144  
147 -#define TARGET_NR_readv 145  
148 -#define TARGET_NR_writev 146  
149 -#define TARGET_NR_getsid 147  
150 -#define TARGET_NR_fdatasync 148  
151 -#define TARGET_NR__sysctl 149  
152 -#define TARGET_NR_mlock 150  
153 -#define TARGET_NR_munlock 151  
154 -#define TARGET_NR_mlockall 152  
155 -#define TARGET_NR_munlockall 153  
156 -#define TARGET_NR_sched_setparam 154  
157 -#define TARGET_NR_sched_getparam 155  
158 -#define TARGET_NR_sched_setscheduler 156  
159 -#define TARGET_NR_sched_getscheduler 157  
160 -#define TARGET_NR_sched_yield 158  
161 -#define TARGET_NR_sched_get_priority_max 159  
162 -#define TARGET_NR_sched_get_priority_min 160  
163 -#define TARGET_NR_sched_rr_get_interval 161  
164 -#define TARGET_NR_nanosleep 162  
165 -#define TARGET_NR_mremap 163  
166 -#define TARGET_NR_setresuid 164  
167 -#define TARGET_NR_getresuid 165  
168 -#define TARGET_NR_vm86 166  
169 -#define TARGET_NR_query_module 167  
170 -#define TARGET_NR_poll 168  
171 -#define TARGET_NR_nfsservctl 169  
172 -#define TARGET_NR_setresgid 170  
173 -#define TARGET_NR_getresgid 171  
174 -#define TARGET_NR_prctl 172  
175 -#define TARGET_NR_rt_sigreturn 173  
176 -#define TARGET_NR_rt_sigaction 174  
177 -#define TARGET_NR_rt_sigprocmask 175  
178 -#define TARGET_NR_rt_sigpending 176  
179 -#define TARGET_NR_rt_sigtimedwait 177  
180 -#define TARGET_NR_rt_sigqueueinfo 178  
181 -#define TARGET_NR_rt_sigsuspend 179  
182 -#define TARGET_NR_pread 180  
183 -#define TARGET_NR_pwrite 181  
184 -#define TARGET_NR_chown 182  
185 -#define TARGET_NR_getcwd 183  
186 -#define TARGET_NR_capget 184  
187 -#define TARGET_NR_capset 185  
188 -#define TARGET_NR_sigaltstack 186  
189 -#define TARGET_NR_sendfile 187  
190 -#define TARGET_NR_getpmsg 188 /* some people actually want streams */  
191 -#define TARGET_NR_putpmsg 189 /* some people actually want streams */  
192 -#define TARGET_NR_vfork 190  
193 -#define TARGET_NR_ugetrlimit 191 /* SuS compliant getrlimit */  
194 -#define TARGET_NR_mmap2 192  
195 -#define TARGET_NR_truncate64 193  
196 -#define TARGET_NR_ftruncate64 194  
197 -#define TARGET_NR_stat64 195  
198 -#define TARGET_NR_lstat64 196  
199 -#define TARGET_NR_fstat64 197  
200 -#define TARGET_NR_lchown32 198  
201 -#define TARGET_NR_getuid32 199  
202 -#define TARGET_NR_getgid32 200  
203 -#define TARGET_NR_geteuid32 201  
204 -#define TARGET_NR_getegid32 202  
205 -#define TARGET_NR_setreuid32 203  
206 -#define TARGET_NR_setregid32 204  
207 -#define TARGET_NR_getgroups32 205  
208 -#define TARGET_NR_setgroups32 206  
209 -#define TARGET_NR_fchown32 207  
210 -#define TARGET_NR_setresuid32 208  
211 -#define TARGET_NR_getresuid32 209  
212 -#define TARGET_NR_setresgid32 210  
213 -#define TARGET_NR_getresgid32 211  
214 -#define TARGET_NR_chown32 212  
215 -#define TARGET_NR_setuid32 213  
216 -#define TARGET_NR_setgid32 214  
217 -#define TARGET_NR_setfsuid32 215  
218 -#define TARGET_NR_setfsgid32 216  
219 -#define TARGET_NR_pivot_root 217  
220 -#define TARGET_NR_mincore 218  
221 -#define TARGET_NR_madvise 219  
222 -#define TARGET_NR_madvise1 219 /* delete when C lib stub is removed */  
223 -#define TARGET_NR_getdents64 220  
224 -#define TARGET_NR_fcntl64 221  
225 -#define TARGET_NR_security 223 /* syscall for security modules */  
226 -#define TARGET_NR_gettid 224  
227 -#define TARGET_NR_readahead 225  
228 -#define TARGET_NR_setxattr 226  
229 -#define TARGET_NR_lsetxattr 227  
230 -#define TARGET_NR_fsetxattr 228  
231 -#define TARGET_NR_getxattr 229  
232 -#define TARGET_NR_lgetxattr 230  
233 -#define TARGET_NR_fgetxattr 231  
234 -#define TARGET_NR_listxattr 232  
235 -#define TARGET_NR_llistxattr 233  
236 -#define TARGET_NR_flistxattr 234  
237 -#define TARGET_NR_removexattr 235  
238 -#define TARGET_NR_lremovexattr 236  
239 -#define TARGET_NR_fremovexattr 237  
240 -#define TARGET_NR_tkill 238  
241 -#define TARGET_NR_sendfile64 239  
242 -#define TARGET_NR_futex 240  
243 -#define TARGET_NR_sched_setaffinity 241  
244 -#define TARGET_NR_sched_getaffinity 242  
245 -#define TARGET_NR_set_thread_area 243  
246 -#define TARGET_NR_get_thread_area 244  
247 -#define TARGET_NR_io_setup 245  
248 -#define TARGET_NR_io_destroy 246  
249 -#define TARGET_NR_io_getevents 247  
250 -#define TARGET_NR_io_submit 248  
251 -#define TARGET_NR_io_cancel 249  
252 -#define TARGET_NR_fadvise64 250  
253 -  
254 -#define TARGET_NR_exit_group 252  
255 -#define TARGET_NR_lookup_dcookie 253  
256 -#define TARGET_NR_epoll_create 254  
257 -#define TARGET_NR_epoll_ctl 255  
258 -#define TARGET_NR_epoll_wait 256  
259 -#define TARGET_NR_remap_file_pages 257  
260 -#define TARGET_NR_set_tid_address 258  
261 -#define TARGET_NR_timer_create 259  
262 -#define TARGET_NR_timer_settime (TARGET_NR_timer_create+1)  
263 -#define TARGET_NR_timer_gettime (TARGET_NR_timer_create+2)  
264 -#define TARGET_NR_timer_getoverrun (TARGET_NR_timer_create+3)  
265 -#define TARGET_NR_timer_delete (TARGET_NR_timer_create+4)  
266 -#define TARGET_NR_clock_settime (TARGET_NR_timer_create+5)  
267 -#define TARGET_NR_clock_gettime (TARGET_NR_timer_create+6)  
268 -#define TARGET_NR_clock_getres (TARGET_NR_timer_create+7)  
269 -#define TARGET_NR_clock_nanosleep (TARGET_NR_timer_create+8)  
270 -  
271 -#define TARGET_SIG_BLOCK 0 /* for blocking signals */  
272 -#define TARGET_SIG_UNBLOCK 1 /* for unblocking signals */  
273 -#define TARGET_SIG_SETMASK 2 /* for setting the signal mask */  
274 -  
275 -struct target_stat {  
276 - unsigned short st_dev;  
277 - unsigned short __pad1;  
278 - target_ulong st_ino;  
279 - unsigned short st_mode;  
280 - unsigned short st_nlink;  
281 - unsigned short st_uid;  
282 - unsigned short st_gid;  
283 - unsigned short st_rdev;  
284 - unsigned short __pad2;  
285 - target_ulong st_size;  
286 - target_ulong st_blksize;  
287 - target_ulong st_blocks;  
288 - target_ulong target_st_atime;  
289 - target_ulong __unused1;  
290 - target_ulong target_st_mtime;  
291 - target_ulong __unused2;  
292 - target_ulong target_st_ctime;  
293 - target_ulong __unused3;  
294 - target_ulong __unused4;  
295 - target_ulong __unused5;  
296 -};  
297 -  
298 -/* This matches struct stat64 in glibc2.1, hence the absolutely  
299 - * insane amounts of padding around dev_t's.  
300 - */  
301 -struct target_stat64 {  
302 - unsigned short st_dev;  
303 - unsigned char __pad0[10];  
304 -  
305 -#define TARGET_STAT64_HAS_BROKEN_ST_INO 1  
306 - target_ulong __st_ino;  
307 -  
308 - unsigned int st_mode;  
309 - unsigned int st_nlink;  
310 -  
311 - target_ulong st_uid;  
312 - target_ulong st_gid;  
313 -  
314 - unsigned short st_rdev;  
315 - unsigned char __pad3[10];  
316 -  
317 - long long st_size;  
318 - target_ulong st_blksize;  
319 -  
320 - target_ulong st_blocks; /* Number 512-byte blocks allocated. */  
321 - target_ulong __pad4; /* future possible st_blocks high bits */  
322 -  
323 - target_ulong target_st_atime;  
324 - target_ulong __pad5;  
325 -  
326 - target_ulong target_st_mtime;  
327 - target_ulong __pad6;  
328 -  
329 - target_ulong target_st_ctime;  
330 - target_ulong __pad7; /* will be high 32 bits of ctime someday */  
331 -  
332 - unsigned long long st_ino;  
333 -} __attribute__((packed));  
334 -  
335 -#define TARGET_SA_NOCLDSTOP 0x00000001  
336 -#define TARGET_SA_NOCLDWAIT 0x00000002 /* not supported yet */  
337 -#define TARGET_SA_SIGINFO 0x00000004  
338 -#define TARGET_SA_ONSTACK 0x08000000  
339 -#define TARGET_SA_RESTART 0x10000000  
340 -#define TARGET_SA_NODEFER 0x40000000  
341 -#define TARGET_SA_RESETHAND 0x80000000  
342 -#define TARGET_SA_RESTORER 0x04000000  
343 -  
344 -#define TARGET_SIGHUP 1  
345 -#define TARGET_SIGINT 2  
346 -#define TARGET_SIGQUIT 3  
347 -#define TARGET_SIGILL 4  
348 -#define TARGET_SIGTRAP 5  
349 -#define TARGET_SIGABRT 6  
350 -#define TARGET_SIGIOT 6  
351 -#define TARGET_SIGBUS 7  
352 -#define TARGET_SIGFPE 8  
353 -#define TARGET_SIGKILL 9  
354 -#define TARGET_SIGUSR1 10  
355 -#define TARGET_SIGSEGV 11  
356 -#define TARGET_SIGUSR2 12  
357 -#define TARGET_SIGPIPE 13  
358 -#define TARGET_SIGALRM 14  
359 -#define TARGET_SIGTERM 15  
360 -#define TARGET_SIGSTKFLT 16  
361 -#define TARGET_SIGCHLD 17  
362 -#define TARGET_SIGCONT 18  
363 -#define TARGET_SIGSTOP 19  
364 -#define TARGET_SIGTSTP 20  
365 -#define TARGET_SIGTTIN 21  
366 -#define TARGET_SIGTTOU 22  
367 -#define TARGET_SIGURG 23  
368 -#define TARGET_SIGXCPU 24  
369 -#define TARGET_SIGXFSZ 25  
370 -#define TARGET_SIGVTALRM 26  
371 -#define TARGET_SIGPROF 27  
372 -#define TARGET_SIGWINCH 28  
373 -#define TARGET_SIGIO 29  
374 -#define TARGET_SIGRTMIN 32  
375 -  
376 -struct target_old_sigaction {  
377 - target_ulong _sa_handler;  
378 - target_ulong sa_mask;  
379 - target_ulong sa_flags;  
380 - target_ulong sa_restorer;  
381 -};  
382 -  
383 -struct target_sigaction {  
384 - target_ulong _sa_handler;  
385 - target_ulong sa_flags;  
386 - target_ulong sa_restorer;  
387 - target_sigset_t sa_mask;  
388 -};  
389 -  
390 -typedef union target_sigval {  
391 - int sival_int;  
392 - target_ulong sival_ptr;  
393 -} target_sigval_t;  
394 -  
395 -#define TARGET_SI_MAX_SIZE 128  
396 -#define TARGET_SI_PAD_SIZE ((TARGET_SI_MAX_SIZE/sizeof(int)) - 3)  
397 -  
398 -typedef struct target_siginfo {  
399 - int si_signo;  
400 - int si_errno;  
401 - int si_code;  
402 -  
403 - union {  
404 - int _pad[TARGET_SI_PAD_SIZE];  
405 -  
406 - /* kill() */  
407 - struct {  
408 - pid_t _pid; /* sender's pid */  
409 - uid_t _uid; /* sender's uid */  
410 - } _kill;  
411 -  
412 - /* POSIX.1b timers */  
413 - struct {  
414 - unsigned int _timer1;  
415 - unsigned int _timer2;  
416 - } _timer;  
417 -  
418 - /* POSIX.1b signals */  
419 - struct {  
420 - pid_t _pid; /* sender's pid */  
421 - uid_t _uid; /* sender's uid */  
422 - target_sigval_t _sigval;  
423 - } _rt;  
424 -  
425 - /* SIGCHLD */  
426 - struct {  
427 - pid_t _pid; /* which child */  
428 - uid_t _uid; /* sender's uid */  
429 - int _status; /* exit code */  
430 - target_clock_t _utime;  
431 - target_clock_t _stime;  
432 - } _sigchld;  
433 -  
434 - /* SIGILL, SIGFPE, SIGSEGV, SIGBUS */  
435 - struct {  
436 - target_ulong _addr; /* faulting insn/memory ref. */  
437 - } _sigfault;  
438 -  
439 - /* SIGPOLL */  
440 - struct {  
441 - int _band; /* POLL_IN, POLL_OUT, POLL_MSG */  
442 - int _fd;  
443 - } _sigpoll;  
444 - } _sifields;  
445 -} target_siginfo_t;  
446 -  
447 -/*  
448 - * si_code values  
449 - * Digital reserves positive values for kernel-generated signals.  
450 - */  
451 -#define TARGET_SI_USER 0 /* sent by kill, sigsend, raise */  
452 -#define TARGET_SI_KERNEL 0x80 /* sent by the kernel from somewhere */  
453 -#define TARGET_SI_QUEUE -1 /* sent by sigqueue */  
454 -#define TARGET_SI_TIMER -2 /* sent by timer expiration */  
455 -#define TARGET_SI_MESGQ -3 /* sent by real time mesq state change */  
456 -#define TARGET_SI_ASYNCIO -4 /* sent by AIO completion */  
457 -#define TARGET_SI_SIGIO -5 /* sent by queued SIGIO */  
458 -  
459 -/*  
460 - * SIGILL si_codes  
461 - */  
462 -#define TARGET_ILL_ILLOPN (2) /* illegal operand */  
463 -  
464 -/*  
465 - * SIGFPE si_codes  
466 - */  
467 -#define TARGET_FPE_INTDIV (1) /* integer divide by zero */  
468 -#define TARGET_FPE_INTOVF (2) /* integer overflow */  
469 -#define TARGET_FPE_FLTDIV (3) /* floating point divide by zero */  
470 -#define TARGET_FPE_FLTOVF (4) /* floating point overflow */  
471 -#define TARGET_FPE_FLTUND (5) /* floating point underflow */  
472 -#define TARGET_FPE_FLTRES (6) /* floating point inexact result */  
473 -#define TARGET_FPE_FLTINV (7) /* floating point invalid operation */  
474 -#define TARGET_FPE_FLTSUB (8) /* subscript out of range */  
475 -#define TARGET_NSIGFPE 8  
476 -  
477 -/*  
478 - * SIGSEGV si_codes  
479 - */  
480 -#define TARGET_SEGV_MAPERR (1) /* address not mapped to object */  
481 -#define TARGET_SEGV_ACCERR (2) /* invalid permissions for mapped object */  
482 -  
483 -/*  
484 - * SIGTRAP si_codes  
485 - */  
486 -#define TARGET_TRAP_BRKPT (1) /* process breakpoint */  
487 -#define TARGET_TRAP_TRACE (2) /* process trace trap */  
488 -  
489 /* default linux values for the selectors */ 1 /* default linux values for the selectors */
490 #define __USER_CS (0x23) 2 #define __USER_CS (0x23)
491 #define __USER_DS (0x2B) 3 #define __USER_DS (0x2B)
@@ -510,261 +22,6 @@ struct target_pt_regs { @@ -510,261 +22,6 @@ struct target_pt_regs {
510 22
511 /* ioctls */ 23 /* ioctls */
512 24
513 -/*  
514 - * The following is for compatibility across the various Linux  
515 - * platforms. The i386 ioctl numbering scheme doesn't really enforce  
516 - * a type field. De facto, however, the top 8 bits of the lower 16  
517 - * bits are indeed used as a type field, so we might just as well make  
518 - * this explicit here. Please be sure to use the decoding macros  
519 - * below from now on.  
520 - */  
521 -#define TARGET_IOC_NRBITS 8  
522 -#define TARGET_IOC_TYPEBITS 8  
523 -#define TARGET_IOC_SIZEBITS 14  
524 -#define TARGET_IOC_DIRBITS 2  
525 -  
526 -#define TARGET_IOC_NRMASK ((1 << TARGET_IOC_NRBITS)-1)  
527 -#define TARGET_IOC_TYPEMASK ((1 << TARGET_IOC_TYPEBITS)-1)  
528 -#define TARGET_IOC_SIZEMASK ((1 << TARGET_IOC_SIZEBITS)-1)  
529 -#define TARGET_IOC_DIRMASK ((1 << TARGET_IOC_DIRBITS)-1)  
530 -  
531 -#define TARGET_IOC_NRSHIFT 0  
532 -#define TARGET_IOC_TYPESHIFT (TARGET_IOC_NRSHIFT+TARGET_IOC_NRBITS)  
533 -#define TARGET_IOC_SIZESHIFT (TARGET_IOC_TYPESHIFT+TARGET_IOC_TYPEBITS)  
534 -#define TARGET_IOC_DIRSHIFT (TARGET_IOC_SIZESHIFT+TARGET_IOC_SIZEBITS)  
535 -  
536 -/*  
537 - * Direction bits.  
538 - */  
539 -#define TARGET_IOC_NONE 0U  
540 -#define TARGET_IOC_WRITE 1U  
541 -#define TARGET_IOC_READ 2U  
542 -  
543 -#define TARGET_IOC(dir,type,nr,size) \  
544 - (((dir) << TARGET_IOC_DIRSHIFT) | \  
545 - ((type) << TARGET_IOC_TYPESHIFT) | \  
546 - ((nr) << TARGET_IOC_NRSHIFT) | \  
547 - ((size) << TARGET_IOC_SIZESHIFT))  
548 -  
549 -/* used to create numbers */  
550 -#define TARGET_IO(type,nr) TARGET_IOC(TARGET_IOC_NONE,(type),(nr),0)  
551 -#define TARGET_IOR(type,nr,size) TARGET_IOC(TARGET_IOC_READ,(type),(nr),sizeof(size))  
552 -#define TARGET_IOW(type,nr,size) TARGET_IOC(TARGET_IOC_WRITE,(type),(nr),sizeof(size))  
553 -#define TARGET_IOWR(type,nr,size) TARGET_IOC(TARGET_IOC_READ|TARGET_IOC_WRITE,(type),(nr),sizeof(size))  
554 -  
555 -/* 0x54 is just a magic number to make these relatively unique ('T') */  
556 -  
557 -#define TARGET_TCGETS 0x5401  
558 -#define TARGET_TCSETS 0x5402  
559 -#define TARGET_TCSETSW 0x5403  
560 -#define TARGET_TCSETSF 0x5404  
561 -#define TARGET_TCGETA 0x5405  
562 -#define TARGET_TCSETA 0x5406  
563 -#define TARGET_TCSETAW 0x5407  
564 -#define TARGET_TCSETAF 0x5408  
565 -#define TARGET_TCSBRK 0x5409  
566 -#define TARGET_TCXONC 0x540A  
567 -#define TARGET_TCFLSH 0x540B  
568 -#define TARGET_TIOCEXCL 0x540C  
569 -#define TARGET_TIOCNXCL 0x540D  
570 -#define TARGET_TIOCSCTTY 0x540E  
571 -#define TARGET_TIOCGPGRP 0x540F  
572 -#define TARGET_TIOCSPGRP 0x5410  
573 -#define TARGET_TIOCOUTQ 0x5411  
574 -#define TARGET_TIOCSTI 0x5412  
575 -#define TARGET_TIOCGWINSZ 0x5413  
576 -#define TARGET_TIOCSWINSZ 0x5414  
577 -#define TARGET_TIOCMGET 0x5415  
578 -#define TARGET_TIOCMBIS 0x5416  
579 -#define TARGET_TIOCMBIC 0x5417  
580 -#define TARGET_TIOCMSET 0x5418  
581 -#define TARGET_TIOCGSOFTCAR 0x5419  
582 -#define TARGET_TIOCSSOFTCAR 0x541A  
583 -#define TARGET_FIONREAD 0x541B  
584 -#define TARGET_TIOCINQ FIONREAD  
585 -#define TARGET_TIOCLINUX 0x541C  
586 -#define TARGET_TIOCCONS 0x541D  
587 -#define TARGET_TIOCGSERIAL 0x541E  
588 -#define TARGET_TIOCSSERIAL 0x541F  
589 -#define TARGET_TIOCPKT 0x5420  
590 -#define TARGET_FIONBIO 0x5421  
591 -#define TARGET_TIOCNOTTY 0x5422  
592 -#define TARGET_TIOCSETD 0x5423  
593 -#define TARGET_TIOCGETD 0x5424  
594 -#define TARGET_TCSBRKP 0x5425 /* Needed for POSIX tcsendbreak() */  
595 -#define TARGET_TIOCTTYGSTRUCT 0x5426 /* For debugging only */  
596 -#define TARGET_TIOCSBRK 0x5427 /* BSD compatibility */  
597 -#define TARGET_TIOCCBRK 0x5428 /* BSD compatibility */  
598 -#define TARGET_TIOCGSID 0x5429 /* Return the session ID of FD */  
599 -#define TARGET_TIOCGPTN TARGET_IOR('T',0x30, unsigned int) /* Get Pty Number (of pty-mux device) */  
600 -#define TARGET_TIOCSPTLCK TARGET_IOW('T',0x31, int) /* Lock/unlock Pty */  
601 -  
602 -#define TARGET_FIONCLEX 0x5450 /* these numbers need to be adjusted. */  
603 -#define TARGET_FIOCLEX 0x5451  
604 -#define TARGET_FIOASYNC 0x5452  
605 -#define TARGET_TIOCSERCONFIG 0x5453  
606 -#define TARGET_TIOCSERGWILD 0x5454  
607 -#define TARGET_TIOCSERSWILD 0x5455  
608 -#define TARGET_TIOCGLCKTRMIOS 0x5456  
609 -#define TARGET_TIOCSLCKTRMIOS 0x5457  
610 -#define TARGET_TIOCSERGSTRUCT 0x5458 /* For debugging only */  
611 -#define TARGET_TIOCSERGETLSR 0x5459 /* Get line status register */  
612 -#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config */  
613 -#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */  
614 -  
615 -#define TARGET_TIOCMIWAIT 0x545C /* wait for a change on serial input line(s) */  
616 -#define TARGET_TIOCGICOUNT 0x545D /* read serial port inline interrupt counts */  
617 -#define TARGET_TIOCGHAYESESP 0x545E /* Get Hayes ESP configuration */  
618 -#define TARGET_TIOCSHAYESESP 0x545F /* Set Hayes ESP configuration */  
619 -  
620 -/* Used for packet mode */  
621 -#define TARGET_TIOCPKT_DATA 0  
622 -#define TARGET_TIOCPKT_FLUSHREAD 1  
623 -#define TARGET_TIOCPKT_FLUSHWRITE 2  
624 -#define TARGET_TIOCPKT_STOP 4  
625 -#define TARGET_TIOCPKT_START 8  
626 -#define TARGET_TIOCPKT_NOSTOP 16  
627 -#define TARGET_TIOCPKT_DOSTOP 32  
628 -  
629 -#define TARGET_TIOCSER_TEMT 0x01 /* Transmitter physically empty */  
630 -  
631 -/* from asm/termbits.h */  
632 -  
633 -#define TARGET_NCCS 19  
634 -  
635 -struct target_termios {  
636 - unsigned int c_iflag; /* input mode flags */  
637 - unsigned int c_oflag; /* output mode flags */  
638 - unsigned int c_cflag; /* control mode flags */  
639 - unsigned int c_lflag; /* local mode flags */  
640 - unsigned char c_line; /* line discipline */  
641 - unsigned char c_cc[TARGET_NCCS]; /* control characters */  
642 -};  
643 -  
644 -/* c_iflag bits */  
645 -#define TARGET_IGNBRK 0000001  
646 -#define TARGET_BRKINT 0000002  
647 -#define TARGET_IGNPAR 0000004  
648 -#define TARGET_PARMRK 0000010  
649 -#define TARGET_INPCK 0000020  
650 -#define TARGET_ISTRIP 0000040  
651 -#define TARGET_INLCR 0000100  
652 -#define TARGET_IGNCR 0000200  
653 -#define TARGET_ICRNL 0000400  
654 -#define TARGET_IUCLC 0001000  
655 -#define TARGET_IXON 0002000  
656 -#define TARGET_IXANY 0004000  
657 -#define TARGET_IXOFF 0010000  
658 -#define TARGET_IMAXBEL 0020000  
659 -  
660 -/* c_oflag bits */  
661 -#define TARGET_OPOST 0000001  
662 -#define TARGET_OLCUC 0000002  
663 -#define TARGET_ONLCR 0000004  
664 -#define TARGET_OCRNL 0000010  
665 -#define TARGET_ONOCR 0000020  
666 -#define TARGET_ONLRET 0000040  
667 -#define TARGET_OFILL 0000100  
668 -#define TARGET_OFDEL 0000200  
669 -#define TARGET_NLDLY 0000400  
670 -#define TARGET_NL0 0000000  
671 -#define TARGET_NL1 0000400  
672 -#define TARGET_CRDLY 0003000  
673 -#define TARGET_CR0 0000000  
674 -#define TARGET_CR1 0001000  
675 -#define TARGET_CR2 0002000  
676 -#define TARGET_CR3 0003000  
677 -#define TARGET_TABDLY 0014000  
678 -#define TARGET_TAB0 0000000  
679 -#define TARGET_TAB1 0004000  
680 -#define TARGET_TAB2 0010000  
681 -#define TARGET_TAB3 0014000  
682 -#define TARGET_XTABS 0014000  
683 -#define TARGET_BSDLY 0020000  
684 -#define TARGET_BS0 0000000  
685 -#define TARGET_BS1 0020000  
686 -#define TARGET_VTDLY 0040000  
687 -#define TARGET_VT0 0000000  
688 -#define TARGET_VT1 0040000  
689 -#define TARGET_FFDLY 0100000  
690 -#define TARGET_FF0 0000000  
691 -#define TARGET_FF1 0100000  
692 -  
693 -/* c_cflag bit meaning */  
694 -#define TARGET_CBAUD 0010017  
695 -#define TARGET_B0 0000000 /* hang up */  
696 -#define TARGET_B50 0000001  
697 -#define TARGET_B75 0000002  
698 -#define TARGET_B110 0000003  
699 -#define TARGET_B134 0000004  
700 -#define TARGET_B150 0000005  
701 -#define TARGET_B200 0000006  
702 -#define TARGET_B300 0000007  
703 -#define TARGET_B600 0000010  
704 -#define TARGET_B1200 0000011  
705 -#define TARGET_B1800 0000012  
706 -#define TARGET_B2400 0000013  
707 -#define TARGET_B4800 0000014  
708 -#define TARGET_B9600 0000015  
709 -#define TARGET_B19200 0000016  
710 -#define TARGET_B38400 0000017  
711 -#define TARGET_EXTA B19200  
712 -#define TARGET_EXTB B38400  
713 -#define TARGET_CSIZE 0000060  
714 -#define TARGET_CS5 0000000  
715 -#define TARGET_CS6 0000020  
716 -#define TARGET_CS7 0000040  
717 -#define TARGET_CS8 0000060  
718 -#define TARGET_CSTOPB 0000100  
719 -#define TARGET_CREAD 0000200  
720 -#define TARGET_PARENB 0000400  
721 -#define TARGET_PARODD 0001000  
722 -#define TARGET_HUPCL 0002000  
723 -#define TARGET_CLOCAL 0004000  
724 -#define TARGET_CBAUDEX 0010000  
725 -#define TARGET_B57600 0010001  
726 -#define TARGET_B115200 0010002  
727 -#define TARGET_B230400 0010003  
728 -#define TARGET_B460800 0010004  
729 -#define TARGET_CIBAUD 002003600000 /* input baud rate (not used) */  
730 -#define TARGET_CRTSCTS 020000000000 /* flow control */  
731 -  
732 -/* c_lflag bits */  
733 -#define TARGET_ISIG 0000001  
734 -#define TARGET_ICANON 0000002  
735 -#define TARGET_XCASE 0000004  
736 -#define TARGET_ECHO 0000010  
737 -#define TARGET_ECHOE 0000020  
738 -#define TARGET_ECHOK 0000040  
739 -#define TARGET_ECHONL 0000100  
740 -#define TARGET_NOFLSH 0000200  
741 -#define TARGET_TOSTOP 0000400  
742 -#define TARGET_ECHOCTL 0001000  
743 -#define TARGET_ECHOPRT 0002000  
744 -#define TARGET_ECHOKE 0004000  
745 -#define TARGET_FLUSHO 0010000  
746 -#define TARGET_PENDIN 0040000  
747 -#define TARGET_IEXTEN 0100000  
748 -  
749 -/* c_cc character offsets */  
750 -#define TARGET_VINTR 0  
751 -#define TARGET_VQUIT 1  
752 -#define TARGET_VERASE 2  
753 -#define TARGET_VKILL 3  
754 -#define TARGET_VEOF 4  
755 -#define TARGET_VTIME 5  
756 -#define TARGET_VMIN 6  
757 -#define TARGET_VSWTC 7  
758 -#define TARGET_VSTART 8  
759 -#define TARGET_VSTOP 9  
760 -#define TARGET_VSUSP 10  
761 -#define TARGET_VEOL 11  
762 -#define TARGET_VREPRINT 12  
763 -#define TARGET_VDISCARD 13  
764 -#define TARGET_VWERASE 14  
765 -#define TARGET_VLNEXT 15  
766 -#define TARGET_VEOL2 16  
767 -  
768 #define TARGET_LDT_ENTRIES 8192 25 #define TARGET_LDT_ENTRIES 8192
769 #define TARGET_LDT_ENTRY_SIZE 8 26 #define TARGET_LDT_ENTRY_SIZE 8
770 27
@@ -779,19 +36,6 @@ struct target_modify_ldt_ldt_s { @@ -779,19 +36,6 @@ struct target_modify_ldt_ldt_s {
779 unsigned int flags; 36 unsigned int flags;
780 }; 37 };
781 38
782 -  
783 -#define TARGET_MAP_SHARED 0x01 /* Share changes */  
784 -#define TARGET_MAP_PRIVATE 0x02 /* Changes are private */  
785 -#define TARGET_MAP_TYPE 0x0f /* Mask for type of mapping */  
786 -#define TARGET_MAP_FIXED 0x10 /* Interpret addr exactly */  
787 -#define TARGET_MAP_ANONYMOUS 0x20 /* don't use a file */  
788 -  
789 -#define TARGET_MAP_GROWSDOWN 0x0100 /* stack-like segment */  
790 -#define TARGET_MAP_DENYWRITE 0x0800 /* ETXTBSY */  
791 -#define TARGET_MAP_EXECUTABLE 0x1000 /* mark it as an executable */  
792 -#define TARGET_MAP_LOCKED 0x2000 /* pages are locked */  
793 -#define TARGET_MAP_NORESERVE 0x4000 /* don't check for reservations */  
794 -  
795 /* vm86 defines */ 39 /* vm86 defines */
796 40
797 #define TARGET_BIOSSEG 0x0f000 41 #define TARGET_BIOSSEG 0x0f000
@@ -922,11 +166,6 @@ struct target_ipc_kludge { @@ -922,11 +166,6 @@ struct target_ipc_kludge {
922 int msgtyp; 166 int msgtyp;
923 }; 167 };
924 168
925 -struct alpha_msgbuf {  
926 - long mtype;  
927 - char mtext[4096];  
928 -};  
929 -  
930 struct target_ipc_perm { 169 struct target_ipc_perm {
931 int key; 170 int key;
932 unsigned short uid; 171 unsigned short uid;
@@ -979,168 +218,3 @@ union target_semun { @@ -979,168 +218,3 @@ union target_semun {
979 unsigned int __pad; /* really void* */ 218 unsigned int __pad; /* really void* */
980 }; 219 };
981 220
982 -#define TARGET_F_DUPFD 0 /* dup */  
983 -#define TARGET_F_GETFD 1 /* get close_on_exec */  
984 -#define TARGET_F_SETFD 2 /* set/clear close_on_exec */  
985 -#define TARGET_F_GETFL 3 /* get file->f_flags */  
986 -#define TARGET_F_SETFL 4 /* set file->f_flags */  
987 -#define TARGET_F_GETLK 5  
988 -#define TARGET_F_SETLK 6  
989 -#define TARGET_F_SETLKW 7  
990 -  
991 -#define TARGET_F_SETOWN 8 /* for sockets. */  
992 -#define TARGET_F_GETOWN 9 /* for sockets. */  
993 -#define TARGET_F_SETSIG 10 /* for sockets. */  
994 -#define TARGET_F_GETSIG 11 /* for sockets. */  
995 -  
996 -#define TARGET_F_GETLK64 12 /* using 'struct flock64' */  
997 -#define TARGET_F_SETLK64 13  
998 -#define TARGET_F_SETLKW64 14  
999 -  
1000 -struct target_flock {  
1001 - short l_type;  
1002 - short l_whence;  
1003 - target_ulong l_start;  
1004 - target_ulong l_len;  
1005 - int l_pid;  
1006 -};  
1007 -  
1008 -struct target_flock64 {  
1009 - short l_type;  
1010 - short l_whence;  
1011 - unsigned long long l_start;  
1012 - unsigned long long l_len;  
1013 - int l_pid;  
1014 -};  
1015 -  
1016 -/* soundcard defines (XXX: move them to generic file syscall_defs.h) */  
1017 -  
1018 -#define TARGET_SNDCTL_COPR_HALT 0xc0144307  
1019 -#define TARGET_SNDCTL_COPR_LOAD 0xcfb04301  
1020 -#define TARGET_SNDCTL_COPR_RCODE 0xc0144303  
1021 -#define TARGET_SNDCTL_COPR_RCVMSG 0x8fa44309  
1022 -#define TARGET_SNDCTL_COPR_RDATA 0xc0144302  
1023 -#define TARGET_SNDCTL_COPR_RESET 0x00004300  
1024 -#define TARGET_SNDCTL_COPR_RUN 0xc0144306  
1025 -#define TARGET_SNDCTL_COPR_SENDMSG 0xcfa44308  
1026 -#define TARGET_SNDCTL_COPR_WCODE 0x40144305  
1027 -#define TARGET_SNDCTL_COPR_WDATA 0x40144304  
1028 -#define TARGET_SNDCTL_DSP_CHANNELS 0xc0045006  
1029 -#define TARGET_SNDCTL_DSP_GETBLKSIZE 0xc0045004  
1030 -#define TARGET_SNDCTL_DSP_GETCAPS 0x8004500f  
1031 -#define TARGET_SNDCTL_DSP_GETFMTS 0x8004500b  
1032 -#define TARGET_SNDCTL_DSP_GETIPTR 0x800c5011  
1033 -#define TARGET_SNDCTL_DSP_GETISPACE 0x8010500d  
1034 -#define TARGET_SNDCTL_DSP_GETOPTR 0x800c5012  
1035 -#define TARGET_SNDCTL_DSP_GETOSPACE 0x8010500c  
1036 -#define TARGET_SNDCTL_DSP_GETTRIGGER 0x80045010  
1037 -#define TARGET_SNDCTL_DSP_MAPINBUF 0x80085013  
1038 -#define TARGET_SNDCTL_DSP_MAPOUTBUF 0x80085014  
1039 -#define TARGET_SNDCTL_DSP_NONBLOCK 0x0000500e  
1040 -#define TARGET_SNDCTL_DSP_POST 0x00005008  
1041 -#define TARGET_SNDCTL_DSP_RESET 0x00005000  
1042 -#define TARGET_SNDCTL_DSP_SAMPLESIZE 0xc0045005  
1043 -#define TARGET_SNDCTL_DSP_SETDUPLEX 0x00005016  
1044 -#define TARGET_SNDCTL_DSP_SETFMT 0xc0045005  
1045 -#define TARGET_SNDCTL_DSP_SETFRAGMENT 0xc004500a  
1046 -#define TARGET_SNDCTL_DSP_SETSYNCRO 0x00005015  
1047 -#define TARGET_SNDCTL_DSP_SETTRIGGER 0x40045010  
1048 -#define TARGET_SNDCTL_DSP_SPEED 0xc0045002  
1049 -#define TARGET_SNDCTL_DSP_STEREO 0xc0045003  
1050 -#define TARGET_SNDCTL_DSP_SUBDIVIDE 0xc0045009  
1051 -#define TARGET_SNDCTL_DSP_SYNC 0x00005001  
1052 -#define TARGET_SNDCTL_FM_4OP_ENABLE 0x4004510f  
1053 -#define TARGET_SNDCTL_FM_LOAD_INSTR 0x40285107  
1054 -#define TARGET_SNDCTL_MIDI_INFO 0xc074510c  
1055 -#define TARGET_SNDCTL_MIDI_MPUCMD 0xc0216d02  
1056 -#define TARGET_SNDCTL_MIDI_MPUMODE 0xc0046d01  
1057 -#define TARGET_SNDCTL_MIDI_PRETIME 0xc0046d00  
1058 -#define TARGET_SNDCTL_PMGR_ACCESS 0xcfb85110  
1059 -#define TARGET_SNDCTL_PMGR_IFACE 0xcfb85001  
1060 -#define TARGET_SNDCTL_SEQ_CTRLRATE 0xc0045103  
1061 -#define TARGET_SNDCTL_SEQ_GETINCOUNT 0x80045105  
1062 -#define TARGET_SNDCTL_SEQ_GETOUTCOUNT 0x80045104  
1063 -#define TARGET_SNDCTL_SEQ_NRMIDIS 0x8004510b  
1064 -#define TARGET_SNDCTL_SEQ_NRSYNTHS 0x8004510a  
1065 -#define TARGET_SNDCTL_SEQ_OUTOFBAND 0x40085112  
1066 -#define TARGET_SNDCTL_SEQ_PANIC 0x00005111  
1067 -#define TARGET_SNDCTL_SEQ_PERCMODE 0x40045106  
1068 -#define TARGET_SNDCTL_SEQ_RESET 0x00005100  
1069 -#define TARGET_SNDCTL_SEQ_RESETSAMPLES 0x40045109  
1070 -#define TARGET_SNDCTL_SEQ_SYNC 0x00005101  
1071 -#define TARGET_SNDCTL_SEQ_TESTMIDI 0x40045108  
1072 -#define TARGET_SNDCTL_SEQ_THRESHOLD 0x4004510d  
1073 -#define TARGET_SNDCTL_SEQ_TRESHOLD 0x4004510d  
1074 -#define TARGET_SNDCTL_SYNTH_INFO 0xc08c5102  
1075 -#define TARGET_SNDCTL_SYNTH_MEMAVL 0xc004510e  
1076 -#define TARGET_SNDCTL_TMR_CONTINUE 0x00005404  
1077 -#define TARGET_SNDCTL_TMR_METRONOME 0x40045407  
1078 -#define TARGET_SNDCTL_TMR_SELECT 0x40045408  
1079 -#define TARGET_SNDCTL_TMR_SOURCE 0xc0045406  
1080 -#define TARGET_SNDCTL_TMR_START 0x00005402  
1081 -#define TARGET_SNDCTL_TMR_STOP 0x00005403  
1082 -#define TARGET_SNDCTL_TMR_TEMPO 0xc0045405  
1083 -#define TARGET_SNDCTL_TMR_TIMEBASE 0xc0045401  
1084 -#define TARGET_SOUND_PCM_WRITE_FILTER 0xc0045007  
1085 -#define TARGET_SOUND_PCM_READ_RATE 0x80045002  
1086 -#define TARGET_SOUND_PCM_READ_CHANNELS 0x80045006  
1087 -#define TARGET_SOUND_PCM_READ_BITS 0x80045005  
1088 -#define TARGET_SOUND_PCM_READ_FILTER 0x80045007  
1089 -#define TARGET_SOUND_MIXER_INFO 0x80304d65  
1090 -#define TARGET_SOUND_MIXER_ACCESS 0xc0804d66  
1091 -#define TARGET_SOUND_MIXER_PRIVATE1 0xc0044d6f  
1092 -#define TARGET_SOUND_MIXER_PRIVATE2 0xc0044d70  
1093 -#define TARGET_SOUND_MIXER_PRIVATE3 0xc0044d71  
1094 -#define TARGET_SOUND_MIXER_PRIVATE4 0xc0044d72  
1095 -#define TARGET_SOUND_MIXER_PRIVATE5 0xc0044d73  
1096 -#define TARGET_SOUND_MIXER_READ_VOLUME 0x80044d00  
1097 -#define TARGET_SOUND_MIXER_READ_BASS 0x80044d01  
1098 -#define TARGET_SOUND_MIXER_READ_TREBLE 0x80044d02  
1099 -#define TARGET_SOUND_MIXER_READ_SYNTH 0x80044d03  
1100 -#define TARGET_SOUND_MIXER_READ_PCM 0x80044d04  
1101 -#define TARGET_SOUND_MIXER_READ_SPEAKER 0x80044d05  
1102 -#define TARGET_SOUND_MIXER_READ_LINE 0x80044d06  
1103 -#define TARGET_SOUND_MIXER_READ_MIC 0x80044d07  
1104 -#define TARGET_SOUND_MIXER_READ_CD 0x80044d08  
1105 -#define TARGET_SOUND_MIXER_READ_IMIX 0x80044d09  
1106 -#define TARGET_SOUND_MIXER_READ_ALTPCM 0x80044d0a  
1107 -#define TARGET_SOUND_MIXER_READ_RECLEV 0x80044d0b  
1108 -#define TARGET_SOUND_MIXER_READ_IGAIN 0x80044d0c  
1109 -#define TARGET_SOUND_MIXER_READ_OGAIN 0x80044d0d  
1110 -#define TARGET_SOUND_MIXER_READ_LINE1 0x80044d0e  
1111 -#define TARGET_SOUND_MIXER_READ_LINE2 0x80044d0f  
1112 -#define TARGET_SOUND_MIXER_READ_LINE3 0x80044d10  
1113 -#define TARGET_SOUND_MIXER_READ_MUTE 0x80044d1f  
1114 -#define TARGET_SOUND_MIXER_READ_ENHANCE 0x80044d1f  
1115 -#define TARGET_SOUND_MIXER_READ_LOUD 0x80044d1f  
1116 -#define TARGET_SOUND_MIXER_READ_RECSRC 0x80044dff  
1117 -#define TARGET_SOUND_MIXER_READ_DEVMASK 0x80044dfe  
1118 -#define TARGET_SOUND_MIXER_READ_RECMASK 0x80044dfd  
1119 -#define TARGET_SOUND_MIXER_READ_STEREODEVS 0x80044dfb  
1120 -#define TARGET_SOUND_MIXER_READ_CAPS 0x80044dfc  
1121 -#define TARGET_SOUND_MIXER_WRITE_VOLUME 0xc0044d00  
1122 -#define TARGET_SOUND_MIXER_WRITE_BASS 0xc0044d01  
1123 -#define TARGET_SOUND_MIXER_WRITE_TREBLE 0xc0044d02  
1124 -#define TARGET_SOUND_MIXER_WRITE_SYNTH 0xc0044d03  
1125 -#define TARGET_SOUND_MIXER_WRITE_PCM 0xc0044d04  
1126 -#define TARGET_SOUND_MIXER_WRITE_SPEAKER 0xc0044d05  
1127 -#define TARGET_SOUND_MIXER_WRITE_LINE 0xc0044d06  
1128 -#define TARGET_SOUND_MIXER_WRITE_MIC 0xc0044d07  
1129 -#define TARGET_SOUND_MIXER_WRITE_CD 0xc0044d08  
1130 -#define TARGET_SOUND_MIXER_WRITE_IMIX 0xc0044d09  
1131 -#define TARGET_SOUND_MIXER_WRITE_ALTPCM 0xc0044d0a  
1132 -#define TARGET_SOUND_MIXER_WRITE_RECLEV 0xc0044d0b  
1133 -#define TARGET_SOUND_MIXER_WRITE_IGAIN 0xc0044d0c  
1134 -#define TARGET_SOUND_MIXER_WRITE_OGAIN 0xc0044d0d  
1135 -#define TARGET_SOUND_MIXER_WRITE_LINE1 0xc0044d0e  
1136 -#define TARGET_SOUND_MIXER_WRITE_LINE2 0xc0044d0f  
1137 -#define TARGET_SOUND_MIXER_WRITE_LINE3 0xc0044d10  
1138 -#define TARGET_SOUND_MIXER_WRITE_MUTE 0xc0044d1f  
1139 -#define TARGET_SOUND_MIXER_WRITE_ENHANCE 0xc0044d1f  
1140 -#define TARGET_SOUND_MIXER_WRITE_LOUD 0xc0044d1f  
1141 -#define TARGET_SOUND_MIXER_WRITE_RECSRC 0xc0044dff  
1142 -  
1143 -#define TARGET_VFAT_IOCTL_READDIR_BOTH 0x82187201  
1144 -#define TARGET_VFAT_IOCTL_READDIR_SHORT 0x82187202  
1145 -  
1146 -#define TARGET_SIOCATMARK 0x8905