1# SPDX-License-Identifier: GPL-2.0
2#
3# Makefile for the Linux SuperH-specific parts of the memory manager.
4#
5
6obj-y			:= alignment.o cache.o init.o consistent.o mmap.o
7
8cacheops-$(CONFIG_CPU_J2)		:= cache-j2.o
9cacheops-$(CONFIG_CPU_SUBTYPE_SH7619)	:= cache-sh2.o
10cacheops-$(CONFIG_CPU_SH2A)		:= cache-sh2a.o
11cacheops-$(CONFIG_CPU_SH3)		:= cache-sh3.o
12cacheops-$(CONFIG_CPU_SH4)		:= cache-sh4.o flush-sh4.o
13cacheops-$(CONFIG_SH7705_CACHE_32KB)	+= cache-sh7705.o
14cacheops-$(CONFIG_CPU_SHX3)		+= cache-shx3.o
15
16obj-y			+= $(cacheops-y)
17
18mmu-y			:= nommu.o extable_32.o
19mmu-$(CONFIG_MMU)	:= extable_32.o fault.o ioremap.o kmap.o \
20			   pgtable.o tlbex_32.o tlbflush_32.o
21
22obj-y			+= $(mmu-y)
23
24debugfs-y			:= asids-debugfs.o
25ifndef CONFIG_CACHE_OFF
26debugfs-$(CONFIG_CPU_SH4)	+= cache-debugfs.o
27endif
28
29ifdef CONFIG_MMU
30debugfs-$(CONFIG_CPU_SH4)	+= tlb-debugfs.o
31tlb-$(CONFIG_CPU_SH3)		:= tlb-sh3.o
32tlb-$(CONFIG_CPU_SH4)		:= tlb-sh4.o tlb-urb.o
33tlb-$(CONFIG_CPU_HAS_PTEAEX)	:= tlb-pteaex.o tlb-urb.o
34obj-y				+= $(tlb-y)
35endif
36
37obj-$(CONFIG_DEBUG_FS)		+= $(debugfs-y)
38obj-$(CONFIG_HUGETLB_PAGE)	+= hugetlbpage.o
39obj-$(CONFIG_PMB)		+= pmb.o
40obj-$(CONFIG_NUMA)		+= numa.o
41obj-$(CONFIG_IOREMAP_FIXED)	+= ioremap_fixed.o
42obj-$(CONFIG_UNCACHED_MAPPING)	+= uncached.o
43obj-$(CONFIG_HAVE_SRAM_POOL)	+= sram.o
44
45GCOV_PROFILE_pmb.o := n
46