Linux 6.7-rc7
[linux-modified.git] / arch / mips / include / asm / mach-ip27 / spaces.h
1 /*
2  * This file is subject to the terms and conditions of the GNU General Public
3  * License.  See the file "COPYING" in the main directory of this archive
4  * for more details.
5  *
6  * Copyright (C) 1996, 99 Ralf Baechle
7  * Copyright (C) 2000, 2002  Maciej W. Rozycki
8  * Copyright (C) 1990, 1999 by Silicon Graphics, Inc.
9  */
10 #ifndef _ASM_MACH_IP27_SPACES_H
11 #define _ASM_MACH_IP27_SPACES_H
12
13 #include <linux/const.h>
14
15 /*
16  * IP27 uses the R10000's uncached attribute feature.  Attribute 3 selects
17  * uncached memory addressing. Hide the definitions on 32-bit compilation
18  * of the compat-vdso code.
19  */
20 #ifdef CONFIG_64BIT
21 #define HSPEC_BASE              _AC(0x9000000000000000, UL)
22 #define IO_BASE                 _AC(0x9200000000000000, UL)
23 #define MSPEC_BASE              _AC(0x9400000000000000, UL)
24 #define UNCAC_BASE              _AC(0x9600000000000000, UL)
25 #define CAC_BASE                _AC(0xa800000000000000, UL)
26 #endif
27
28 #define TO_MSPEC(x)             (MSPEC_BASE | ((x) & TO_PHYS_MASK))
29 #define TO_HSPEC(x)             (HSPEC_BASE | ((x) & TO_PHYS_MASK))
30
31 #define HIGHMEM_START           (~0UL)
32
33 #include <asm/mach-generic/spaces.h>
34
35 #endif /* _ASM_MACH_IP27_SPACES_H */