Statistics
| Branch: | Revision:

root / linux-user / mipsn32 / syscall.h @ cb33da57

History | View | Annotate | Download (9.3 kB)

1 540635ba ths
2 540635ba ths
/* this struct defines the way the registers are stored on the
3 540635ba ths
   stack during a system call. */
4 540635ba ths
5 540635ba ths
struct target_pt_regs {
6 540635ba ths
        /* Saved main processor registers. */
7 540635ba ths
        target_ulong regs[32];
8 540635ba ths
9 540635ba ths
        /* Saved special registers. */
10 540635ba ths
        target_ulong cp0_status;
11 540635ba ths
        target_ulong lo;
12 540635ba ths
        target_ulong hi;
13 540635ba ths
        target_ulong cp0_badvaddr;
14 540635ba ths
        target_ulong cp0_cause;
15 540635ba ths
        target_ulong cp0_epc;
16 540635ba ths
};
17 540635ba ths
18 540635ba ths
/* Target errno definitions taken from asm-mips/errno.h */
19 540635ba ths
#undef TARGET_ENOMSG
20 540635ba ths
#define TARGET_ENOMSG          35      /* Identifier removed */
21 540635ba ths
#undef TARGET_EIDRM
22 540635ba ths
#define TARGET_EIDRM           36      /* Identifier removed */
23 540635ba ths
#undef TARGET_ECHRNG
24 540635ba ths
#define TARGET_ECHRNG          37      /* Channel number out of range */
25 540635ba ths
#undef TARGET_EL2NSYNC
26 540635ba ths
#define TARGET_EL2NSYNC        38      /* Level 2 not synchronized */
27 540635ba ths
#undef TARGET_EL3HLT
28 540635ba ths
#define TARGET_EL3HLT          39      /* Level 3 halted */
29 540635ba ths
#undef TARGET_EL3RST
30 540635ba ths
#define TARGET_EL3RST          40      /* Level 3 reset */
31 540635ba ths
#undef TARGET_ELNRNG
32 540635ba ths
#define TARGET_ELNRNG          41      /* Link number out of range */
33 540635ba ths
#undef TARGET_EUNATCH
34 540635ba ths
#define TARGET_EUNATCH         42      /* Protocol driver not attached */
35 540635ba ths
#undef TARGET_ENOCSI
36 540635ba ths
#define TARGET_ENOCSI          43      /* No CSI structure available */
37 540635ba ths
#undef TARGET_EL2HLT
38 540635ba ths
#define TARGET_EL2HLT          44      /* Level 2 halted */
39 540635ba ths
#undef TARGET_EDEADLK
40 540635ba ths
#define TARGET_EDEADLK         45      /* Resource deadlock would occur */
41 540635ba ths
#undef TARGET_ENOLCK
42 540635ba ths
#define TARGET_ENOLCK          46      /* No record locks available */
43 540635ba ths
#undef TARGET_EBADE
44 540635ba ths
#define TARGET_EBADE           50      /* Invalid exchange */
45 540635ba ths
#undef TARGET_EBADR
46 540635ba ths
#define TARGET_EBADR           51      /* Invalid request descriptor */
47 540635ba ths
#undef TARGET_EXFULL
48 540635ba ths
#define TARGET_EXFULL          52      /* TARGET_Exchange full */
49 540635ba ths
#undef TARGET_ENOANO
50 540635ba ths
#define TARGET_ENOANO          53      /* No anode */
51 540635ba ths
#undef TARGET_EBADRQC
52 540635ba ths
#define TARGET_EBADRQC         54      /* Invalid request code */
53 540635ba ths
#undef TARGET_EBADSLT
54 540635ba ths
#define TARGET_EBADSLT         55      /* Invalid slot */
55 540635ba ths
#undef TARGET_EDEADLOCK
56 540635ba ths
#define TARGET_EDEADLOCK       56      /* File locking deadlock error */
57 540635ba ths
#undef TARGET_EBFONT
58 540635ba ths
#define TARGET_EBFONT          59      /* Bad font file format */
59 540635ba ths
#undef TARGET_ENOSTR
60 540635ba ths
#define TARGET_ENOSTR          60      /* Device not a stream */
61 540635ba ths
#undef TARGET_ENODATA
62 540635ba ths
#define TARGET_ENODATA         61      /* No data available */
63 540635ba ths
#undef TARGET_ETIME
64 540635ba ths
#define TARGET_ETIME           62      /* Timer expired */
65 540635ba ths
#undef TARGET_ENOSR
66 540635ba ths
#define TARGET_ENOSR           63      /* Out of streams resources */
67 540635ba ths
#undef TARGET_ENONET
68 540635ba ths
#define TARGET_ENONET          64      /* Machine is not on the network */
69 540635ba ths
#undef TARGET_ENOPKG
70 540635ba ths
#define TARGET_ENOPKG          65      /* Package not installed */
71 540635ba ths
#undef TARGET_EREMOTE
72 540635ba ths
#define TARGET_EREMOTE         66      /* Object is remote */
73 540635ba ths
#undef TARGET_ENOLINK
74 540635ba ths
#define TARGET_ENOLINK         67      /* Link has been severed */
75 540635ba ths
#undef TARGET_EADV
76 540635ba ths
#define TARGET_EADV            68      /* Advertise error */
77 540635ba ths
#undef TARGET_ESRMNT
78 540635ba ths
#define TARGET_ESRMNT          69      /* Srmount error */
79 540635ba ths
#undef TARGET_ECOMM
80 540635ba ths
#define TARGET_ECOMM           70      /* Communication error on send */
81 540635ba ths
#undef TARGET_EPROTO
82 540635ba ths
#define TARGET_EPROTO          71      /* Protocol error */
83 540635ba ths
#undef TARGET_EDOTDOT
84 540635ba ths
#define TARGET_EDOTDOT         73      /* RFS specific error */
85 540635ba ths
#undef TARGET_EMULTIHOP
86 540635ba ths
#define TARGET_EMULTIHOP       74      /* Multihop attempted */
87 540635ba ths
#undef TARGET_EBADMSG
88 540635ba ths
#define TARGET_EBADMSG         77      /* Not a data message */
89 540635ba ths
#undef TARGET_ENAMETOOLONG
90 540635ba ths
#define TARGET_ENAMETOOLONG    78      /* File name too long */
91 540635ba ths
#undef TARGET_EOVERFLOW
92 540635ba ths
#define TARGET_EOVERFLOW       79      /* Value too large for defined data type */
93 540635ba ths
#undef TARGET_ENOTUNIQ
94 540635ba ths
#define TARGET_ENOTUNIQ        80      /* Name not unique on network */
95 540635ba ths
#undef TARGET_EBADFD
96 540635ba ths
#define TARGET_EBADFD          81      /* File descriptor in bad state */
97 540635ba ths
#undef TARGET_EREMCHG
98 540635ba ths
#define TARGET_EREMCHG         82      /* Remote address changed */
99 540635ba ths
#undef TARGET_ELIBACC
100 540635ba ths
#define TARGET_ELIBACC         83      /* Can not access a needed shared library */
101 540635ba ths
#undef TARGET_ELIBBAD
102 540635ba ths
#define TARGET_ELIBBAD         84      /* Accessing a corrupted shared library */
103 540635ba ths
#undef TARGET_ELIBSCN
104 540635ba ths
#define TARGET_ELIBSCN         85      /* .lib section in a.out corrupted */
105 540635ba ths
#undef TARGET_ELIBMAX
106 540635ba ths
#define TARGET_ELIBMAX         86      /* Attempting to link in too many shared libraries */
107 540635ba ths
#undef TARGET_ELIBEXEC
108 540635ba ths
#define TARGET_ELIBEXEC        87      /* Cannot exec a shared library directly */
109 540635ba ths
#undef TARGET_EILSEQ
110 540635ba ths
#define TARGET_EILSEQ          88      /* Illegal byte sequence */
111 540635ba ths
#undef TARGET_ENOSYS
112 540635ba ths
#define TARGET_ENOSYS          89      /* Function not implemented */
113 540635ba ths
#undef TARGET_ELOOP
114 540635ba ths
#define TARGET_ELOOP           90      /* Too many symbolic links encountered */
115 540635ba ths
#undef TARGET_ERESTART
116 540635ba ths
#define TARGET_ERESTART        91      /* Interrupted system call should be restarted */
117 540635ba ths
#undef TARGET_ESTRPIPE
118 540635ba ths
#define TARGET_ESTRPIPE        92      /* Streams pipe error */
119 540635ba ths
#undef TARGET_ENOTEMPTY
120 540635ba ths
#define TARGET_ENOTEMPTY       93      /* Directory not empty */
121 540635ba ths
#undef TARGET_EUSERS
122 540635ba ths
#define TARGET_EUSERS          94      /* Too many users */
123 540635ba ths
#undef TARGET_ENOTSOCK
124 540635ba ths
#define TARGET_ENOTSOCK        95      /* Socket operation on non-socket */
125 540635ba ths
#undef TARGET_EDESTADDRREQ
126 540635ba ths
#define TARGET_EDESTADDRREQ    96      /* Destination address required */
127 540635ba ths
#undef TARGET_EMSGSIZE
128 540635ba ths
#define TARGET_EMSGSIZE        97      /* Message too long */
129 540635ba ths
#undef TARGET_EPROTOTYPE
130 540635ba ths
#define TARGET_EPROTOTYPE      98      /* Protocol wrong type for socket */
131 540635ba ths
#undef TARGET_ENOPROTOOPT
132 540635ba ths
#define TARGET_ENOPROTOOPT     99      /* Protocol not available */
133 540635ba ths
#undef TARGET_EPROTONOSUPPORT
134 540635ba ths
#define TARGET_EPROTONOSUPPORT 120     /* Protocol not supported */
135 540635ba ths
#undef TARGET_ESOCKTNOSUPPORT
136 540635ba ths
#define TARGET_ESOCKTNOSUPPORT 121     /* Socket type not supported */
137 540635ba ths
#undef TARGET_EOPNOTSUPP
138 540635ba ths
#define TARGET_EOPNOTSUPP      122     /* Operation not supported on transport endpoint */
139 540635ba ths
#undef TARGET_EPFNOSUPPORT
140 540635ba ths
#define TARGET_EPFNOSUPPORT    123     /* Protocol family not supported */
141 540635ba ths
#undef TARGET_EAFNOSUPPORT
142 540635ba ths
#define TARGET_EAFNOSUPPORT    124     /* Address family not supported by protocol */
143 540635ba ths
#undef TARGET_EADDRINUSE
144 540635ba ths
#define TARGET_EADDRINUSE      125     /* Address already in use */
145 540635ba ths
#undef TARGET_EADDRNOTAVAIL
146 540635ba ths
#define TARGET_EADDRNOTAVAIL   126     /* Cannot assign requested address */
147 540635ba ths
#undef TARGET_ENETDOWN
148 540635ba ths
#define TARGET_ENETDOWN        127     /* Network is down */
149 540635ba ths
#undef TARGET_ENETUNREACH
150 540635ba ths
#define TARGET_ENETUNREACH     128     /* Network is unreachable */
151 540635ba ths
#undef TARGET_ENETRESET
152 540635ba ths
#define TARGET_ENETRESET       129     /* Network dropped connection because of reset */
153 540635ba ths
#undef TARGET_ECONNABORTED
154 540635ba ths
#define TARGET_ECONNABORTED    130     /* Software caused connection abort */
155 540635ba ths
#undef TARGET_ECONNRESET
156 540635ba ths
#define TARGET_ECONNRESET      131     /* Connection reset by peer */
157 540635ba ths
#undef TARGET_ENOBUFS
158 540635ba ths
#define TARGET_ENOBUFS         132     /* No buffer space available */
159 540635ba ths
#undef TARGET_EISCONN
160 540635ba ths
#define TARGET_EISCONN         133     /* Transport endpoint is already connected */
161 540635ba ths
#undef TARGET_ENOTCONN
162 540635ba ths
#define TARGET_ENOTCONN        134     /* Transport endpoint is not connected */
163 540635ba ths
#undef TARGET_EUCLEAN
164 540635ba ths
#define TARGET_EUCLEAN         135     /* Structure needs cleaning */
165 540635ba ths
#undef TARGET_ENOTNAM
166 540635ba ths
#define TARGET_ENOTNAM         137     /* Not a XENIX named type file */
167 540635ba ths
#undef TARGET_ENAVAIL
168 540635ba ths
#define TARGET_ENAVAIL         138     /* No XENIX semaphores available */
169 540635ba ths
#undef TARGET_EISNAM
170 540635ba ths
#define TARGET_EISNAM          139     /* Is a named type file */
171 540635ba ths
#undef TARGET_EREMOTEIO
172 540635ba ths
#define TARGET_EREMOTEIO       140     /* Remote I/O error */
173 540635ba ths
#undef TARGET_EINIT
174 540635ba ths
#define TARGET_EINIT           141     /* Reserved */
175 540635ba ths
#undef TARGET_EREMDEV
176 540635ba ths
#define TARGET_EREMDEV         142     /* TARGET_Error 142 */
177 540635ba ths
#undef TARGET_ESHUTDOWN
178 540635ba ths
#define TARGET_ESHUTDOWN       143     /* Cannot send after transport endpoint shutdown */
179 540635ba ths
#undef TARGET_ETOOMANYREFS
180 540635ba ths
#define TARGET_ETOOMANYREFS    144     /* Too many references: cannot splice */
181 540635ba ths
#undef TARGET_ETIMEDOUT
182 540635ba ths
#define TARGET_ETIMEDOUT       145     /* Connection timed out */
183 540635ba ths
#undef TARGET_ECONNREFUSED
184 540635ba ths
#define TARGET_ECONNREFUSED    146     /* Connection refused */
185 540635ba ths
#undef TARGET_EHOSTDOWN
186 540635ba ths
#define TARGET_EHOSTDOWN       147     /* Host is down */
187 540635ba ths
#undef TARGET_EHOSTUNREACH
188 540635ba ths
#define TARGET_EHOSTUNREACH    148     /* No route to host */
189 540635ba ths
#undef TARGET_EALREADY
190 540635ba ths
#define TARGET_EALREADY        149     /* Operation already in progress */
191 540635ba ths
#undef TARGET_EINPROGRESS
192 540635ba ths
#define TARGET_EINPROGRESS     150     /* Operation now in progress */
193 540635ba ths
#undef TARGET_ESTALE
194 540635ba ths
#define TARGET_ESTALE          151     /* Stale NFS file handle */
195 540635ba ths
#undef TARGET_ECANCELED
196 540635ba ths
#define TARGET_ECANCELED       158     /* AIO operation canceled */
197 540635ba ths
/*
198 540635ba ths
 * These error are Linux extensions.
199 540635ba ths
 */
200 540635ba ths
#undef TARGET_ENOMEDIUM
201 540635ba ths
#define TARGET_ENOMEDIUM       159     /* No medium found */
202 540635ba ths
#undef TARGET_EMEDIUMTYPE
203 540635ba ths
#define TARGET_EMEDIUMTYPE     160     /* Wrong medium type */
204 540635ba ths
#undef TARGET_ENOKEY
205 540635ba ths
#define TARGET_ENOKEY          161     /* Required key not available */
206 540635ba ths
#undef TARGET_EKEYEXPIRED
207 540635ba ths
#define TARGET_EKEYEXPIRED     162     /* Key has expired */
208 540635ba ths
#undef TARGET_EKEYREVOKED
209 540635ba ths
#define TARGET_EKEYREVOKED     163     /* Key has been revoked */
210 540635ba ths
#undef TARGET_EKEYREJECTED
211 540635ba ths
#define TARGET_EKEYREJECTED    164     /* Key was rejected by service */
212 540635ba ths
213 540635ba ths
/* for robust mutexes */
214 540635ba ths
#undef TARGET_EOWNERDEAD
215 540635ba ths
#define TARGET_EOWNERDEAD      165     /* Owner died */
216 540635ba ths
#undef TARGET_ENOTRECOVERABLE
217 540635ba ths
#define TARGET_ENOTRECOVERABLE 166     /* State not recoverable */
218 540635ba ths
219 540635ba ths
220 540635ba ths
221 540635ba ths
#define UNAME_MACHINE "mips64"