xref: /linux-6.15/arch/x86/kernel/cpu/Makefile (revision 4e16ed99)
1f7627e25SThomas Gleixner#
2241771efSIngo Molnar# Makefile for x86-compatible CPU details, features and quirks
3f7627e25SThomas Gleixner#
4f7627e25SThomas Gleixner
50ca59dd9SFrederic Weisbecker# Don't trace early stages of a secondary CPU boot
60ca59dd9SFrederic Weisbeckerifdef CONFIG_FUNCTION_TRACER
70ca59dd9SFrederic WeisbeckerCFLAGS_REMOVE_common.o = -pg
86e3d8330SIngo MolnarCFLAGS_REMOVE_perf_event.o = -pg
90ca59dd9SFrederic Weisbeckerendif
100ca59dd9SFrederic Weisbecker
115416c266SJeremy Fitzhardinge# Make sure load_percpu_segment has no stackprotector
125416c266SJeremy Fitzhardingenostackp := $(call cc-option, -fno-stack-protector)
135416c266SJeremy FitzhardingeCFLAGS_common.o		:= $(nostackp)
145416c266SJeremy Fitzhardinge
152decb194SH. Peter Anvinobj-y			:= intel_cacheinfo.o scattered.o topology.o
169def39beSJosh Triplettobj-y			+= common.o
1749d859d7SH. Peter Anvinobj-y			+= rdrand.o
18644e9cbbSAndi Kleenobj-y			+= match.o
19f7627e25SThomas Gleixner
2039f838e0SJosh Triplettobj-$(CONFIG_PROC_FS)	+= proc.o
219def39beSJosh Triplettobj-$(CONFIG_X86_FEATURE_NAMES) += capflags.o powerflags.o
2239f838e0SJosh Triplett
2390c8f92fSH. Peter Anvinobj-$(CONFIG_X86_32)	+= bugs.o
24f5017cfaSYinghai Luobj-$(CONFIG_X86_64)	+= bugs_64.o
258d02c211SThomas Petazzoni
26879d792bSYinghai Luobj-$(CONFIG_CPU_SUP_INTEL)		+= intel.o
27ff73152cSYinghai Luobj-$(CONFIG_CPU_SUP_AMD)		+= amd.o
288d02c211SThomas Petazzoniobj-$(CONFIG_CPU_SUP_CYRIX_32)		+= cyrix.o
2948f4c485SSebastian Andrzej Siewiorobj-$(CONFIG_CPU_SUP_CENTAUR)		+= centaur.o
308d02c211SThomas Petazzoniobj-$(CONFIG_CPU_SUP_TRANSMETA_32)	+= transmeta.o
318d02c211SThomas Petazzoniobj-$(CONFIG_CPU_SUP_UMC_32)		+= umc.o
32f7627e25SThomas Gleixner
33cdd6c482SIngo Molnarobj-$(CONFIG_PERF_EVENTS)		+= perf_event.o
34241771efSIngo Molnar
35de0428a7SKevin Winchesterifdef CONFIG_PERF_EVENTS
36c43ca509SJacob Shinobj-$(CONFIG_CPU_SUP_AMD)		+= perf_event_amd.o perf_event_amd_uncore.o
377be6296fSSuravee Suthikulpanitifdef CONFIG_AMD_IOMMU
387be6296fSSuravee Suthikulpanitobj-$(CONFIG_CPU_SUP_AMD)		+= perf_event_amd_iommu.o
397be6296fSSuravee Suthikulpanitendif
40e717bf4eSVince Weaverobj-$(CONFIG_CPU_SUP_INTEL)		+= perf_event_p6.o perf_event_knc.o perf_event_p4.o
41087bfbb0SYan, Zhengobj-$(CONFIG_CPU_SUP_INTEL)		+= perf_event_intel_lbr.o perf_event_intel_ds.o perf_event_intel.o
42*4e16ed99SMatt Flemingobj-$(CONFIG_CPU_SUP_INTEL)		+= perf_event_intel_rapl.o perf_event_intel_cqm.o
437fb0f1deSPeter Zijlstra
447fb0f1deSPeter Zijlstraobj-$(CONFIG_PERF_EVENTS_INTEL_UNCORE)	+= perf_event_intel_uncore.o \
457fb0f1deSPeter Zijlstra					   perf_event_intel_uncore_snb.o \
467fb0f1deSPeter Zijlstra					   perf_event_intel_uncore_snbep.o \
477fb0f1deSPeter Zijlstra					   perf_event_intel_uncore_nhmex.o
48de0428a7SKevin Winchesterendif
49de0428a7SKevin Winchester
507be6296fSSuravee Suthikulpanit
5127bd0c95SThomas Gleixnerobj-$(CONFIG_X86_MCE)			+= mcheck/
5227bd0c95SThomas Gleixnerobj-$(CONFIG_MTRR)			+= mtrr/
53bad5fa63SBorislav Petkovobj-$(CONFIG_MICROCODE)			+= microcode/
54f7627e25SThomas Gleixner
55b7169166SRobert Richterobj-$(CONFIG_X86_LOCAL_APIC)		+= perfctr-watchdog.o perf_event_amd_ibs.o
567414aa41SH. Peter Anvin
576276a074SBorislav Petkovobj-$(CONFIG_HYPERVISOR_GUEST)		+= vmware.o hypervisor.o mshyperv.o
586276a074SBorislav Petkov
599def39beSJosh Triplettifdef CONFIG_X86_FEATURE_NAMES
607414aa41SH. Peter Anvinquiet_cmd_mkcapflags = MKCAP   $@
610c0de199SRob Landley      cmd_mkcapflags = $(CONFIG_SHELL) $(srctree)/$(src)/mkcapflags.sh $< $@
627414aa41SH. Peter Anvin
63bb898558SAl Virocpufeature = $(src)/../../include/asm/cpufeature.h
647414aa41SH. Peter Anvin
657414aa41SH. Peter Anvintargets += capflags.c
660c0de199SRob Landley$(obj)/capflags.c: $(cpufeature) $(src)/mkcapflags.sh FORCE
677414aa41SH. Peter Anvin	$(call if_changed,mkcapflags)
689def39beSJosh Triplettendif
69280dbc57SBjørn Morkclean-files += capflags.c
70