xref: /openbmc/linux/arch/csky/include/asm/fixmap.h (revision d0034a7a4ac7fae708146ac0059b9c47a1543f0d)
1013de2d6SGuo Ren /* SPDX-License-Identifier: GPL-2.0 */
2013de2d6SGuo Ren 
3013de2d6SGuo Ren #ifndef __ASM_CSKY_FIXMAP_H
4013de2d6SGuo Ren #define __ASM_CSKY_FIXMAP_H
5013de2d6SGuo Ren 
6013de2d6SGuo Ren #include <asm/page.h>
7f525bb2cSGuo Ren #include <asm/memory.h>
8013de2d6SGuo Ren #ifdef CONFIG_HIGHMEM
9013de2d6SGuo Ren #include <linux/threads.h>
10*5af627a0SThomas Gleixner #include <asm/kmap_size.h>
11013de2d6SGuo Ren #endif
12013de2d6SGuo Ren 
13013de2d6SGuo Ren enum fixed_addresses {
14f525bb2cSGuo Ren #ifdef CONFIG_HAVE_TCM
15f525bb2cSGuo Ren 	FIX_TCM = TCM_NR_PAGES,
16f525bb2cSGuo Ren #endif
17013de2d6SGuo Ren #ifdef CONFIG_HIGHMEM
18013de2d6SGuo Ren 	FIX_KMAP_BEGIN,
19*5af627a0SThomas Gleixner 	FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_MAX_IDX * NR_CPUS) - 1,
20013de2d6SGuo Ren #endif
21013de2d6SGuo Ren 	__end_of_fixed_addresses
22013de2d6SGuo Ren };
23013de2d6SGuo Ren 
24013de2d6SGuo Ren #define FIXADDR_SIZE	(__end_of_fixed_addresses << PAGE_SHIFT)
25013de2d6SGuo Ren #define FIXADDR_START	(FIXADDR_TOP - FIXADDR_SIZE)
26013de2d6SGuo Ren 
27013de2d6SGuo Ren #include <asm-generic/fixmap.h>
28013de2d6SGuo Ren 
29f136008fSGuo Ren extern void fixrange_init(unsigned long start, unsigned long end,
30f136008fSGuo Ren 	pgd_t *pgd_base);
31f136008fSGuo Ren extern void __init fixaddr_init(void);
32f136008fSGuo Ren 
33013de2d6SGuo Ren #endif /* __ASM_CSKY_FIXMAP_H */
34