1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* Copyright (C) 2019 Andes Technology Corporation */ 3 4 #ifndef __ASM_KASAN_H 5 #define __ASM_KASAN_H 6 7 #ifndef __ASSEMBLY__ 8 9 #ifdef CONFIG_KASAN 10 11 #include <asm/pgtable.h> 12 13 #define KASAN_SHADOW_SCALE_SHIFT 3 14 15 #define KASAN_SHADOW_SIZE (UL(1) << (38 - KASAN_SHADOW_SCALE_SHIFT)) 16 #define KASAN_SHADOW_START KERN_VIRT_START /* 2^64 - 2^38 */ 17 #define KASAN_SHADOW_END (KASAN_SHADOW_START + KASAN_SHADOW_SIZE) 18 19 #define KASAN_SHADOW_OFFSET (KASAN_SHADOW_END - (1ULL << \ 20 (64 - KASAN_SHADOW_SCALE_SHIFT))) 21 22 void kasan_init(void); 23 asmlinkage void kasan_early_init(void); 24 25 #endif 26 #endif 27 #endif /* __ASM_KASAN_H */ 28