sections.h 785 B

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