1 /* 2 * Alpha cpu parameters for qemu. 3 * 4 * Copyright (c) 2007 Jocelyn Mayer 5 * SPDX-License-Identifier: LGPL-2.0+ 6 */ 7 8 #ifndef ALPHA_CPU_PARAM_H 9 #define ALPHA_CPU_PARAM_H 1 10 11 #define TARGET_LONG_BITS 64 12 #define TARGET_PAGE_BITS 13 13 #ifdef CONFIG_USER_ONLY 14 /* 15 * ??? The kernel likes to give addresses in high memory. If the host has 16 * more virtual address space than the guest, this can lead to impossible 17 * allocations. Honor the long-standing assumption that only kernel addrs 18 * are negative, but otherwise allow allocations anywhere. This could lead 19 * to tricky emulation problems for programs doing tagged addressing, but 20 * that's far fewer than encounter the impossible allocation problem. 21 */ 22 #define TARGET_PHYS_ADDR_SPACE_BITS 63 23 #define TARGET_VIRT_ADDR_SPACE_BITS 63 24 #else 25 /* ??? EV4 has 34 phys addr bits, EV5 has 40, EV6 has 44. */ 26 #define TARGET_PHYS_ADDR_SPACE_BITS 44 27 #define TARGET_VIRT_ADDR_SPACE_BITS (30 + TARGET_PAGE_BITS) 28 #endif 29 #define NB_MMU_MODES 3 30 31 #endif 32