1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _ASM_X86_MODULE_H
3#define _ASM_X86_MODULE_H
4
5#include <asm-generic/module.h>
6#include <asm/orc_types.h>
7
8struct mod_arch_specific {
9#ifdef CONFIG_UNWINDER_ORC
10 unsigned int num_orcs;
11 int *orc_unwind_ip;
12 struct orc_entry *orc_unwind;
13#endif
14};
15
16#ifdef CONFIG_X86_64
17/* X86_64 does not define MODULE_PROC_FAMILY */
18#elif defined CONFIG_M486
19#define MODULE_PROC_FAMILY "486 "
20#elif defined CONFIG_M586
21#define MODULE_PROC_FAMILY "586 "
22#elif defined CONFIG_M586TSC
23#define MODULE_PROC_FAMILY "586TSC "
24#elif defined CONFIG_M586MMX
25#define MODULE_PROC_FAMILY "586MMX "
26#elif defined CONFIG_MCORE2
27#define MODULE_PROC_FAMILY "CORE2 "
28#elif defined CONFIG_MATOM
29#define MODULE_PROC_FAMILY "ATOM "
30#elif defined CONFIG_M686
31#define MODULE_PROC_FAMILY "686 "
32#elif defined CONFIG_MPENTIUMII
33#define MODULE_PROC_FAMILY "PENTIUMII "
34#elif defined CONFIG_MPENTIUMIII
35#define MODULE_PROC_FAMILY "PENTIUMIII "
36#elif defined CONFIG_MPENTIUMM
37#define MODULE_PROC_FAMILY "PENTIUMM "
38#elif defined CONFIG_MPENTIUM4
39#define MODULE_PROC_FAMILY "PENTIUM4 "
40#elif defined CONFIG_MK6
41#define MODULE_PROC_FAMILY "K6 "
42#elif defined CONFIG_MK7
43#define MODULE_PROC_FAMILY "K7 "
44#elif defined CONFIG_MK8
45#define MODULE_PROC_FAMILY "K8 "
46#elif defined CONFIG_MELAN
47#define MODULE_PROC_FAMILY "ELAN "
48#elif defined CONFIG_MCRUSOE
49#define MODULE_PROC_FAMILY "CRUSOE "
50#elif defined CONFIG_MEFFICEON
51#define MODULE_PROC_FAMILY "EFFICEON "
52#elif defined CONFIG_MWINCHIPC6
53#define MODULE_PROC_FAMILY "WINCHIPC6 "
54#elif defined CONFIG_MWINCHIP3D
55#define MODULE_PROC_FAMILY "WINCHIP3D "
56#elif defined CONFIG_MCYRIXIII
57#define MODULE_PROC_FAMILY "CYRIXIII "
58#elif defined CONFIG_MVIAC3_2
59#define MODULE_PROC_FAMILY "VIAC3-2 "
60#elif defined CONFIG_MVIAC7
61#define MODULE_PROC_FAMILY "VIAC7 "
62#elif defined CONFIG_MGEODEGX1
63#define MODULE_PROC_FAMILY "GEODEGX1 "
64#elif defined CONFIG_MGEODE_LX
65#define MODULE_PROC_FAMILY "GEODE "
66#else
67#error unknown processor family
68#endif
69
70#ifdef CONFIG_X86_32
71# define MODULE_ARCH_VERMAGIC MODULE_PROC_FAMILY
72#endif
73
74#endif /* _ASM_X86_MODULE_H */
75