1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0 2f7627e25SThomas Gleixner# 3241771efSIngo Molnar# Makefile for x86-compatible CPU details, features and quirks 4f7627e25SThomas Gleixner# 5f7627e25SThomas Gleixner 60ca59dd9SFrederic Weisbecker# Don't trace early stages of a secondary CPU boot 70ca59dd9SFrederic Weisbeckerifdef CONFIG_FUNCTION_TRACER 80ca59dd9SFrederic WeisbeckerCFLAGS_REMOVE_common.o = -pg 96e3d8330SIngo MolnarCFLAGS_REMOVE_perf_event.o = -pg 100ca59dd9SFrederic Weisbeckerendif 110ca59dd9SFrederic Weisbecker 125c9a8750SDmitry Vyukov# If these files are instrumented, boot hangs during the first second. 135c9a8750SDmitry VyukovKCOV_INSTRUMENT_common.o := n 145c9a8750SDmitry VyukovKCOV_INSTRUMENT_perf_event.o := n 1593324e68SAlexander PotapenkoKMSAN_SANITIZE_common.o := n 165c9a8750SDmitry Vyukov 1740d04110SMarco Elver# As above, instrumenting secondary CPU boot code causes boot hangs. 1840d04110SMarco ElverKCSAN_SANITIZE_common.o := n 1940d04110SMarco Elver 20ebdb2036SThomas Gleixnerobj-y := cacheinfo.o scattered.o 216cf70394SThomas Gleixnerobj-y += topology_common.o topology_ext.o topology_amd.o 229def39beSJosh Triplettobj-y += common.o 2349d859d7SH. Peter Anvinobj-y += rdrand.o 24644e9cbbSAndi Kleenobj-y += match.o 2562a67e12SBorislav Petkovobj-y += bugs.o 267d5905dcSRafael J. Wysockiobj-y += aperfmperf.o 270b00de85SAndi Kleenobj-y += cpuid-deps.o 28bd688c69SFenghua Yuobj-y += umwait.o 29c0a66c28SThomas Gleixnerobj-y += capflags.o powerflags.o 30c0a66c28SThomas Gleixner 31c0a66c28SThomas Gleixnerobj-$(CONFIG_X86_LOCAL_APIC) += topology.o 32f7627e25SThomas Gleixner 3339f838e0SJosh Triplettobj-$(CONFIG_PROC_FS) += proc.o 3439f838e0SJosh Triplett 351db2a6e1SSean Christophersonobj-$(CONFIG_IA32_FEAT_CTL) += feat_ctl.o 36be1fcde6SRafael J. Wysockiifdef CONFIG_CPU_SUP_INTEL 37079544ecSAlison Schofieldobj-y += intel.o tsx.o 38be1fcde6SRafael J. Wysockiobj-$(CONFIG_PM) += intel_epb.o 39be1fcde6SRafael J. Wysockiendif 40ff73152cSYinghai Luobj-$(CONFIG_CPU_SUP_AMD) += amd.o 41c9661c1eSPu Wenobj-$(CONFIG_CPU_SUP_HYGON) += hygon.o 428d02c211SThomas Petazzoniobj-$(CONFIG_CPU_SUP_CYRIX_32) += cyrix.o 4348f4c485SSebastian Andrzej Siewiorobj-$(CONFIG_CPU_SUP_CENTAUR) += centaur.o 448d02c211SThomas Petazzoniobj-$(CONFIG_CPU_SUP_TRANSMETA_32) += transmeta.o 458d02c211SThomas Petazzoniobj-$(CONFIG_CPU_SUP_UMC_32) += umc.o 46761fdd5eSTony W Wang-ocobj-$(CONFIG_CPU_SUP_ZHAOXIN) += zhaoxin.o 47639475d4SMarcos Del Sol Vivesobj-$(CONFIG_CPU_SUP_VORTEX_32) += vortex.o 48f7627e25SThomas Gleixner 4921afaf18SBorislav Petkovobj-$(CONFIG_X86_MCE) += mce/ 5027bd0c95SThomas Gleixnerobj-$(CONFIG_MTRR) += mtrr/ 51bad5fa63SBorislav Petkovobj-$(CONFIG_MICROCODE) += microcode/ 52e6d42931SJohannes Weinerobj-$(CONFIG_X86_CPU_RESCTRL) += resctrl/ 53e7e05452SSean Christophersonobj-$(CONFIG_X86_SGX) += sgx/ 54f7627e25SThomas Gleixner 55218cfe4eSBorislav Petkovobj-$(CONFIG_X86_LOCAL_APIC) += perfctr-watchdog.o 567414aa41SH. Peter Anvin 576276a074SBorislav Petkovobj-$(CONFIG_HYPERVISOR_GUEST) += vmware.o hypervisor.o mshyperv.o 58ec7972c9SZhao Yakuiobj-$(CONFIG_ACRN_GUEST) += acrn.o 596276a074SBorislav Petkov 6048525fd1SThomas Gleixnerobj-$(CONFIG_DEBUG_FS) += debugfs.o 6148525fd1SThomas Gleixner 62*350afa8aSRavi Bangoriaobj-$(CONFIG_X86_BUS_LOCK_DETECT) += bus_lock.o 63*350afa8aSRavi Bangoria 647414aa41SH. Peter Anvinquiet_cmd_mkcapflags = MKCAP $@ 65b1992c37SMasahiro Yamada cmd_mkcapflags = $(CONFIG_SHELL) $(src)/mkcapflags.sh $@ $^ 667414aa41SH. Peter Anvin 67cd4d09ecSBorislav Petkovcpufeature = $(src)/../../include/asm/cpufeatures.h 6814442a15SSean Christophersonvmxfeature = $(src)/../../include/asm/vmxfeatures.h 697414aa41SH. Peter Anvin 7014442a15SSean Christopherson$(obj)/capflags.c: $(cpufeature) $(vmxfeature) $(src)/mkcapflags.sh FORCE 717414aa41SH. Peter Anvin $(call if_changed,mkcapflags) 7287b61864SMasahiro Yamadatargets += capflags.c 73