summaryrefslogtreecommitdiff
path: root/include/asm-generic/sections.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-generic/sections.h')
-rw-r--r--include/asm-generic/sections.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/asm-generic/sections.h b/include/asm-generic/sections.h
index d59787948fd..48bd4fa8604 100644
--- a/include/asm-generic/sections.h
+++ b/include/asm-generic/sections.h
@@ -9,6 +9,7 @@
#define _ASM_GENERIC_SECTIONS_H_
#include <linux/types.h>
+#include <stdbool.h>
/* References to section boundaries */
@@ -62,6 +63,24 @@ static inline int arch_is_kernel_data(unsigned long addr)
}
#endif
+/**
+ * is_kernel_rodata - checks if the pointer address is located in the
+ * .rodata section
+ *
+ * @addr: address to check
+ *
+ * Returns: true if the address is located in .rodata, false otherwise.
+ */
+static inline bool is_kernel_rodata(unsigned long addr)
+{
+#ifdef CONFIG_ARM64
+ return addr >= (unsigned long)__start_rodata &&
+ addr < (unsigned long)__end_rodata;
+#else
+ return false;
+#endif
+}
+
/* U-Boot-specific things begin here */
/* Start of U-Boot text region */