xref: /openbmc/linux/arch/x86/mm/Makefile (revision e3d786a3)
1# SPDX-License-Identifier: GPL-2.0
2# Kernel does not boot with instrumentation of tlb.c and mem_encrypt*.c
3KCOV_INSTRUMENT_tlb.o			:= n
4KCOV_INSTRUMENT_mem_encrypt.o		:= n
5KCOV_INSTRUMENT_mem_encrypt_identity.o	:= n
6
7KASAN_SANITIZE_mem_encrypt.o		:= n
8KASAN_SANITIZE_mem_encrypt_identity.o	:= n
9
10ifdef CONFIG_FUNCTION_TRACER
11CFLAGS_REMOVE_mem_encrypt.o		= -pg
12CFLAGS_REMOVE_mem_encrypt_identity.o	= -pg
13endif
14
15obj-y	:=  init.o init_$(BITS).o fault.o ioremap.o extable.o pageattr.o mmap.o \
16	    pat.o pgtable.o physaddr.o setup_nx.o tlb.o cpu_entry_area.o
17
18# Make sure __phys_addr has no stackprotector
19nostackp := $(call cc-option, -fno-stack-protector)
20CFLAGS_physaddr.o		:= $(nostackp)
21CFLAGS_setup_nx.o		:= $(nostackp)
22CFLAGS_mem_encrypt_identity.o	:= $(nostackp)
23
24CFLAGS_fault.o := -I$(src)/../include/asm/trace
25
26obj-$(CONFIG_X86_PAT)		+= pat_rbtree.o
27
28obj-$(CONFIG_X86_32)		+= pgtable_32.o iomap_32.o
29
30obj-$(CONFIG_HUGETLB_PAGE)	+= hugetlbpage.o
31obj-$(CONFIG_X86_PTDUMP_CORE)	+= dump_pagetables.o
32obj-$(CONFIG_X86_PTDUMP)	+= debug_pagetables.o
33
34obj-$(CONFIG_HIGHMEM)		+= highmem_32.o
35
36KASAN_SANITIZE_kasan_init_$(BITS).o := n
37obj-$(CONFIG_KASAN)		+= kasan_init_$(BITS).o
38
39obj-$(CONFIG_MMIOTRACE)		+= mmiotrace.o
40mmiotrace-y			:= kmmio.o pf_in.o mmio-mod.o
41obj-$(CONFIG_MMIOTRACE_TEST)	+= testmmiotrace.o
42
43obj-$(CONFIG_NUMA)		+= numa.o numa_$(BITS).o
44obj-$(CONFIG_AMD_NUMA)		+= amdtopology.o
45obj-$(CONFIG_ACPI_NUMA)		+= srat.o
46obj-$(CONFIG_NUMA_EMU)		+= numa_emulation.o
47
48obj-$(CONFIG_X86_INTEL_MPX)			+= mpx.o
49obj-$(CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS)	+= pkeys.o
50obj-$(CONFIG_RANDOMIZE_MEMORY)			+= kaslr.o
51obj-$(CONFIG_PAGE_TABLE_ISOLATION)		+= pti.o
52
53obj-$(CONFIG_AMD_MEM_ENCRYPT)	+= mem_encrypt.o
54obj-$(CONFIG_AMD_MEM_ENCRYPT)	+= mem_encrypt_identity.o
55obj-$(CONFIG_AMD_MEM_ENCRYPT)	+= mem_encrypt_boot.o
56