1 #ifndef ALPHA_TARGET_SYSCALL_H
2 #define ALPHA_TARGET_SYSCALL_H
3 
4 /* default linux values for the selectors */
5 #define __USER_DS	(1)
6 
7 struct target_pt_regs {
8 	abi_ulong r0;
9 	abi_ulong r1;
10 	abi_ulong r2;
11 	abi_ulong r3;
12 	abi_ulong r4;
13 	abi_ulong r5;
14 	abi_ulong r6;
15 	abi_ulong r7;
16 	abi_ulong r8;
17 	abi_ulong r19;
18 	abi_ulong r20;
19 	abi_ulong r21;
20 	abi_ulong r22;
21 	abi_ulong r23;
22 	abi_ulong r24;
23 	abi_ulong r25;
24 	abi_ulong r26;
25 	abi_ulong r27;
26 	abi_ulong r28;
27 	abi_ulong hae;
28 /* JRP - These are the values provided to a0-a2 by PALcode */
29 	abi_ulong trap_a0;
30 	abi_ulong trap_a1;
31 	abi_ulong trap_a2;
32 /* These are saved by PAL-code: */
33 	abi_ulong ps;
34 	abi_ulong pc;
35 	abi_ulong gp;
36 	abi_ulong r16;
37 	abi_ulong r17;
38 	abi_ulong r18;
39 /* Those is needed by qemu to temporary store the user stack pointer */
40         abi_ulong usp;
41         abi_ulong unique;
42 };
43 
44 #define UNAME_MACHINE "alpha"
45 #define UNAME_MINIMUM_RELEASE "2.6.32"
46 
47 #undef TARGET_EWOULDBLOCK
48 #define TARGET_EWOULDBLOCK      TARGET_EAGAIN /* Operation would block */
49 #undef TARGET_EDEADLK
50 #define TARGET_EDEADLK          11
51 #undef TARGET_EAGAIN
52 #define TARGET_EAGAIN           35
53 #undef TARGET_EINPROGRESS
54 #define TARGET_EINPROGRESS      36
55 #undef TARGET_EALREADY
56 #define TARGET_EALREADY         37
57 #undef TARGET_ENOTSOCK
58 #define TARGET_ENOTSOCK         38
59 #undef TARGET_EDESTADDRREQ
60 #define TARGET_EDESTADDRREQ     39
61 #undef TARGET_EMSGSIZE
62 #define TARGET_EMSGSIZE         40
63 #undef TARGET_EPROTOTYPE
64 #define TARGET_EPROTOTYPE       41
65 #undef TARGET_ENOPROTOOPT
66 #define TARGET_ENOPROTOOPT      42
67 #undef TARGET_EPROTONOSUPPORT
68 #define TARGET_EPROTONOSUPPORT  43
69 #undef TARGET_ESOCKTNOSUPPORT
70 #define TARGET_ESOCKTNOSUPPORT  44
71 #undef TARGET_EOPNOTSUPP
72 #define TARGET_EOPNOTSUPP       45
73 #undef TARGET_EPFNOSUPPORT
74 #define TARGET_EPFNOSUPPORT     46
75 #undef TARGET_EAFNOSUPPORT
76 #define TARGET_EAFNOSUPPORT     47
77 #undef TARGET_EADDRINUSE
78 #define TARGET_EADDRINUSE       48
79 #undef TARGET_EADDRNOTAVAIL
80 #define TARGET_EADDRNOTAVAIL    49
81 #undef TARGET_ENETDOWN
82 #define TARGET_ENETDOWN         50
83 #undef TARGET_ENETUNREACH
84 #define TARGET_ENETUNREACH      51
85 #undef TARGET_ENETRESET
86 #define TARGET_ENETRESET        52
87 #undef TARGET_ECONNABORTED
88 #define TARGET_ECONNABORTED     53
89 #undef TARGET_ECONNRESET
90 #define TARGET_ECONNRESET       54
91 #undef TARGET_ENOBUFS
92 #define TARGET_ENOBUFS          55
93 #undef TARGET_EISCONN
94 #define TARGET_EISCONN          56
95 #undef TARGET_ENOTCONN
96 #define TARGET_ENOTCONN         57
97 #undef TARGET_ESHUTDOWN
98 #define TARGET_ESHUTDOWN        58
99 #undef TARGET_ETOOMANYREFS
100 #define TARGET_ETOOMANYREFS     59
101 #undef TARGET_ETIMEDOUT
102 #define TARGET_ETIMEDOUT        60
103 #undef TARGET_ECONNREFUSED
104 #define TARGET_ECONNREFUSED     61
105 #undef TARGET_ELOOP
106 #define TARGET_ELOOP            62
107 #undef TARGET_ENAMETOOLONG
108 #define TARGET_ENAMETOOLONG     63
109 #undef TARGET_EHOSTDOWN
110 #define TARGET_EHOSTDOWN        64
111 #undef TARGET_EHOSTUNREACH
112 #define TARGET_EHOSTUNREACH     65
113 #undef TARGET_ENOTEMPTY
114 #define TARGET_ENOTEMPTY        66
115 /* Unused                       67 */
116 #undef TARGET_EUSERS
117 #define TARGET_EUSERS           68
118 #undef TARGET_EDQUOT
119 #define TARGET_EDQUOT           69
120 #undef TARGET_ESTALE
121 #define TARGET_ESTALE           70
122 #undef TARGET_EREMOTE
123 #define TARGET_EREMOTE          71
124 /* Unused                       72-76 */
125 #undef TARGET_ENOLCK
126 #define TARGET_ENOLCK           77
127 #undef TARGET_ENOSYS
128 #define TARGET_ENOSYS           78
129 /* Unused                       79 */
130 #undef TARGET_ENOMSG
131 #define TARGET_ENOMSG           80
132 #undef TARGET_EIDRM
133 #define TARGET_EIDRM            81
134 #undef TARGET_ENOSR
135 #define TARGET_ENOSR            82
136 #undef TARGET_ETIME
137 #define TARGET_ETIME            83
138 #undef TARGET_EBADMSG
139 #define TARGET_EBADMSG          84
140 #undef TARGET_EPROTO
141 #define TARGET_EPROTO           85
142 #undef TARGET_ENODATA
143 #define TARGET_ENODATA          86
144 #undef TARGET_ENOSTR
145 #define TARGET_ENOSTR           87
146 #undef TARGET_ECHRNG
147 #define TARGET_ECHRNG           88
148 #undef TARGET_EL2NSYNC
149 #define TARGET_EL2NSYNC         89
150 #undef TARGET_EL3HLT
151 #define TARGET_EL3HLT           90
152 #undef TARGET_EL3RST
153 #define TARGET_EL3RST           91
154 #undef TARGET_ENOPKG
155 #define TARGET_ENOPKG           92
156 #undef TARGET_ELNRNG
157 #define TARGET_ELNRNG           93
158 #undef TARGET_EUNATCH
159 #define TARGET_EUNATCH          94
160 #undef TARGET_ENOCSI
161 #define TARGET_ENOCSI           95
162 #undef TARGET_EL2HLT
163 #define TARGET_EL2HLT           96
164 #undef TARGET_EBADE
165 #define TARGET_EBADE            97
166 #undef TARGET_EBADR
167 #define TARGET_EBADR            98
168 #undef TARGET_EXFULL
169 #define TARGET_EXFULL           99
170 #undef TARGET_ENOANO
171 #define TARGET_ENOANO           100
172 #undef TARGET_EBADRQC
173 #define TARGET_EBADRQC          101
174 #undef TARGET_EBADSLT
175 #define TARGET_EBADSLT          102
176 /* Unused                       103 */
177 #undef TARGET_EBFONT
178 #define TARGET_EBFONT           104
179 #undef TARGET_ENONET
180 #define TARGET_ENONET           105
181 #undef TARGET_ENOLINK
182 #define TARGET_ENOLINK          106
183 #undef TARGET_EADV
184 #define TARGET_EADV             107
185 #undef TARGET_ESRMNT
186 #define TARGET_ESRMNT           108
187 #undef TARGET_ECOMM
188 #define TARGET_ECOMM            109
189 #undef TARGET_EMULTIHOP
190 #define TARGET_EMULTIHOP        110
191 #undef TARGET_EDOTDOT
192 #define TARGET_EDOTDOT          111
193 #undef TARGET_EOVERFLOW
194 #define TARGET_EOVERFLOW        112
195 #undef TARGET_ENOTUNIQ
196 #define TARGET_ENOTUNIQ         113
197 #undef TARGET_EBADFD
198 #define TARGET_EBADFD           114
199 #undef TARGET_EREMCHG
200 #define TARGET_EREMCHG          115
201 #undef TARGET_EILSEQ
202 #define TARGET_EILSEQ           116
203 /* Same as default              117-121 */
204 #undef TARGET_ELIBACC
205 #define TARGET_ELIBACC          122
206 #undef TARGET_ELIBBAD
207 #define TARGET_ELIBBAD          123
208 #undef TARGET_ELIBSCN
209 #define TARGET_ELIBSCN          124
210 #undef TARGET_ELIBMAX
211 #define TARGET_ELIBMAX          125
212 #undef TARGET_ELIBEXEC
213 #define TARGET_ELIBEXEC         126
214 #undef TARGET_ERESTART
215 #define TARGET_ERESTART         127
216 #undef TARGET_ESTRPIPE
217 #define TARGET_ESTRPIPE         128
218 #undef TARGET_ENOMEDIUM
219 #define TARGET_ENOMEDIUM        129
220 #undef TARGET_EMEDIUMTYPE
221 #define TARGET_EMEDIUMTYPE      130
222 #undef TARGET_ECANCELED
223 #define TARGET_ECANCELED        131
224 #undef TARGET_ENOKEY
225 #define TARGET_ENOKEY           132
226 #undef TARGET_EKEYEXPIRED
227 #define TARGET_EKEYEXPIRED      133
228 #undef TARGET_EKEYREVOKED
229 #define TARGET_EKEYREVOKED      134
230 #undef TARGET_EKEYREJECTED
231 #define TARGET_EKEYREJECTED     135
232 #undef TARGET_EOWNERDEAD
233 #define TARGET_EOWNERDEAD       136
234 #undef TARGET_ENOTRECOVERABLE
235 #define TARGET_ENOTRECOVERABLE  137
236 #undef TARGET_ERFKILL
237 #define TARGET_ERFKILL          138
238 #undef TARGET_EHWPOISON
239 #define TARGET_EHWPOISON        139
240 
241 // For sys_osf_getsysinfo
242 #define TARGET_GSI_UACPROC		8
243 #define TARGET_GSI_IEEE_FP_CONTROL	45
244 #define TARGET_GSI_IEEE_STATE_AT_SIGNAL	46
245 #define TARGET_GSI_PROC_TYPE		60
246 #define TARGET_GSI_GET_HWRPB		101
247 
248 // For sys_ofs_setsysinfo
249 #define TARGET_SSI_NVPAIRS		1
250 #define TARGET_SSI_IEEE_FP_CONTROL	14
251 #define TARGET_SSI_IEEE_STATE_AT_SIGNAL	15
252 #define TARGET_SSI_IEEE_IGNORE_STATE_AT_SIGNAL 16
253 #define TARGET_SSI_IEEE_RAISE_EXCEPTION	1001
254 
255 #define TARGET_SSIN_UACPROC		6
256 
257 #define TARGET_UAC_NOPRINT		1
258 #define TARGET_UAC_NOFIX		2
259 #define TARGET_UAC_SIGBUS		4
260 #define TARGET_MINSIGSTKSZ              4096
261 #define TARGET_MCL_CURRENT     0x2000
262 #define TARGET_MCL_FUTURE      0x4000
263 #define TARGET_MCL_ONFAULT     0x8000
264 
265 #endif /* ALPHA_TARGET_SYSCALL_H */
266