xref: /openbmc/linux/arch/powerpc/mm/Makefile (revision a06c488d)
1#
2# Makefile for the linux ppc-specific parts of the memory manager.
3#
4
5subdir-ccflags-$(CONFIG_PPC_WERROR) := -Werror
6
7ccflags-$(CONFIG_PPC64)	:= $(NO_MINIMAL_TOC)
8
9obj-y				:= fault.o mem.o pgtable.o mmap.o \
10				   init_$(CONFIG_WORD_SIZE).o \
11				   pgtable_$(CONFIG_WORD_SIZE).o
12obj-$(CONFIG_PPC_MMU_NOHASH)	+= mmu_context_nohash.o tlb_nohash.o \
13				   tlb_nohash_low.o
14obj-$(CONFIG_PPC_BOOK3E)	+= tlb_low_$(CONFIG_WORD_SIZE)e.o
15hash64-$(CONFIG_PPC_NATIVE)	:= hash_native_64.o
16obj-$(CONFIG_PPC_STD_MMU_64)	+= hash_utils_64.o slb_low.o slb.o $(hash64-y)
17obj-$(CONFIG_PPC_STD_MMU_32)	+= ppc_mmu_32.o hash_low_32.o
18obj-$(CONFIG_PPC_STD_MMU)	+= tlb_hash$(CONFIG_WORD_SIZE).o \
19				   mmu_context_hash$(CONFIG_WORD_SIZE).o
20ifeq ($(CONFIG_PPC_STD_MMU_64),y)
21obj-$(CONFIG_PPC_4K_PAGES)	+= hash64_4k.o
22obj-$(CONFIG_PPC_64K_PAGES)	+= hash64_64k.o
23endif
24obj-$(CONFIG_PPC_ICSWX)		+= icswx.o
25obj-$(CONFIG_PPC_ICSWX_PID)	+= icswx_pid.o
26obj-$(CONFIG_40x)		+= 40x_mmu.o
27obj-$(CONFIG_44x)		+= 44x_mmu.o
28obj-$(CONFIG_PPC_FSL_BOOK3E)	+= fsl_booke_mmu.o
29obj-$(CONFIG_NEED_MULTIPLE_NODES) += numa.o
30obj-$(CONFIG_PPC_SPLPAR)	+= vphn.o
31obj-$(CONFIG_PPC_MM_SLICES)	+= slice.o
32obj-y				+= hugetlbpage.o
33ifeq ($(CONFIG_HUGETLB_PAGE),y)
34obj-$(CONFIG_PPC_STD_MMU_64)	+= hugetlbpage-hash64.o
35obj-$(CONFIG_PPC_BOOK3E_MMU)	+= hugetlbpage-book3e.o
36endif
37obj-$(CONFIG_TRANSPARENT_HUGEPAGE) += hugepage-hash64.o
38obj-$(CONFIG_PPC_SUBPAGE_PROT)	+= subpage-prot.o
39obj-$(CONFIG_NOT_COHERENT_CACHE) += dma-noncoherent.o
40obj-$(CONFIG_HIGHMEM)		+= highmem.o
41obj-$(CONFIG_PPC_COPRO_BASE)	+= copro_fault.o
42obj-$(CONFIG_SPAPR_TCE_IOMMU)	+= mmu_context_iommu.o
43