Merge tag 'pull-loongarch-20241016' of https://gitlab.com/gaosong/qemu into staging
[qemu/armbru.git] / target / ppc / cpu-param.h
blob9c481b9f6cf0996d8fe74f43778f7fbe779051ca
1 /*
2 * PowerPC cpu parameters for qemu.
4 * Copyright (c) 2007 Jocelyn Mayer
5 * SPDX-License-Identifier: LGPL-2.0-or-later
6 */
8 #ifndef PPC_CPU_PARAM_H
9 #define PPC_CPU_PARAM_H
11 #ifdef TARGET_PPC64
12 # define TARGET_LONG_BITS 64
14 * Note that the official physical address space bits is 62-M where M
15 * is implementation dependent. I've not looked up M for the set of
16 * cpus we emulate at the system level.
18 #define TARGET_PHYS_ADDR_SPACE_BITS 62
20 * Note that the PPC environment architecture talks about 80 bit virtual
21 * addresses, with segmentation. Obviously that's not all visible to a
22 * single process, which is all we're concerned with here.
24 # ifdef TARGET_ABI32
25 # define TARGET_VIRT_ADDR_SPACE_BITS 32
26 # else
27 # define TARGET_VIRT_ADDR_SPACE_BITS 64
28 # endif
29 #else
30 # define TARGET_LONG_BITS 32
31 # define TARGET_PHYS_ADDR_SPACE_BITS 36
32 # define TARGET_VIRT_ADDR_SPACE_BITS 32
33 #endif
35 #ifdef CONFIG_USER_ONLY
36 /* Allow user-only to vary page size from 4k */
37 # define TARGET_PAGE_BITS_VARY
38 # define TARGET_PAGE_BITS_MIN 12
39 #else
40 # define TARGET_PAGE_BITS 12
41 #endif
43 #define TCG_GUEST_DEFAULT_MO 0
45 #endif