qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH] CRIS linux-user/cris (new)


From: Edgar E. Iglesias
Subject: [Qemu-devel] [PATCH] CRIS linux-user/cris (new)
Date: Tue, 2 Oct 2007 23:18:05 +0200
User-agent: Mutt/1.5.16 (2007-06-09)

This adds CRIS user emulation support, new cris subdir.

-- 
Edgar E. Iglesias
Axis Communications AB

 linux-user/cris/syscall.h       |   37 +++++
 linux-user/cris/syscall_nr.h    |  291 +++++++++++++++++++++++++++++++++++++++
 linux-user/cris/target_signal.h |   29 ++++
 linux-user/cris/termbits.h      |  214 ++++++++++++++++++++++++++++
 4 files changed, 571 insertions(+), 0 deletions(-)

diff --git a/linux-user/cris/syscall.h b/linux-user/cris/syscall.h
new file mode 100644
index 0000000..8fa7474
--- /dev/null
+++ b/linux-user/cris/syscall.h
@@ -0,0 +1,37 @@
+
+#define UNAME_MACHINE "cris"
+
+/* pt_regs not only specifices the format in the user-struct during
+ * ptrace but is also the frame format used in the kernel prologue/epilogues
+ * themselves
+ */
+
+struct target_pt_regs {
+        unsigned long orig_r10;
+        /* pushed by movem r13, [sp] in SAVE_ALL. */
+        unsigned long r0;
+        unsigned long r1;
+        unsigned long r2;
+        unsigned long r3;
+        unsigned long r4;
+        unsigned long r5;
+        unsigned long r6;
+        unsigned long r7;
+        unsigned long r8;
+        unsigned long r9;
+        unsigned long r10;
+        unsigned long r11;
+        unsigned long r12;
+        unsigned long r13;
+        unsigned long acr;
+        unsigned long srs;
+        unsigned long mof;
+        unsigned long spc;
+        unsigned long ccs;
+        unsigned long srp;
+        unsigned long erp; /* This is actually the debugged process' PC */
+        /* For debugging purposes; saved only when needed. */
+        unsigned long exs;
+        unsigned long eda;
+};
+
diff --git a/linux-user/cris/syscall_nr.h b/linux-user/cris/syscall_nr.h
new file mode 100644
index 0000000..108a2ed
--- /dev/null
+++ b/linux-user/cris/syscall_nr.h
@@ -0,0 +1,291 @@
+/*
+ * This file contains the system call numbers, and stub macros for libc.
+ */
+
+#define TARGET_NR_restart_syscall      0
+#define TARGET_NR_exit           1
+#define TARGET_NR_fork           2
+#define TARGET_NR_read           3
+#define TARGET_NR_write                  4
+#define TARGET_NR_open           5
+#define TARGET_NR_close                  6
+#define TARGET_NR_waitpid                7
+#define TARGET_NR_creat                  8
+#define TARGET_NR_link           9
+#define TARGET_NR_unlink                10
+#define TARGET_NR_execve                11
+#define TARGET_NR_chdir                 12
+#define TARGET_NR_time          13
+#define TARGET_NR_mknod                 14
+#define TARGET_NR_chmod                 15
+#define TARGET_NR_lchown                16
+#define TARGET_NR_break                 17
+#define TARGET_NR_oldstat               18
+#define TARGET_NR_lseek                 19
+#define TARGET_NR_getpid                20
+#define TARGET_NR_mount                 21
+#define TARGET_NR_umount                22
+#define TARGET_NR_setuid                23
+#define TARGET_NR_getuid                24
+#define TARGET_NR_stime                 25
+#define TARGET_NR_ptrace                26
+#define TARGET_NR_alarm                 27
+#define TARGET_NR_oldfstat              28
+#define TARGET_NR_pause                 29
+#define TARGET_NR_utime                 30
+#define TARGET_NR_stty          31
+#define TARGET_NR_gtty          32
+#define TARGET_NR_access                33
+#define TARGET_NR_nice          34
+#define TARGET_NR_ftime                 35
+#define TARGET_NR_sync          36
+#define TARGET_NR_kill          37
+#define TARGET_NR_rename                38
+#define TARGET_NR_mkdir                 39
+#define TARGET_NR_rmdir                 40
+#define TARGET_NR_dup           41
+#define TARGET_NR_pipe          42
+#define TARGET_NR_times                 43
+#define TARGET_NR_prof          44
+#define TARGET_NR_brk           45
+#define TARGET_NR_setgid                46
+#define TARGET_NR_getgid                47
+#define TARGET_NR_signal                48
+#define TARGET_NR_geteuid               49
+#define TARGET_NR_getegid               50
+#define TARGET_NR_acct          51
+#define TARGET_NR_umount2               52
+#define TARGET_NR_lock          53
+#define TARGET_NR_ioctl                 54
+#define TARGET_NR_fcntl                 55
+#define TARGET_NR_mpx           56
+#define TARGET_NR_setpgid               57
+#define TARGET_NR_ulimit                58
+#define TARGET_NR_oldolduname   59
+#define TARGET_NR_umask                 60
+#define TARGET_NR_chroot                61
+#define TARGET_NR_ustat                 62
+#define TARGET_NR_dup2          63
+#define TARGET_NR_getppid               64
+#define TARGET_NR_getpgrp               65
+#define TARGET_NR_setsid                66
+#define TARGET_NR_sigaction             67
+#define TARGET_NR_sgetmask              68
+#define TARGET_NR_ssetmask              69
+#define TARGET_NR_setreuid              70
+#define TARGET_NR_setregid              71
+#define TARGET_NR_sigsuspend            72
+#define TARGET_NR_sigpending            73
+#define TARGET_NR_sethostname   74
+#define TARGET_NR_setrlimit             75
+#define TARGET_NR_getrlimit             76
+#define TARGET_NR_getrusage             77
+#define TARGET_NR_gettimeofday  78
+#define TARGET_NR_settimeofday  79
+#define TARGET_NR_getgroups             80
+#define TARGET_NR_setgroups             81
+#define TARGET_NR_select                82
+#define TARGET_NR_symlink               83
+#define TARGET_NR_oldlstat              84
+#define TARGET_NR_readlink              85
+#define TARGET_NR_uselib                86
+#define TARGET_NR_swapon                87
+#define TARGET_NR_reboot                88
+#define TARGET_NR_readdir               89
+#define TARGET_NR_mmap          90
+#define TARGET_NR_munmap                91
+#define TARGET_NR_truncate              92
+#define TARGET_NR_ftruncate             93
+#define TARGET_NR_fchmod                94
+#define TARGET_NR_fchown                95
+#define TARGET_NR_getpriority   96
+#define TARGET_NR_setpriority   97
+#define TARGET_NR_profil                98
+#define TARGET_NR_statfs                99
+#define TARGET_NR_fstatfs              100
+#define TARGET_NR_ioperm               101
+#define TARGET_NR_socketcall           102
+#define TARGET_NR_syslog               103
+#define TARGET_NR_setitimer            104
+#define TARGET_NR_getitimer            105
+#define TARGET_NR_stat         106
+#define TARGET_NR_lstat                107
+#define TARGET_NR_fstat                108
+#define TARGET_NR_olduname             109
+#define TARGET_NR_iopl         110
+#define TARGET_NR_vhangup              111
+#define TARGET_NR_idle         112
+#define TARGET_NR_vm86         113
+#define TARGET_NR_wait4                114
+#define TARGET_NR_swapoff              115
+#define TARGET_NR_sysinfo              116
+#define TARGET_NR_ipc          117
+#define TARGET_NR_fsync                118
+#define TARGET_NR_sigreturn            119
+#define TARGET_NR_clone                120
+#define TARGET_NR_setdomainname        121
+#define TARGET_NR_uname                122
+#define TARGET_NR_modify_ldt           123
+#define TARGET_NR_adjtimex             124
+#define TARGET_NR_mprotect             125
+#define TARGET_NR_sigprocmask  126
+#define TARGET_NR_create_module        127
+#define TARGET_NR_init_module  128
+#define TARGET_NR_delete_module        129
+#define TARGET_NR_get_kernel_syms      130
+#define TARGET_NR_quotactl             131
+#define TARGET_NR_getpgid              132
+#define TARGET_NR_fchdir               133
+#define TARGET_NR_bdflush              134
+#define TARGET_NR_sysfs                135
+#define TARGET_NR_personality  136
+#define TARGET_NR_afs_syscall  137 /* Syscall for Andrew File System */
+#define TARGET_NR_setfsuid             138
+#define TARGET_NR_setfsgid             139
+#define TARGET_NR__llseek              140
+#define TARGET_NR_getdents             141
+#define TARGET_NR__newselect           142
+#define TARGET_NR_flock                143
+#define TARGET_NR_msync                144
+#define TARGET_NR_readv                145
+#define TARGET_NR_writev               146
+#define TARGET_NR_getsid               147
+#define TARGET_NR_fdatasync            148
+#define TARGET_NR__sysctl              149
+#define TARGET_NR_mlock                150
+#define TARGET_NR_munlock              151
+#define TARGET_NR_mlockall             152
+#define TARGET_NR_munlockall           153
+#define TARGET_NR_sched_setparam               154
+#define TARGET_NR_sched_getparam               155
+#define TARGET_NR_sched_setscheduler           156
+#define TARGET_NR_sched_getscheduler           157
+#define TARGET_NR_sched_yield          158
+#define TARGET_NR_sched_get_priority_max       159
+#define TARGET_NR_sched_get_priority_min       160
+#define TARGET_NR_sched_rr_get_interval        161
+#define TARGET_NR_nanosleep            162
+#define TARGET_NR_mremap               163
+#define TARGET_NR_setresuid            164
+#define TARGET_NR_getresuid            165
+
+#define TARGET_NR_query_module 167
+#define TARGET_NR_poll         168
+#define TARGET_NR_nfsservctl           169
+#define TARGET_NR_setresgid            170
+#define TARGET_NR_getresgid            171
+#define TARGET_NR_prctl              172
+#define TARGET_NR_rt_sigreturn 173
+#define TARGET_NR_rt_sigaction 174
+#define TARGET_NR_rt_sigprocmask       175
+#define TARGET_NR_rt_sigpending        176
+#define TARGET_NR_rt_sigtimedwait      177
+#define TARGET_NR_rt_sigqueueinfo      178
+#define TARGET_NR_rt_sigsuspend        179
+#define TARGET_NR_pread64              180
+#define TARGET_NR_pwrite64             181
+#define TARGET_NR_chown                182
+#define TARGET_NR_getcwd               183
+#define TARGET_NR_capget               184
+#define TARGET_NR_capset               185
+#define TARGET_NR_sigaltstack  186
+#define TARGET_NR_sendfile             187
+#define TARGET_NR_getpmsg              188     /* some people actually want 
streams */
+#define TARGET_NR_putpmsg              189     /* some people actually want 
streams */
+#define TARGET_NR_vfork                190
+#define TARGET_NR_ugetrlimit           191     /* SuS compliant getrlimit */
+#define TARGET_NR_mmap2                192
+#define TARGET_NR_truncate64           193
+#define TARGET_NR_ftruncate64  194
+#define TARGET_NR_stat64               195
+#define TARGET_NR_lstat64              196
+#define TARGET_NR_fstat64              197
+#define TARGET_NR_lchown32             198
+#define TARGET_NR_getuid32             199
+#define TARGET_NR_getgid32             200
+#define TARGET_NR_geteuid32            201
+#define TARGET_NR_getegid32            202
+#define TARGET_NR_setreuid32           203
+#define TARGET_NR_setregid32           204
+#define TARGET_NR_getgroups32  205
+#define TARGET_NR_setgroups32  206
+#define TARGET_NR_fchown32             207
+#define TARGET_NR_setresuid32  208
+#define TARGET_NR_getresuid32  209
+#define TARGET_NR_setresgid32  210
+#define TARGET_NR_getresgid32  211
+#define TARGET_NR_chown32              212
+#define TARGET_NR_setuid32             213
+#define TARGET_NR_setgid32             214
+#define TARGET_NR_setfsuid32           215
+#define TARGET_NR_setfsgid32           216
+#define TARGET_NR_pivot_root           217
+#define TARGET_NR_mincore              218
+#define TARGET_NR_madvise              219
+#define TARGET_NR_getdents64           220
+#define TARGET_NR_fcntl64              221
+/* 223 is unused */
+#define TARGET_NR_gettid             224
+#define TARGET_NR_readahead          225
+#define TARGET_NR_setxattr             226
+#define TARGET_NR_lsetxattr            227
+#define TARGET_NR_fsetxattr            228
+#define TARGET_NR_getxattr             229
+#define TARGET_NR_lgetxattr            230
+#define TARGET_NR_fgetxattr            231
+#define TARGET_NR_listxattr            232
+#define TARGET_NR_llistxattr           233
+#define TARGET_NR_flistxattr           234
+#define TARGET_NR_removexattr  235
+#define TARGET_NR_lremovexattr 236
+#define TARGET_NR_fremovexattr 237
+#define TARGET_NR_tkill                238
+#define TARGET_NR_sendfile64           239
+#define TARGET_NR_futex                240
+#define TARGET_NR_sched_setaffinity    241
+#define TARGET_NR_sched_getaffinity    242
+#define TARGET_NR_set_thread_area      243
+#define TARGET_NR_get_thread_area      244
+#define TARGET_NR_io_setup             245
+#define TARGET_NR_io_destroy           246
+#define TARGET_NR_io_getevents 247
+#define TARGET_NR_io_submit            248
+#define TARGET_NR_io_cancel            249
+#define TARGET_NR_fadvise64            250
+#define TARGET_NR_exit_group           252
+#define TARGET_NR_lookup_dcookie       253
+#define TARGET_NR_epoll_create 254
+#define TARGET_NR_epoll_ctl            255
+#define TARGET_NR_epoll_wait           256
+#define TARGET_NR_remap_file_pages     257
+#define TARGET_NR_set_tid_address      258
+#define TARGET_NR_timer_create 259
+#define TARGET_NR_timer_settime        (TARGET_NR_timer_create+1)
+#define TARGET_NR_timer_gettime        (TARGET_NR_timer_create+2)
+#define TARGET_NR_timer_getoverrun     (TARGET_NR_timer_create+3)
+#define TARGET_NR_timer_delete (TARGET_NR_timer_create+4)
+#define TARGET_NR_clock_settime        (TARGET_NR_timer_create+5)
+#define TARGET_NR_clock_gettime        (TARGET_NR_timer_create+6)
+#define TARGET_NR_clock_getres (TARGET_NR_timer_create+7)
+#define TARGET_NR_clock_nanosleep      (TARGET_NR_timer_create+8)
+#define TARGET_NR_statfs64             268
+#define TARGET_NR_fstatfs64            269
+#define TARGET_NR_tgkill               270
+#define TARGET_NR_utimes               271
+#define TARGET_NR_fadvise64_64 272
+#define TARGET_NR_vserver              273
+#define TARGET_NR_mbind                274
+#define TARGET_NR_get_mempolicy        275
+#define TARGET_NR_set_mempolicy        276
+#define TARGET_NR_mq_open              277
+#define TARGET_NR_mq_unlink            (TARGET_NR_mq_open+1)
+#define TARGET_NR_mq_timedsend (TARGET_NR_mq_open+2)
+#define TARGET_NR_mq_timedreceive      (TARGET_NR_mq_open+3)
+#define TARGET_NR_mq_notify            (TARGET_NR_mq_open+4)
+#define TARGET_NR_mq_getsetattr        (TARGET_NR_mq_open+5)
+#define TARGET_NR_kexec_load           283
+#define TARGET_NR_waitid               284
+/* #define TARGET_NR_sys_setaltroot    285 */
+#define TARGET_NR_add_key              286
+#define TARGET_NR_request_key  287
+#define TARGET_NR_keyctl               288
diff --git a/linux-user/cris/target_signal.h b/linux-user/cris/target_signal.h
new file mode 100644
index 0000000..e566de8
--- /dev/null
+++ b/linux-user/cris/target_signal.h
@@ -0,0 +1,29 @@
+#ifndef TARGET_SIGNAL_H
+#define TARGET_SIGNAL_H
+
+#include "cpu.h"
+
+/* this struct defines a stack used during syscall handling */
+
+typedef struct target_sigaltstack {
+       target_ulong ss_sp;
+       target_ulong ss_size;
+       target_long ss_flags;
+} target_stack_t;
+
+
+/*
+ * sigaltstack controls
+ */
+#define TARGET_SS_ONSTACK     1
+#define TARGET_SS_DISABLE     2
+
+#define TARGET_MINSIGSTKSZ    2048
+#define TARGET_SIGSTKSZ       8192
+
+static inline target_ulong get_sp_from_cpustate(CPUCRISState *state)
+{
+    return state->regs[14];
+}
+
+#endif /* TARGET_SIGNAL_H */
diff --git a/linux-user/cris/termbits.h b/linux-user/cris/termbits.h
new file mode 100644
index 0000000..adff802
--- /dev/null
+++ b/linux-user/cris/termbits.h
@@ -0,0 +1,214 @@
+/* from asm/termbits.h */
+
+#define TARGET_NCCS 19
+
+struct target_termios {
+    unsigned int c_iflag;               /* input mode flags */
+    unsigned int c_oflag;               /* output mode flags */
+    unsigned int c_cflag;               /* control mode flags */
+    unsigned int c_lflag;               /* local mode flags */
+    unsigned char c_line;                    /* line discipline */
+    unsigned char c_cc[TARGET_NCCS];                /* control characters */
+};
+
+/* c_iflag bits */
+#define TARGET_IGNBRK  0000001
+#define TARGET_BRKINT  0000002
+#define TARGET_IGNPAR  0000004
+#define TARGET_PARMRK  0000010
+#define TARGET_INPCK   0000020
+#define TARGET_ISTRIP  0000040
+#define TARGET_INLCR   0000100
+#define TARGET_IGNCR   0000200
+#define TARGET_ICRNL   0000400
+#define TARGET_IUCLC   0001000
+#define TARGET_IXON    0002000
+#define TARGET_IXANY   0004000
+#define TARGET_IXOFF   0010000
+#define TARGET_IMAXBEL 0020000
+
+/* c_oflag bits */
+#define TARGET_OPOST   0000001
+#define TARGET_OLCUC   0000002
+#define TARGET_ONLCR   0000004
+#define TARGET_OCRNL   0000010
+#define TARGET_ONOCR   0000020
+#define TARGET_ONLRET  0000040
+#define TARGET_OFILL   0000100
+#define TARGET_OFDEL   0000200
+#define TARGET_NLDLY   0000400
+#define   TARGET_NL0   0000000
+#define   TARGET_NL1   0000400
+#define TARGET_CRDLY   0003000
+#define   TARGET_CR0   0000000
+#define   TARGET_CR1   0001000
+#define   TARGET_CR2   0002000
+#define   TARGET_CR3   0003000
+#define TARGET_TABDLY  0014000
+#define   TARGET_TAB0  0000000
+#define   TARGET_TAB1  0004000
+#define   TARGET_TAB2  0010000
+#define   TARGET_TAB3  0014000
+#define   TARGET_XTABS 0014000
+#define TARGET_BSDLY   0020000
+#define   TARGET_BS0   0000000
+#define   TARGET_BS1   0020000
+#define TARGET_VTDLY   0040000
+#define   TARGET_VT0   0000000
+#define   TARGET_VT1   0040000
+#define TARGET_FFDLY   0100000
+#define   TARGET_FF0   0000000
+#define   TARGET_FF1   0100000
+
+/* c_cflag bit meaning */
+#define TARGET_CBAUD   0010017
+#define  TARGET_B0     0000000         /* hang up */
+#define  TARGET_B50    0000001
+#define  TARGET_B75    0000002
+#define  TARGET_B110   0000003
+#define  TARGET_B134   0000004
+#define  TARGET_B150   0000005
+#define  TARGET_B200   0000006
+#define  TARGET_B300   0000007
+#define  TARGET_B600   0000010
+#define  TARGET_B1200  0000011
+#define  TARGET_B1800  0000012
+#define  TARGET_B2400  0000013
+#define  TARGET_B4800  0000014
+#define  TARGET_B9600  0000015
+#define  TARGET_B19200 0000016
+#define  TARGET_B38400 0000017
+#define TARGET_EXTA B19200
+#define TARGET_EXTB B38400
+#define TARGET_CSIZE   0000060
+#define   TARGET_CS5   0000000
+#define   TARGET_CS6   0000020
+#define   TARGET_CS7   0000040
+#define   TARGET_CS8   0000060
+#define TARGET_CSTOPB  0000100
+#define TARGET_CREAD   0000200
+#define TARGET_PARENB  0000400
+#define TARGET_PARODD  0001000
+#define TARGET_HUPCL   0002000
+#define TARGET_CLOCAL  0004000
+#define TARGET_CBAUDEX 0010000
+#define  TARGET_B57600  0010001
+#define  TARGET_B115200 0010002
+#define  TARGET_B230400 0010003
+#define  TARGET_B460800 0010004
+#define TARGET_CIBAUD    002003600000  /* input baud rate (not used) */
+#define TARGET_CRTSCTS   020000000000          /* flow control */
+
+/* c_lflag bits */
+#define TARGET_ISIG    0000001
+#define TARGET_ICANON  0000002
+#define TARGET_XCASE   0000004
+#define TARGET_ECHO    0000010
+#define TARGET_ECHOE   0000020
+#define TARGET_ECHOK   0000040
+#define TARGET_ECHONL  0000100
+#define TARGET_NOFLSH  0000200
+#define TARGET_TOSTOP  0000400
+#define TARGET_ECHOCTL 0001000
+#define TARGET_ECHOPRT 0002000
+#define TARGET_ECHOKE  0004000
+#define TARGET_FLUSHO  0010000
+#define TARGET_PENDIN  0040000
+#define TARGET_IEXTEN  0100000
+
+/* c_cc character offsets */
+#define TARGET_VINTR   0
+#define TARGET_VQUIT   1
+#define TARGET_VERASE  2
+#define TARGET_VKILL   3
+#define TARGET_VEOF    4
+#define TARGET_VTIME   5
+#define TARGET_VMIN    6
+#define TARGET_VSWTC   7
+#define TARGET_VSTART  8
+#define TARGET_VSTOP   9
+#define TARGET_VSUSP   10
+#define TARGET_VEOL    11
+#define TARGET_VREPRINT        12
+#define TARGET_VDISCARD        13
+#define TARGET_VWERASE 14
+#define TARGET_VLNEXT  15
+#define TARGET_VEOL2   16
+
+/* ioctls */
+
+#define TARGET_TCGETS          0x5401
+#define TARGET_TCSETS          0x5402
+#define TARGET_TCSETSW         0x5403
+#define TARGET_TCSETSF         0x5404
+#define TARGET_TCGETA          0x5405
+#define TARGET_TCSETA          0x5406
+#define TARGET_TCSETAW         0x5407
+#define TARGET_TCSETAF         0x5408
+#define TARGET_TCSBRK          0x5409
+#define TARGET_TCXONC          0x540A
+#define TARGET_TCFLSH          0x540B
+
+#define TARGET_TIOCEXCL        0x540C
+#define TARGET_TIOCNXCL        0x540D
+#define TARGET_TIOCSCTTY       0x540E
+#define TARGET_TIOCGPGRP       0x540F
+#define TARGET_TIOCSPGRP       0x5410
+#define TARGET_TIOCOUTQ        0x5411
+#define TARGET_TIOCSTI         0x5412
+#define TARGET_TIOCGWINSZ      0x5413
+#define TARGET_TIOCSWINSZ      0x5414
+#define TARGET_TIOCMGET        0x5415
+#define TARGET_TIOCMBIS        0x5416
+#define TARGET_TIOCMBIC        0x5417
+#define TARGET_TIOCMSET        0x5418
+#define TARGET_TIOCGSOFTCAR    0x5419
+#define TARGET_TIOCSSOFTCAR    0x541A
+#define TARGET_FIONREAD        0x541B
+#define TARGET_TIOCINQ         TARGET_FIONREAD
+#define TARGET_TIOCLINUX       0x541C
+#define TARGET_TIOCCONS        0x541D
+#define TARGET_TIOCGSERIAL     0x541E
+#define TARGET_TIOCSSERIAL     0x541F
+#define TARGET_TIOCPKT         0x5420
+#define TARGET_FIONBIO         0x5421
+#define TARGET_TIOCNOTTY       0x5422
+#define TARGET_TIOCSETD        0x5423
+#define TARGET_TIOCGETD        0x5424
+#define TARGET_TCSBRKP         0x5425  /* Needed for POSIX tcsendbreak() */
+#define TARGET_TIOCTTYGSTRUCT  0x5426  /* For debugging only */
+#define TARGET_TIOCSBRK        0x5427  /* BSD compatibility */
+#define TARGET_TIOCCBRK        0x5428  /* BSD compatibility */
+#define TARGET_TIOCGSID        0x5429  /* Return the session ID of FD */
+#define TARGET_TIOCGPTN        TARGET_IOR('T',0x30, unsigned int) /* Get Pty 
Number (of pty-mux device) */
+#define TARGET_TIOCSPTLCK      TARGET_IOW('T',0x31, int)  /* Lock/unlock Pty */
+
+#define TARGET_FIONCLEX        0x5450  /* these numbers need to be adjusted. */
+#define TARGET_FIOCLEX         0x5451
+#define TARGET_FIOASYNC        0x5452
+#define TARGET_TIOCSERCONFIG   0x5453
+#define TARGET_TIOCSERGWILD    0x5454
+#define TARGET_TIOCSERSWILD    0x5455
+#define TARGET_TIOCGLCKTRMIOS  0x5456
+#define TARGET_TIOCSLCKTRMIOS  0x5457
+#define TARGET_TIOCSERGSTRUCT  0x5458 /* For debugging only */
+#define TARGET_TIOCSERGETLSR   0x5459 /* Get line status register */
+#define TARGET_TIOCSERGETMULTI 0x545A /* Get multiport config  */
+#define TARGET_TIOCSERSETMULTI 0x545B /* Set multiport config */
+
+#define TARGET_TIOCMIWAIT      0x545C  /* wait for a change on serial input 
line(s) */
+#define TARGET_TIOCGICOUNT     0x545D  /* read serial port inline interrupt 
counts */
+#define TARGET_TIOCGHAYESESP   0x545E  /* Get Hayes ESP configuration */
+#define TARGET_TIOCSHAYESESP   0x545F  /* Set Hayes ESP configuration */
+
+/* Used for packet mode */
+#define TARGET_TIOCPKT_DATA             0
+#define TARGET_TIOCPKT_FLUSHREAD        1
+#define TARGET_TIOCPKT_FLUSHWRITE       2
+#define TARGET_TIOCPKT_STOP             4
+#define TARGET_TIOCPKT_START            8
+#define TARGET_TIOCPKT_NOSTOP          16
+#define TARGET_TIOCPKT_DOSTOP          32
+
+#define TARGET_TIOCSER_TEMT    0x01    /* Transmitter physically empty */
+




reply via email to

[Prev in Thread] Current Thread [Next in Thread]