blob: baf318aec533b60425e2f7ece08773c5e25f7cd3 [file] [log] [blame]
Jon Loeligerfbcd54b2005-09-17 10:39:46 -05001#ifndef _ASM_POWERPC_SECTIONS_H
2#define _ASM_POWERPC_SECTIONS_H
Arnd Bergmann88ced032005-12-16 22:43:46 +01003#ifdef __KERNEL__
Jon Loeligerfbcd54b2005-09-17 10:39:46 -05004
5#include <asm-generic/sections.h>
6
7#ifdef __powerpc64__
8
9extern char _end[];
10
11static inline int in_kernel_text(unsigned long addr)
12{
13 if (addr >= (unsigned long)_stext && addr < (unsigned long)__init_end)
14 return 1;
15
16 return 0;
17}
18
Paul Mackerras549e8152008-08-30 11:43:47 +100019static inline int overlaps_kernel_text(unsigned long start, unsigned long end)
20{
21 return start < (unsigned long)__init_end &&
22 (unsigned long)_stext < end;
23}
24
James Bottomleydeac93d2008-09-03 20:43:36 -050025#undef dereference_function_descriptor
26void *dereference_function_descriptor(void *);
27
Jon Loeligerfbcd54b2005-09-17 10:39:46 -050028#endif
29
Arnd Bergmann88ced032005-12-16 22:43:46 +010030#endif /* __KERNEL__ */
Jon Loeligerfbcd54b2005-09-17 10:39:46 -050031#endif /* _ASM_POWERPC_SECTIONS_H */