122851890Sopenharmony_ci/**************************************************************************** 222851890Sopenharmony_ci **************************************************************************** 322851890Sopenharmony_ci *** 422851890Sopenharmony_ci *** This header was automatically generated from a Linux kernel header 522851890Sopenharmony_ci *** of the same name, to make information necessary for userspace to 622851890Sopenharmony_ci *** call into the kernel available to libc. It contains only constants, 722851890Sopenharmony_ci *** structures, and macros generated from the original header, and thus, 822851890Sopenharmony_ci *** contains no copyrightable information. 922851890Sopenharmony_ci *** 1022851890Sopenharmony_ci *** To edit the content of this header, modify the corresponding 1122851890Sopenharmony_ci *** source file (e.g. under external/kernel-headers/original/) then 1222851890Sopenharmony_ci *** run bionic/libc/kernel/tools/update_all.py 1322851890Sopenharmony_ci *** 1422851890Sopenharmony_ci *** Any manual change here will be lost the next time this script will 1522851890Sopenharmony_ci *** be run. You've been warned! 1622851890Sopenharmony_ci *** 1722851890Sopenharmony_ci **************************************************************************** 1822851890Sopenharmony_ci ****************************************************************************/ 1922851890Sopenharmony_ci#ifndef __LINUX_KVM_MIPS_H 2022851890Sopenharmony_ci#define __LINUX_KVM_MIPS_H 2122851890Sopenharmony_ci#include <linux/types.h> 2222851890Sopenharmony_ci#define __KVM_HAVE_READONLY_MEM 2322851890Sopenharmony_ci#define KVM_COALESCED_MMIO_PAGE_OFFSET 1 2422851890Sopenharmony_cistruct kvm_regs { 2522851890Sopenharmony_ci __u64 gpr[32]; 2622851890Sopenharmony_ci __u64 hi; 2722851890Sopenharmony_ci __u64 lo; 2822851890Sopenharmony_ci __u64 pc; 2922851890Sopenharmony_ci}; 3022851890Sopenharmony_cistruct kvm_fpu { 3122851890Sopenharmony_ci}; 3222851890Sopenharmony_ci#define KVM_REG_MIPS_GP (KVM_REG_MIPS | 0x0000000000000000ULL) 3322851890Sopenharmony_ci#define KVM_REG_MIPS_CP0 (KVM_REG_MIPS | 0x0000000000010000ULL) 3422851890Sopenharmony_ci#define KVM_REG_MIPS_KVM (KVM_REG_MIPS | 0x0000000000020000ULL) 3522851890Sopenharmony_ci#define KVM_REG_MIPS_FPU (KVM_REG_MIPS | 0x0000000000030000ULL) 3622851890Sopenharmony_ci#define KVM_REG_MIPS_R0 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 0) 3722851890Sopenharmony_ci#define KVM_REG_MIPS_R1 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 1) 3822851890Sopenharmony_ci#define KVM_REG_MIPS_R2 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 2) 3922851890Sopenharmony_ci#define KVM_REG_MIPS_R3 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 3) 4022851890Sopenharmony_ci#define KVM_REG_MIPS_R4 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 4) 4122851890Sopenharmony_ci#define KVM_REG_MIPS_R5 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 5) 4222851890Sopenharmony_ci#define KVM_REG_MIPS_R6 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 6) 4322851890Sopenharmony_ci#define KVM_REG_MIPS_R7 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 7) 4422851890Sopenharmony_ci#define KVM_REG_MIPS_R8 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 8) 4522851890Sopenharmony_ci#define KVM_REG_MIPS_R9 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 9) 4622851890Sopenharmony_ci#define KVM_REG_MIPS_R10 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 10) 4722851890Sopenharmony_ci#define KVM_REG_MIPS_R11 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 11) 4822851890Sopenharmony_ci#define KVM_REG_MIPS_R12 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 12) 4922851890Sopenharmony_ci#define KVM_REG_MIPS_R13 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 13) 5022851890Sopenharmony_ci#define KVM_REG_MIPS_R14 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 14) 5122851890Sopenharmony_ci#define KVM_REG_MIPS_R15 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 15) 5222851890Sopenharmony_ci#define KVM_REG_MIPS_R16 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 16) 5322851890Sopenharmony_ci#define KVM_REG_MIPS_R17 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 17) 5422851890Sopenharmony_ci#define KVM_REG_MIPS_R18 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 18) 5522851890Sopenharmony_ci#define KVM_REG_MIPS_R19 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 19) 5622851890Sopenharmony_ci#define KVM_REG_MIPS_R20 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 20) 5722851890Sopenharmony_ci#define KVM_REG_MIPS_R21 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 21) 5822851890Sopenharmony_ci#define KVM_REG_MIPS_R22 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 22) 5922851890Sopenharmony_ci#define KVM_REG_MIPS_R23 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 23) 6022851890Sopenharmony_ci#define KVM_REG_MIPS_R24 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 24) 6122851890Sopenharmony_ci#define KVM_REG_MIPS_R25 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 25) 6222851890Sopenharmony_ci#define KVM_REG_MIPS_R26 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 26) 6322851890Sopenharmony_ci#define KVM_REG_MIPS_R27 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 27) 6422851890Sopenharmony_ci#define KVM_REG_MIPS_R28 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 28) 6522851890Sopenharmony_ci#define KVM_REG_MIPS_R29 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 29) 6622851890Sopenharmony_ci#define KVM_REG_MIPS_R30 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 30) 6722851890Sopenharmony_ci#define KVM_REG_MIPS_R31 (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 31) 6822851890Sopenharmony_ci#define KVM_REG_MIPS_HI (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 32) 6922851890Sopenharmony_ci#define KVM_REG_MIPS_LO (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 33) 7022851890Sopenharmony_ci#define KVM_REG_MIPS_PC (KVM_REG_MIPS_GP | KVM_REG_SIZE_U64 | 34) 7122851890Sopenharmony_ci#define KVM_REG_MIPS_MAAR (KVM_REG_MIPS_CP0 | (1 << 8)) 7222851890Sopenharmony_ci#define KVM_REG_MIPS_CP0_MAAR(n) (KVM_REG_MIPS_MAAR | KVM_REG_SIZE_U64 | (n)) 7322851890Sopenharmony_ci#define KVM_REG_MIPS_COUNT_CTL (KVM_REG_MIPS_KVM | KVM_REG_SIZE_U64 | 0) 7422851890Sopenharmony_ci#define KVM_REG_MIPS_COUNT_CTL_DC 0x00000001 7522851890Sopenharmony_ci#define KVM_REG_MIPS_COUNT_RESUME (KVM_REG_MIPS_KVM | KVM_REG_SIZE_U64 | 1) 7622851890Sopenharmony_ci#define KVM_REG_MIPS_COUNT_HZ (KVM_REG_MIPS_KVM | KVM_REG_SIZE_U64 | 2) 7722851890Sopenharmony_ci#define KVM_REG_MIPS_FPR (KVM_REG_MIPS_FPU | 0x0000000000000000ULL) 7822851890Sopenharmony_ci#define KVM_REG_MIPS_FCR (KVM_REG_MIPS_FPU | 0x0000000000000100ULL) 7922851890Sopenharmony_ci#define KVM_REG_MIPS_MSACR (KVM_REG_MIPS_FPU | 0x0000000000000200ULL) 8022851890Sopenharmony_ci#define KVM_REG_MIPS_FPR_32(n) (KVM_REG_MIPS_FPR | KVM_REG_SIZE_U32 | (n)) 8122851890Sopenharmony_ci#define KVM_REG_MIPS_FPR_64(n) (KVM_REG_MIPS_FPR | KVM_REG_SIZE_U64 | (n)) 8222851890Sopenharmony_ci#define KVM_REG_MIPS_VEC_128(n) (KVM_REG_MIPS_FPR | KVM_REG_SIZE_U128 | (n)) 8322851890Sopenharmony_ci#define KVM_REG_MIPS_FCR_IR (KVM_REG_MIPS_FCR | KVM_REG_SIZE_U32 | 0) 8422851890Sopenharmony_ci#define KVM_REG_MIPS_FCR_CSR (KVM_REG_MIPS_FCR | KVM_REG_SIZE_U32 | 31) 8522851890Sopenharmony_ci#define KVM_REG_MIPS_MSA_IR (KVM_REG_MIPS_MSACR | KVM_REG_SIZE_U32 | 0) 8622851890Sopenharmony_ci#define KVM_REG_MIPS_MSA_CSR (KVM_REG_MIPS_MSACR | KVM_REG_SIZE_U32 | 1) 8722851890Sopenharmony_cistruct kvm_debug_exit_arch { 8822851890Sopenharmony_ci __u64 epc; 8922851890Sopenharmony_ci}; 9022851890Sopenharmony_cistruct kvm_guest_debug_arch { 9122851890Sopenharmony_ci}; 9222851890Sopenharmony_cistruct kvm_sync_regs { 9322851890Sopenharmony_ci}; 9422851890Sopenharmony_cistruct kvm_sregs { 9522851890Sopenharmony_ci}; 9622851890Sopenharmony_cistruct kvm_mips_interrupt { 9722851890Sopenharmony_ci __u32 cpu; 9822851890Sopenharmony_ci __u32 irq; 9922851890Sopenharmony_ci}; 10022851890Sopenharmony_ci#endif 101