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 | |