1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _ASM_ARM_SECTIONS_H 3 #define _ASM_ARM_SECTIONS_H 4 5 #include <asm-generic/sections.h> 6 7 extern char _exiprom[]; 8 9 extern char __idmap_text_start[]; 10 extern char __idmap_text_end[]; 11 extern char __entry_text_start[]; 12 extern char __entry_text_end[]; 13 extern char __hyp_idmap_text_start[]; 14 extern char __hyp_idmap_text_end[]; 15 16 static inline bool in_entry_text(unsigned long addr) 17 { 18 return memory_contains(__entry_text_start, __entry_text_end, 19 (void *)addr, 1); 20 } 21 22 static inline bool in_idmap_text(unsigned long addr) 23 { 24 void *a = (void *)addr; 25 return memory_contains(__idmap_text_start, __idmap_text_end, a, 1) || 26 memory_contains(__hyp_idmap_text_start, __hyp_idmap_text_end, 27 a, 1); 28 } 29 30 #endif /* _ASM_ARM_SECTIONS_H */ 31