GNU Linux-libre 5.19-rc6-gnu
[releases.git] / arch / csky / include / asm / fixmap.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2
3 #ifndef __ASM_CSKY_FIXMAP_H
4 #define __ASM_CSKY_FIXMAP_H
5
6 #include <asm/page.h>
7 #include <asm/memory.h>
8 #ifdef CONFIG_HIGHMEM
9 #include <linux/threads.h>
10 #include <asm/kmap_size.h>
11 #endif
12
13 enum fixed_addresses {
14 #ifdef CONFIG_HAVE_TCM
15         FIX_TCM = TCM_NR_PAGES,
16 #endif
17 #ifdef CONFIG_HIGHMEM
18         FIX_KMAP_BEGIN,
19         FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_MAX_IDX * NR_CPUS) - 1,
20 #endif
21         __end_of_fixed_addresses
22 };
23
24 #define FIXADDR_SIZE    (__end_of_fixed_addresses << PAGE_SHIFT)
25 #define FIXADDR_START   (FIXADDR_TOP - FIXADDR_SIZE)
26
27 #include <asm-generic/fixmap.h>
28
29 extern void fixrange_init(unsigned long start, unsigned long end,
30         pgd_t *pgd_base);
31 extern void __init fixaddr_init(void);
32
33 #endif /* __ASM_CSKY_FIXMAP_H */