1 /* SPDX-License-Identifier: GPL-2.0-or-later */
5 * Linux architectural port borrowing liberally from similar works of
6 * others. All original copyrights apply as per the original source
9 * OpenRISC implementation:
10 * Copyright (C) 2003 Matjaz Breskvar <phoenix@bsemi.com>
11 * Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se>
15 #ifndef __ASM_OPENRISC_FIXMAP_H
16 #define __ASM_OPENRISC_FIXMAP_H
18 /* Why exactly do we need 2 empty pages between the top of the fixed
19 * addresses and the top of virtual memory? Something is using that
20 * memory space but not sure what right now... If you find it, leave
23 #define FIXADDR_TOP ((unsigned long) (-2*PAGE_SIZE))
25 #include <linux/kernel.h>
26 #include <linux/bug.h>
29 enum fixed_addresses
{
30 FIX_EARLYCON_MEM_BASE
,
31 __end_of_fixed_addresses
34 #define FIXADDR_SIZE (__end_of_fixed_addresses << PAGE_SHIFT)
35 /* FIXADDR_BOTTOM might be a better name here... */
36 #define FIXADDR_START (FIXADDR_TOP - FIXADDR_SIZE)
37 #define FIXMAP_PAGE_IO PAGE_KERNEL_NOCACHE
39 extern void __set_fixmap(enum fixed_addresses idx
,
40 phys_addr_t phys
, pgprot_t flags
);
42 #include <asm-generic/fixmap.h>