| /* |
| * Alpha cpu parameters for qemu. |
| * |
| * Copyright (c) 2007 Jocelyn Mayer |
| * SPDX-License-Identifier: LGPL-2.0+ |
| */ |
| |
| #ifndef ALPHA_CPU_PARAM_H |
| #define ALPHA_CPU_PARAM_H 1 |
| |
| #define TARGET_LONG_BITS 64 |
| #define TARGET_PAGE_BITS 13 |
| #ifdef CONFIG_USER_ONLY |
| /* |
| * ??? The kernel likes to give addresses in high memory. If the host has |
| * more virtual address space than the guest, this can lead to impossible |
| * allocations. Honor the long-standing assumption that only kernel addrs |
| * are negative, but otherwise allow allocations anywhere. This could lead |
| * to tricky emulation problems for programs doing tagged addressing, but |
| * that's far fewer than encounter the impossible allocation problem. |
| */ |
| #define TARGET_PHYS_ADDR_SPACE_BITS 63 |
| #define TARGET_VIRT_ADDR_SPACE_BITS 63 |
| #else |
| /* ??? EV4 has 34 phys addr bits, EV5 has 40, EV6 has 44. */ |
| #define TARGET_PHYS_ADDR_SPACE_BITS 44 |
| #define TARGET_VIRT_ADDR_SPACE_BITS (30 + TARGET_PAGE_BITS) |
| #endif |
| #define NB_MMU_MODES 3 |
| |
| #endif |