ee3863b9d4
Traditionally, MIPS use 4KB page size, but Loongson prefer 16KB page size in system emulator. So, let's define TARGET_PAGE_BITS_VARY and TARGET_PAGE_BITS_MIN to support variable page size. Cc: Jiaxun Yang <jiaxun.yang@flygoat.com> Signed-off-by: Huacai Chen <chenhc@lemote.com> Reviewed-by: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com> Signed-off-by: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com> Message-Id: <1586337380-25217-1-git-send-email-chenhc@lemote.com>
35 lines
657 B
C
35 lines
657 B
C
/*
|
|
* MIPS cpu parameters for qemu.
|
|
*
|
|
* SPDX-License-Identifier: LGPL-2.0+
|
|
*/
|
|
|
|
#ifndef MIPS_CPU_PARAM_H
|
|
#define MIPS_CPU_PARAM_H 1
|
|
|
|
#ifdef TARGET_MIPS64
|
|
# define TARGET_LONG_BITS 64
|
|
#else
|
|
# define TARGET_LONG_BITS 32
|
|
#endif
|
|
#ifdef TARGET_MIPS64
|
|
#define TARGET_PHYS_ADDR_SPACE_BITS 48
|
|
#define TARGET_VIRT_ADDR_SPACE_BITS 48
|
|
#else
|
|
#define TARGET_PHYS_ADDR_SPACE_BITS 40
|
|
# ifdef CONFIG_USER_ONLY
|
|
# define TARGET_VIRT_ADDR_SPACE_BITS 31
|
|
# else
|
|
# define TARGET_VIRT_ADDR_SPACE_BITS 32
|
|
#endif
|
|
#endif
|
|
#ifdef CONFIG_USER_ONLY
|
|
#define TARGET_PAGE_BITS 12
|
|
#else
|
|
#define TARGET_PAGE_BITS_VARY
|
|
#define TARGET_PAGE_BITS_MIN 12
|
|
#endif
|
|
#define NB_MMU_MODES 4
|
|
|
|
#endif
|