master
h 33 lines 738 Bytes
Raw
1 /*
2 * ARM cpu parameters for qemu.
3 *
4 * Copyright (c) 2003 Fabrice Bellard
5 * SPDX-License-Identifier: LGPL-2.0-or-later
6 */
7
8 #ifndef ARM_CPU_PARAM_H
9 #define ARM_CPU_PARAM_H
10
11 #ifdef TARGET_AARCH64
12 # define TARGET_VIRT_ADDR_SPACE_BITS 52
13 #else
14 # define TARGET_VIRT_ADDR_SPACE_BITS 32
15 #endif
16
17 #ifdef CONFIG_USER_ONLY
18 # if defined(TARGET_AARCH64) && defined(CONFIG_LINUX)
19 /* Allow user-only to vary page size from 4k */
20 # define TARGET_PAGE_BITS_VARY
21 # else
22 # define TARGET_PAGE_BITS 12
23 # endif
24 #else /* !CONFIG_USER_ONLY */
25 /*
26 * ARMv7 and later CPUs have 4K pages minimum, but ARMv5 and v6
27 * have to support 1K tiny pages.
28 */
29 # define TARGET_PAGE_BITS_VARY
30 # define TARGET_PAGE_BITS_LEGACY 10
31 #endif /* !CONFIG_USER_ONLY */
32
33 #endif