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
13enum 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
29extern void fixrange_init(unsigned long start, unsigned long end,
30	pgd_t *pgd_base);
31extern void __init fixaddr_init(void);
32
33#endif /* __ASM_CSKY_FIXMAP_H */
34