linux/arch/arm/include/asm/module.h
<<
>>
Prefs
   1#ifndef _ASM_ARM_MODULE_H
   2#define _ASM_ARM_MODULE_H
   3
   4#include <asm-generic/module.h>
   5
   6struct unwind_table;
   7
   8#ifdef CONFIG_ARM_UNWIND
   9enum {
  10        ARM_SEC_INIT,
  11        ARM_SEC_DEVINIT,
  12        ARM_SEC_CORE,
  13        ARM_SEC_EXIT,
  14        ARM_SEC_DEVEXIT,
  15        ARM_SEC_HOT,
  16        ARM_SEC_UNLIKELY,
  17        ARM_SEC_MAX,
  18};
  19
  20struct mod_arch_specific {
  21        struct unwind_table *unwind[ARM_SEC_MAX];
  22};
  23#endif
  24
  25/*
  26 * Add the ARM architecture version to the version magic string
  27 */
  28#define MODULE_ARCH_VERMAGIC_ARMVSN "ARMv" __stringify(__LINUX_ARM_ARCH__) " "
  29
  30/* Add __virt_to_phys patching state as well */
  31#ifdef CONFIG_ARM_PATCH_PHYS_VIRT
  32#define MODULE_ARCH_VERMAGIC_P2V "p2v8 "
  33#else
  34#define MODULE_ARCH_VERMAGIC_P2V ""
  35#endif
  36
  37/* Add instruction set architecture tag to distinguish ARM/Thumb kernels */
  38#ifdef CONFIG_THUMB2_KERNEL
  39#define MODULE_ARCH_VERMAGIC_ARMTHUMB "thumb2 "
  40#else
  41#define MODULE_ARCH_VERMAGIC_ARMTHUMB ""
  42#endif
  43
  44#define MODULE_ARCH_VERMAGIC \
  45        MODULE_ARCH_VERMAGIC_ARMVSN \
  46        MODULE_ARCH_VERMAGIC_ARMTHUMB \
  47        MODULE_ARCH_VERMAGIC_P2V
  48
  49#endif /* _ASM_ARM_MODULE_H */
  50