1# SPDX-License-Identifier: GPL-2.0
2
3ccflags-y	:= $(NO_MINIMAL_TOC)
4
5obj-y				+= mmu_context.o pgtable.o trace.o
6ifdef CONFIG_PPC_64S_HASH_MMU
7CFLAGS_REMOVE_slb.o = $(CC_FLAGS_FTRACE)
8obj-y				+= hash_pgtable.o hash_utils.o hash_tlb.o slb.o slice.o
9obj-$(CONFIG_PPC_HASH_MMU_NATIVE)	+= hash_native.o
10obj-$(CONFIG_PPC_4K_PAGES)	+= hash_4k.o
11obj-$(CONFIG_PPC_64K_PAGES)	+= hash_64k.o
12obj-$(CONFIG_TRANSPARENT_HUGEPAGE) += hash_hugepage.o
13obj-$(CONFIG_PPC_SUBPAGE_PROT)	+= subpage_prot.o
14endif
15
16obj-$(CONFIG_HUGETLB_PAGE)	+= hugetlbpage.o
17
18obj-$(CONFIG_PPC_RADIX_MMU)	+= radix_pgtable.o radix_tlb.o
19ifdef CONFIG_HUGETLB_PAGE
20obj-$(CONFIG_PPC_RADIX_MMU)	+= radix_hugetlbpage.o
21endif
22obj-$(CONFIG_SPAPR_TCE_IOMMU)	+= iommu_api.o
23obj-$(CONFIG_PPC_PKEY)	+= pkeys.o
24
25# Instrumenting the SLB fault path can lead to duplicate SLB entries
26KCOV_INSTRUMENT_slb.o := n
27
28# Parts of these can run in real mode and therefore are
29# not safe with the current outline KASAN implementation
30KASAN_SANITIZE_mmu_context.o := n
31KASAN_SANITIZE_pgtable.o := n
32KASAN_SANITIZE_radix_pgtable.o := n
33KASAN_SANITIZE_radix_tlb.o := n
34KASAN_SANITIZE_slb.o := n
35KASAN_SANITIZE_pkeys.o := n
36