1#ifndef _ASM_METAG_MODULE_H 2#define _ASM_METAG_MODULE_H 3 4#include <asm-generic/module.h> 5 6struct metag_plt_entry { 7 /* Indirect jump instruction sequence. */ 8 unsigned long tramp[2]; 9}; 10 11struct mod_arch_specific { 12 /* Indices of PLT sections within module. */ 13 unsigned int core_plt_section, init_plt_section; 14}; 15 16#if defined CONFIG_METAG_META12 17#define MODULE_PROC_FAMILY "META 1.2 " 18#elif defined CONFIG_METAG_META21 19#define MODULE_PROC_FAMILY "META 2.1 " 20#else 21#define MODULE_PROC_FAMILY "" 22#endif 23 24#ifdef CONFIG_4KSTACKS 25#define MODULE_STACKSIZE "4KSTACKS " 26#else 27#define MODULE_STACKSIZE "" 28#endif 29 30#define MODULE_ARCH_VERMAGIC MODULE_PROC_FAMILY MODULE_STACKSIZE 31 32#ifdef MODULE 33asm(".section .plt,\"ax\",@progbits; .balign 8; .previous"); 34asm(".section .init.plt,\"ax\",@progbits; .balign 8; .previous"); 35#endif 36 37#endif /* _ASM_METAG_MODULE_H */ 38