xref: /openbmc/qemu/linux-user/alpha/target_syscall.h (revision 41fb4c14ee500125dc0ce6fb573cf84b8db29ed0)
13622634bSMarkus Armbruster #ifndef ALPHA_TARGET_SYSCALL_H
23622634bSMarkus Armbruster #define ALPHA_TARGET_SYSCALL_H
3460c579fSLluís Vilanova 
4460c579fSLluís Vilanova /* default linux values for the selectors */
5460c579fSLluís Vilanova #define __USER_DS	(1)
6460c579fSLluís Vilanova 
7460c579fSLluís Vilanova struct target_pt_regs {
8460c579fSLluís Vilanova 	abi_ulong r0;
9460c579fSLluís Vilanova 	abi_ulong r1;
10460c579fSLluís Vilanova 	abi_ulong r2;
11460c579fSLluís Vilanova 	abi_ulong r3;
12460c579fSLluís Vilanova 	abi_ulong r4;
13460c579fSLluís Vilanova 	abi_ulong r5;
14460c579fSLluís Vilanova 	abi_ulong r6;
15460c579fSLluís Vilanova 	abi_ulong r7;
16460c579fSLluís Vilanova 	abi_ulong r8;
17460c579fSLluís Vilanova 	abi_ulong r19;
18460c579fSLluís Vilanova 	abi_ulong r20;
19460c579fSLluís Vilanova 	abi_ulong r21;
20460c579fSLluís Vilanova 	abi_ulong r22;
21460c579fSLluís Vilanova 	abi_ulong r23;
22460c579fSLluís Vilanova 	abi_ulong r24;
23460c579fSLluís Vilanova 	abi_ulong r25;
24460c579fSLluís Vilanova 	abi_ulong r26;
25460c579fSLluís Vilanova 	abi_ulong r27;
26460c579fSLluís Vilanova 	abi_ulong r28;
27460c579fSLluís Vilanova 	abi_ulong hae;
28460c579fSLluís Vilanova /* JRP - These are the values provided to a0-a2 by PALcode */
29460c579fSLluís Vilanova 	abi_ulong trap_a0;
30460c579fSLluís Vilanova 	abi_ulong trap_a1;
31460c579fSLluís Vilanova 	abi_ulong trap_a2;
32460c579fSLluís Vilanova /* These are saved by PAL-code: */
33460c579fSLluís Vilanova 	abi_ulong ps;
34460c579fSLluís Vilanova 	abi_ulong pc;
35460c579fSLluís Vilanova 	abi_ulong gp;
36460c579fSLluís Vilanova 	abi_ulong r16;
37460c579fSLluís Vilanova 	abi_ulong r17;
38460c579fSLluís Vilanova 	abi_ulong r18;
39460c579fSLluís Vilanova /* Those is needed by qemu to temporary store the user stack pointer */
40460c579fSLluís Vilanova         abi_ulong usp;
41460c579fSLluís Vilanova         abi_ulong unique;
42460c579fSLluís Vilanova };
43460c579fSLluís Vilanova 
44460c579fSLluís Vilanova #define UNAME_MACHINE "alpha"
45460c579fSLluís Vilanova #define UNAME_MINIMUM_RELEASE "2.6.32"
46460c579fSLluís Vilanova 
47460c579fSLluís Vilanova // For sys_osf_getsysinfo
48460c579fSLluís Vilanova #define TARGET_GSI_UACPROC		8
49460c579fSLluís Vilanova #define TARGET_GSI_IEEE_FP_CONTROL	45
50460c579fSLluís Vilanova #define TARGET_GSI_IEEE_STATE_AT_SIGNAL	46
51460c579fSLluís Vilanova #define TARGET_GSI_PROC_TYPE		60
52460c579fSLluís Vilanova #define TARGET_GSI_GET_HWRPB		101
53460c579fSLluís Vilanova 
54460c579fSLluís Vilanova // For sys_ofs_setsysinfo
55460c579fSLluís Vilanova #define TARGET_SSI_NVPAIRS		1
56460c579fSLluís Vilanova #define TARGET_SSI_IEEE_FP_CONTROL	14
57460c579fSLluís Vilanova #define TARGET_SSI_IEEE_STATE_AT_SIGNAL	15
58460c579fSLluís Vilanova #define TARGET_SSI_IEEE_IGNORE_STATE_AT_SIGNAL 16
59460c579fSLluís Vilanova #define TARGET_SSI_IEEE_RAISE_EXCEPTION	1001
60460c579fSLluís Vilanova 
61460c579fSLluís Vilanova #define TARGET_SSIN_UACPROC		6
62460c579fSLluís Vilanova 
63460c579fSLluís Vilanova #define TARGET_UAC_NOPRINT		1
64460c579fSLluís Vilanova #define TARGET_UAC_NOFIX		2
65460c579fSLluís Vilanova #define TARGET_UAC_SIGBUS		4
66*02e5d7d7SFilip Bozuta #define TARGET_MCL_CURRENT     0x2000
67*02e5d7d7SFilip Bozuta #define TARGET_MCL_FUTURE      0x4000
68*02e5d7d7SFilip Bozuta #define TARGET_MCL_ONFAULT     0x8000
69460c579fSLluís Vilanova 
703622634bSMarkus Armbruster #endif /* ALPHA_TARGET_SYSCALL_H */
71