/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Copyright (c) 2021 Loongson Technology Corporation Limited */ #ifndef LOONGARCH_TARGET_SYSCALL_H #define LOONGARCH_TARGET_SYSCALL_H #include "qemu/units.h" /* * this struct defines the way the registers are stored on the * stack during a system call. */ struct target_pt_regs { /* Saved main processor registers. */ target_ulong regs[32]; /* Saved special registers. */ struct { target_ulong era; target_ulong badv; target_ulong crmd; target_ulong prmd; target_ulong euen; target_ulong ecfg; target_ulong estat; } csr; target_ulong orig_a0; target_ulong __last[0]; }; #define UNAME_MACHINE "loongarch64" #define UNAME_MINIMUM_RELEASE "5.19.0" #define TARGET_MCL_CURRENT 1 #define TARGET_MCL_FUTURE 2 #define TARGET_MCL_ONFAULT 4 #endif