1 /* SPDX-License-Identifier: GPL-2.0 */ 2 // 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 12 enum 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) 26 void __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 */ 30