[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v6 64/77] linux-user: Update syscall_defs.h header f
From: |
Stefan Markovic |
Subject: |
[Qemu-devel] [PATCH v6 64/77] linux-user: Update syscall_defs.h header for nanoMIPS |
Date: |
Thu, 2 Aug 2018 16:16:51 +0200 |
From: Aleksandar Markovic <address@hidden>
Update constants and structures related to linux user syscall support
in nanoMIPS.
Signed-off-by: Aleksandar Rikalo <address@hidden>
Signed-off-by: Aleksandar Markovic <address@hidden>
Signed-off-by: Stefan Markovic <address@hidden>
---
linux-user/syscall_defs.h | 57 ++++++++++++++++++++++++++++++++++++++++++-----
1 file changed, 52 insertions(+), 5 deletions(-)
diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
index 40bb60e..abf94b8 100644
--- a/linux-user/syscall_defs.h
+++ b/linux-user/syscall_defs.h
@@ -374,7 +374,7 @@ struct target_dirent64 {
#define TARGET_SIG_IGN ((abi_long)1) /* ignore signal */
#define TARGET_SIG_ERR ((abi_long)-1) /* error return from signal */
-#ifdef TARGET_MIPS
+#if defined(TARGET_MIPS) && !defined(TARGET_NANOMIPS)
#define TARGET_NSIG 128
#else
#define TARGET_NSIG 64
@@ -445,7 +445,7 @@ struct target_sigaction {
target_sigset_t sa_mask;
abi_ulong sa_restorer;
};
-#elif defined(TARGET_MIPS)
+#elif defined(TARGET_MIPS) && !defined(TARGET_NANOMIPS)
struct target_sigaction {
uint32_t sa_flags;
#if defined(TARGET_ABI_MIPSN32)
@@ -459,6 +459,14 @@ struct target_sigaction {
abi_ulong sa_restorer;
#endif
};
+#elif defined(TARGET_NANOMIPS)
+struct target_sigaction {
+ abi_ulong _sa_handler;
+ abi_uint sa_flags;
+ target_sigset_t sa_mask;
+ abi_ulong sa_restorer;
+};
+
#else
struct target_old_sigaction {
abi_ulong _sa_handler;
@@ -537,7 +545,7 @@ typedef struct {
#define QEMU_SI_RT 5
typedef struct target_siginfo {
-#ifdef TARGET_MIPS
+#if defined(TARGET_MIPS) && !defined(TARGET_NANOMIPS)
int si_signo;
int si_code;
int si_errno;
@@ -665,13 +673,16 @@ struct target_rlimit {
#if defined(TARGET_ALPHA)
#define TARGET_RLIM_INFINITY 0x7fffffffffffffffull
-#elif defined(TARGET_MIPS) || (defined(TARGET_SPARC) && TARGET_ABI_BITS == 32)
+#elif (defined(TARGET_MIPS) && !defined(TARGET_NANOMIPS)) \
+ || (defined(TARGET_SPARC) && TARGET_ABI_BITS == 32)
#define TARGET_RLIM_INFINITY 0x7fffffffUL
+#elif defined(TARGET_NANOMIPS)
+#define TARGET_RLIM_INFINITY 0x76ffeec4UL
#else
#define TARGET_RLIM_INFINITY ((abi_ulong)-1)
#endif
-#if defined(TARGET_MIPS)
+#if defined(TARGET_MIPS) && !defined(TARGET_NANOMIPS)
#define TARGET_RLIMIT_CPU 0
#define TARGET_RLIMIT_FSIZE 1
#define TARGET_RLIMIT_DATA 2
@@ -687,6 +698,22 @@ struct target_rlimit {
#define TARGET_RLIMIT_MSGQUEUE 12
#define TARGET_RLIMIT_NICE 13
#define TARGET_RLIMIT_RTPRIO 14
+#elif defined(TARGET_NANOMIPS)
+#define TARGET_RLIMIT_CPU 0
+#define TARGET_RLIMIT_FSIZE 1
+#define TARGET_RLIMIT_DATA 2
+#define TARGET_RLIMIT_STACK 3
+#define TARGET_RLIMIT_CORE 4
+#define TARGET_RLIMIT_RSS 5
+#define TARGET_RLIMIT_NPROC 6
+#define TARGET_RLIMIT_NOFILE 7
+#define TARGET_RLIMIT_MEMLOCK 8
+#define TARGET_RLIMIT_AS 9
+#define TARGET_RLIMIT_LOCKS 10
+#define TARGET_RLIMIT_SIGPENDING 11
+#define TARGET_RLIMIT_MSGQUEUE 12
+#define TARGET_RLIMIT_NICE 13
+#define TARGET_RLIMIT_RTPRIO 14
#else
#define TARGET_RLIMIT_CPU 0
#define TARGET_RLIMIT_FSIZE 1
@@ -1657,6 +1684,10 @@ struct target_stat64 {
int64_t st_blocks;
};
+#elif defined(TARGET_ABI_MIPSP32)
+
+/* No struct stat and struct stat64 structures */
+
#elif defined(TARGET_ALPHA)
struct target_stat {
@@ -2009,6 +2040,22 @@ struct target_statfs {
int32_t f_flags;
int32_t f_spare[5];
};
+#elif defined(TARGET_ABI_MIPSP32)
+struct target_statfs {
+ abi_long f_type;
+ abi_long f_bsize;
+ abi_long f_blocks;
+ abi_long f_bfree;
+ abi_long f_bavail;
+ abi_long f_files;
+ abi_long f_ffree;
+
+ /* Linux specials */
+ target_fsid_t f_fsid;
+ abi_long f_namelen;
+ abi_llong f_frsize; /* Fragment size - unsupported */
+ abi_long f_spare[6];
+};
#else
struct target_statfs {
abi_long f_type;
--
1.9.1
- [Qemu-devel] [PATCH v6 55/77] mips_malta: Add basic nanoMIPS boot code for MIPS' Malta, (continued)
- [Qemu-devel] [PATCH v6 55/77] mips_malta: Add basic nanoMIPS boot code for MIPS' Malta, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 56/77] mips_malta: Setup GT64120 BARs in nanoMIPS bootloader, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 57/77] mips_malta: Fix semihosting argument passing for nanoMIPS bare metal, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 58/77] gdbstub: Disable handling of nanoMIPS ISA bit in the MIPS gdbstub, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 59/77] gdbstub: Add XML support for GDB for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 60/77] target/mips: Add definition of nanoMIPS I7200 CPU, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 61/77] linux-user: Add syscall numbers for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 62/77] linux-user: Add target_signal.h header for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 63/77] linux-user: Add termbits.h header for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 64/77] linux-user: Update syscall_defs.h header for nanoMIPS,
Stefan Markovic <=
- [Qemu-devel] [PATCH v6 65/77] linux-user: Add target_fcntl.h header for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 66/77] linux-user: Add sockbits.h header for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 67/77] linux-user: Add target_syscall.h header for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 68/77] linux-user: Add target_cpu.h header for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 69/77] linux-user: Add target_structs.h header for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 70/77] linux-user: Add target_elf.h header for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 71/77] linux-user: Add signal.c for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 72/77] linux-user: Add support for nanoMIPS signal trampoline, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 73/77] linux-user: Add cpu_loop.c for nanoMIPS, Stefan Markovic, 2018/08/02
- [Qemu-devel] [PATCH v6 74/77] linux-user: Amend support for sigaction() syscall for nanoMIPS, Stefan Markovic, 2018/08/02