blob: 5a4bf11e58003e6ec8ff39c4c3274b82d22c498e [file] [log] [blame]
David Brazdil0f672f62019-12-10 10:32:29 +00001/* SPDX-License-Identifier: GPL-2.0 */
Andrew Scullb4b6d4a2019-01-02 15:54:55 +00002// Copyright (C) 2005-2017 Andes Technology Corporation
3
4#ifndef __ASM_NDS32_FIXMAP_H
5#define __ASM_NDS32_FIXMAP_H
6
7#ifdef CONFIG_HIGHMEM
8#include <linux/threads.h>
9#include <asm/kmap_types.h>
10#endif
11
12enum fixed_addresses {
13 FIX_HOLE,
14 FIX_KMAP_RESERVED,
15 FIX_KMAP_BEGIN,
16#ifdef CONFIG_HIGHMEM
17 FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_TYPE_NR * NR_CPUS),
18#endif
19 FIX_EARLYCON_MEM_BASE,
20 __end_of_fixed_addresses
21};
22#define FIXADDR_TOP ((unsigned long) (-(16 * PAGE_SIZE)))
23#define FIXADDR_SIZE ((__end_of_fixed_addresses) << PAGE_SHIFT)
24#define FIXADDR_START (FIXADDR_TOP - FIXADDR_SIZE)
25#define FIXMAP_PAGE_IO __pgprot(PAGE_DEVICE)
26void __set_fixmap(enum fixed_addresses idx, phys_addr_t phys, pgprot_t prot);
27
28#include <asm-generic/fixmap.h>
29#endif /* __ASM_NDS32_FIXMAP_H */