blob: 80091ae54c2b0995ea56629a3f7e6969a484fb9b [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
Ingo Molnar241771e2008-12-03 10:39:53 +01002# Makefile for x86-compatible CPU details, features and quirks
Linus Torvalds1da177e2005-04-16 15:20:36 -07003#
4
Frederic Weisbecker0ca59dd2008-12-24 23:30:02 +01005# Don't trace early stages of a secondary CPU boot
6ifdef CONFIG_FUNCTION_TRACER
7CFLAGS_REMOVE_common.o = -pg
Ingo Molnar6e3d8332009-11-23 10:19:20 +01008CFLAGS_REMOVE_perf_event.o = -pg
Frederic Weisbecker0ca59dd2008-12-24 23:30:02 +01009endif
10
Jeremy Fitzhardinge5416c262009-08-17 12:25:41 -070011# Make sure load_percpu_segment has no stackprotector
12nostackp := $(call cc-option, -fno-stack-protector)
13CFLAGS_common.o := $(nostackp)
14
H. Peter Anvin2decb192010-07-19 18:32:04 -070015obj-y := intel_cacheinfo.o scattered.o topology.o
Josh Triplett9def39be2013-10-30 08:09:45 -070016obj-y += common.o
H. Peter Anvin49d859d2011-07-31 14:02:19 -070017obj-y += rdrand.o
Andi Kleen644e9cb2012-01-26 00:09:05 +010018obj-y += match.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070019
Josh Triplett39f838e2013-10-30 14:21:53 +000020obj-$(CONFIG_PROC_FS) += proc.o
Josh Triplett9def39be2013-10-30 08:09:45 -070021obj-$(CONFIG_X86_FEATURE_NAMES) += capflags.o powerflags.o
Josh Triplett39f838e2013-10-30 14:21:53 +000022
H. Peter Anvin90c8f922010-07-28 16:53:49 -070023obj-$(CONFIG_X86_32) += bugs.o
Yinghai Luf5017cf2008-09-04 20:09:14 -070024obj-$(CONFIG_X86_64) += bugs_64.o
Thomas Petazzoni8d02c212008-08-05 11:45:19 +020025
Yinghai Lu879d7922008-09-09 16:40:37 -070026obj-$(CONFIG_CPU_SUP_INTEL) += intel.o
Yinghai Luff731522008-09-07 17:58:56 -070027obj-$(CONFIG_CPU_SUP_AMD) += amd.o
Thomas Petazzoni8d02c212008-08-05 11:45:19 +020028obj-$(CONFIG_CPU_SUP_CYRIX_32) += cyrix.o
Sebastian Andrzej Siewior48f4c482009-03-14 12:24:02 +010029obj-$(CONFIG_CPU_SUP_CENTAUR) += centaur.o
Thomas Petazzoni8d02c212008-08-05 11:45:19 +020030obj-$(CONFIG_CPU_SUP_TRANSMETA_32) += transmeta.o
Thomas Petazzoni8d02c212008-08-05 11:45:19 +020031obj-$(CONFIG_CPU_SUP_UMC_32) += umc.o
Linus Torvalds1da177e2005-04-16 15:20:36 -070032
Ingo Molnarcdd6c482009-09-21 12:02:48 +020033obj-$(CONFIG_PERF_EVENTS) += perf_event.o
Andi Kleen09198e62007-05-02 19:27:20 +020034
Kevin Winchesterde0428a2011-08-30 20:41:05 -030035ifdef CONFIG_PERF_EVENTS
Jacob Shinc43ca502013-04-19 16:34:28 -050036obj-$(CONFIG_CPU_SUP_AMD) += perf_event_amd.o perf_event_amd_uncore.o
Suravee Suthikulpanit7be62962013-06-05 16:11:49 -050037ifdef CONFIG_AMD_IOMMU
38obj-$(CONFIG_CPU_SUP_AMD) += perf_event_amd_iommu.o
39endif
Vince Weavere717bf42012-09-26 14:12:52 -040040obj-$(CONFIG_CPU_SUP_INTEL) += perf_event_p6.o perf_event_knc.o perf_event_p4.o
Yan, Zheng087bfbb2012-06-15 14:31:34 +080041obj-$(CONFIG_CPU_SUP_INTEL) += perf_event_intel_lbr.o perf_event_intel_ds.o perf_event_intel.o
Yan, Zheng92807ffd2014-07-30 15:22:13 +080042obj-$(CONFIG_CPU_SUP_INTEL) += perf_event_intel_rapl.o
Peter Zijlstra7fb0f1d2014-10-24 09:12:35 +020043
44obj-$(CONFIG_PERF_EVENTS_INTEL_UNCORE) += perf_event_intel_uncore.o \
45 perf_event_intel_uncore_snb.o \
46 perf_event_intel_uncore_snbep.o \
47 perf_event_intel_uncore_nhmex.o
Kevin Winchesterde0428a2011-08-30 20:41:05 -030048endif
49
Suravee Suthikulpanit7be62962013-06-05 16:11:49 -050050
Ingo Molnar241771e2008-12-03 10:39:53 +010051obj-$(CONFIG_X86_MCE) += mcheck/
52obj-$(CONFIG_MTRR) += mtrr/
Borislav Petkovbad5fa62013-12-01 18:09:58 +010053obj-$(CONFIG_MICROCODE) += microcode/
Ingo Molnar241771e2008-12-03 10:39:53 +010054
Robert Richterb7169162011-09-21 11:30:18 +020055obj-$(CONFIG_X86_LOCAL_APIC) += perfctr-watchdog.o perf_event_amd_ibs.o
H. Peter Anvin7414aa42008-08-27 17:56:44 -070056
Borislav Petkov6276a072013-03-04 21:20:21 +010057obj-$(CONFIG_HYPERVISOR_GUEST) += vmware.o hypervisor.o mshyperv.o
58
Josh Triplett9def39be2013-10-30 08:09:45 -070059ifdef CONFIG_X86_FEATURE_NAMES
H. Peter Anvin7414aa42008-08-27 17:56:44 -070060quiet_cmd_mkcapflags = MKCAP $@
Rob Landley0c0de192013-04-29 15:05:53 -070061 cmd_mkcapflags = $(CONFIG_SHELL) $(srctree)/$(src)/mkcapflags.sh $< $@
H. Peter Anvin7414aa42008-08-27 17:56:44 -070062
Al Virobb898552008-08-17 21:05:42 -040063cpufeature = $(src)/../../include/asm/cpufeature.h
H. Peter Anvin7414aa42008-08-27 17:56:44 -070064
65targets += capflags.c
Rob Landley0c0de192013-04-29 15:05:53 -070066$(obj)/capflags.c: $(cpufeature) $(src)/mkcapflags.sh FORCE
H. Peter Anvin7414aa42008-08-27 17:56:44 -070067 $(call if_changed,mkcapflags)
Josh Triplett9def39be2013-10-30 08:09:45 -070068endif
Bjørn Mork280dbc52014-12-23 12:57:43 +010069clean-files += capflags.c