1 # SPDX-License-Identifier: GPL-2.0
3 # Makefile for x86-compatible CPU details, features and quirks
6 # Don't trace early stages of a secondary CPU boot
7 ifdef CONFIG_FUNCTION_TRACER
8 CFLAGS_REMOVE_common.o
= -pg
9 CFLAGS_REMOVE_perf_event.o
= -pg
12 # If these files are instrumented, boot hangs during the first second.
13 KCOV_INSTRUMENT_common.o
:= n
14 KCOV_INSTRUMENT_perf_event.o
:= n
16 # Make sure load_percpu_segment has no stackprotector
17 nostackp
:= $(call cc-option
, -fno-stack-protector
)
18 CFLAGS_common.o
:= $(nostackp
)
20 obj-y
:= cacheinfo.o scattered.o topology.o
28 obj-
$(CONFIG_PROC_FS
) += proc.o
29 obj-
$(CONFIG_X86_FEATURE_NAMES
) += capflags.o powerflags.o
31 obj-
$(CONFIG_CPU_SUP_INTEL
) += intel.o intel_pconfig.o
32 obj-
$(CONFIG_CPU_SUP_AMD
) += amd.o
33 obj-
$(CONFIG_CPU_SUP_HYGON
) += hygon.o
34 obj-
$(CONFIG_CPU_SUP_CYRIX_32
) += cyrix.o
35 obj-
$(CONFIG_CPU_SUP_CENTAUR
) += centaur.o
36 obj-
$(CONFIG_CPU_SUP_TRANSMETA_32
) += transmeta.o
37 obj-
$(CONFIG_CPU_SUP_UMC_32
) += umc.o
39 obj-
$(CONFIG_INTEL_RDT
) += intel_rdt.o intel_rdt_rdtgroup.o intel_rdt_monitor.o
40 obj-
$(CONFIG_INTEL_RDT
) += intel_rdt_ctrlmondata.o intel_rdt_pseudo_lock.o
41 CFLAGS_intel_rdt_pseudo_lock.o
= -I
$(src
)
43 obj-
$(CONFIG_X86_MCE
) += mcheck
/
44 obj-
$(CONFIG_MTRR
) += mtrr
/
45 obj-
$(CONFIG_MICROCODE
) += microcode
/
47 obj-
$(CONFIG_X86_LOCAL_APIC
) += perfctr-watchdog.o
49 obj-
$(CONFIG_HYPERVISOR_GUEST
) += vmware.o hypervisor.o mshyperv.o
51 ifdef CONFIG_X86_FEATURE_NAMES
52 quiet_cmd_mkcapflags
= MKCAP
$@
53 cmd_mkcapflags
= $(CONFIG_SHELL
) $(srctree
)/$(src
)/mkcapflags.sh
$< $@
55 cpufeature
= $(src
)/..
/..
/include/asm
/cpufeatures.h
58 $(obj
)/capflags.c
: $(cpufeature
) $(src
)/mkcapflags.sh FORCE
59 $(call if_changed
,mkcapflags
)
61 clean-files
+= capflags.c