Makefile 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. # SPDX-License-Identifier: GPL-2.0
  2. #
  3. # Makefile for x86-compatible CPU details, features and quirks
  4. #
  5. # Don't trace early stages of a secondary CPU boot
  6. ifdef CONFIG_FUNCTION_TRACER
  7. CFLAGS_REMOVE_common.o = -pg
  8. CFLAGS_REMOVE_perf_event.o = -pg
  9. endif
  10. # If these files are instrumented, boot hangs during the first second.
  11. KCOV_INSTRUMENT_common.o := n
  12. KCOV_INSTRUMENT_perf_event.o := n
  13. KMSAN_SANITIZE_common.o := n
  14. # As above, instrumenting secondary CPU boot code causes boot hangs.
  15. KCSAN_SANITIZE_common.o := n
  16. # Make sure load_percpu_segment has no stackprotector
  17. CFLAGS_common.o := -fno-stack-protector
  18. obj-y := cacheinfo.o scattered.o topology.o
  19. obj-y += common.o
  20. obj-y += rdrand.o
  21. obj-y += match.o
  22. obj-y += bugs.o
  23. obj-y += aperfmperf.o
  24. obj-y += cpuid-deps.o
  25. obj-y += umwait.o
  26. obj-$(CONFIG_PROC_FS) += proc.o
  27. obj-$(CONFIG_X86_FEATURE_NAMES) += capflags.o powerflags.o
  28. obj-$(CONFIG_IA32_FEAT_CTL) += feat_ctl.o
  29. ifdef CONFIG_CPU_SUP_INTEL
  30. obj-y += intel.o intel_pconfig.o tsx.o
  31. obj-$(CONFIG_PM) += intel_epb.o
  32. endif
  33. obj-$(CONFIG_CPU_SUP_AMD) += amd.o
  34. obj-$(CONFIG_CPU_SUP_HYGON) += hygon.o
  35. obj-$(CONFIG_CPU_SUP_CYRIX_32) += cyrix.o
  36. obj-$(CONFIG_CPU_SUP_CENTAUR) += centaur.o
  37. obj-$(CONFIG_CPU_SUP_TRANSMETA_32) += transmeta.o
  38. obj-$(CONFIG_CPU_SUP_UMC_32) += umc.o
  39. obj-$(CONFIG_CPU_SUP_ZHAOXIN) += zhaoxin.o
  40. obj-$(CONFIG_CPU_SUP_VORTEX_32) += vortex.o
  41. obj-$(CONFIG_X86_MCE) += mce/
  42. obj-$(CONFIG_MTRR) += mtrr/
  43. obj-$(CONFIG_MICROCODE) += microcode/
  44. obj-$(CONFIG_X86_CPU_RESCTRL) += resctrl/
  45. obj-$(CONFIG_X86_SGX) += sgx/
  46. obj-$(CONFIG_X86_LOCAL_APIC) += perfctr-watchdog.o
  47. obj-$(CONFIG_HYPERVISOR_GUEST) += vmware.o hypervisor.o mshyperv.o
  48. obj-$(CONFIG_ACRN_GUEST) += acrn.o
  49. ifdef CONFIG_X86_FEATURE_NAMES
  50. quiet_cmd_mkcapflags = MKCAP $@
  51. cmd_mkcapflags = $(CONFIG_SHELL) $(srctree)/$(src)/mkcapflags.sh $@ $^
  52. cpufeature = $(src)/../../include/asm/cpufeatures.h
  53. vmxfeature = $(src)/../../include/asm/vmxfeatures.h
  54. $(obj)/capflags.c: $(cpufeature) $(vmxfeature) $(src)/mkcapflags.sh FORCE
  55. $(call if_changed,mkcapflags)
  56. endif
  57. targets += capflags.c