xref: /linux/arch/arm/mm/Makefile (revision 3ad0876554cafa368f574d4d408468510543e9ff)
1# SPDX-License-Identifier: GPL-2.0
2#
3# Makefile for the linux arm-specific parts of the memory manager.
4#
5
6obj-y				:= extable.o fault.o init.o iomap.o
7obj-y				+= dma-mapping$(MMUEXT).o
8obj-$(CONFIG_MMU)		+= fault-armv.o flush.o idmap.o ioremap.o \
9				   mmap.o pgd.o mmu.o pageattr.o
10
11ifneq ($(CONFIG_MMU),y)
12obj-y				+= nommu.o
13obj-$(CONFIG_ARM_MPU)		+= pmsa-v7.o
14endif
15
16obj-$(CONFIG_ARM_PTDUMP_CORE)	+= dump.o
17obj-$(CONFIG_ARM_PTDUMP_DEBUGFS)	+= ptdump_debugfs.o
18obj-$(CONFIG_MODULES)		+= proc-syms.o
19obj-$(CONFIG_DEBUG_VIRTUAL)	+= physaddr.o
20
21obj-$(CONFIG_ALIGNMENT_TRAP)	+= alignment.o
22obj-$(CONFIG_HIGHMEM)		+= highmem.o
23obj-$(CONFIG_HUGETLB_PAGE)	+= hugetlbpage.o
24obj-$(CONFIG_ARM_PV_FIXUP)	+= pv-fixup-asm.o
25
26obj-$(CONFIG_CPU_ABRT_NOMMU)	+= abort-nommu.o
27obj-$(CONFIG_CPU_ABRT_EV4)	+= abort-ev4.o
28obj-$(CONFIG_CPU_ABRT_EV4T)	+= abort-ev4t.o
29obj-$(CONFIG_CPU_ABRT_LV4T)	+= abort-lv4t.o
30obj-$(CONFIG_CPU_ABRT_EV5T)	+= abort-ev5t.o
31obj-$(CONFIG_CPU_ABRT_EV5TJ)	+= abort-ev5tj.o
32obj-$(CONFIG_CPU_ABRT_EV6)	+= abort-ev6.o
33obj-$(CONFIG_CPU_ABRT_EV7)	+= abort-ev7.o
34
35AFLAGS_abort-ev6.o	:=-Wa,-march=armv6k
36AFLAGS_abort-ev7.o	:=-Wa,-march=armv7-a
37
38obj-$(CONFIG_CPU_PABRT_LEGACY)	+= pabort-legacy.o
39obj-$(CONFIG_CPU_PABRT_V6)	+= pabort-v6.o
40obj-$(CONFIG_CPU_PABRT_V7)	+= pabort-v7.o
41
42obj-$(CONFIG_CPU_CACHE_V4)	+= cache-v4.o
43obj-$(CONFIG_CPU_CACHE_V4WT)	+= cache-v4wt.o
44obj-$(CONFIG_CPU_CACHE_V4WB)	+= cache-v4wb.o
45obj-$(CONFIG_CPU_CACHE_V6)	+= cache-v6.o
46obj-$(CONFIG_CPU_CACHE_V7)	+= cache-v7.o
47obj-$(CONFIG_CPU_CACHE_FA)	+= cache-fa.o
48obj-$(CONFIG_CPU_CACHE_NOP)	+= cache-nop.o
49obj-$(CONFIG_CPU_CACHE_V7M)	+= cache-v7m.o
50
51AFLAGS_cache-v6.o	:=-Wa,-march=armv6
52AFLAGS_cache-v7.o	:=-Wa,-march=armv7-a
53AFLAGS_cache-v7m.o	:=-Wa,-march=armv7-m
54
55obj-$(CONFIG_CPU_COPY_V4WT)	+= copypage-v4wt.o
56obj-$(CONFIG_CPU_COPY_V4WB)	+= copypage-v4wb.o
57obj-$(CONFIG_CPU_COPY_FEROCEON)	+= copypage-feroceon.o
58obj-$(CONFIG_CPU_COPY_V6)	+= copypage-v6.o context.o
59obj-$(CONFIG_CPU_SA1100)	+= copypage-v4mc.o
60obj-$(CONFIG_CPU_XSCALE)	+= copypage-xscale.o
61obj-$(CONFIG_CPU_XSC3)		+= copypage-xsc3.o
62obj-$(CONFIG_CPU_COPY_FA)	+= copypage-fa.o
63
64CFLAGS_copypage-feroceon.o := -march=armv5te
65
66obj-$(CONFIG_CPU_TLB_V4WT)	+= tlb-v4.o
67obj-$(CONFIG_CPU_TLB_V4WB)	+= tlb-v4wb.o
68obj-$(CONFIG_CPU_TLB_V4WBI)	+= tlb-v4wbi.o
69obj-$(CONFIG_CPU_TLB_FEROCEON)	+= tlb-v4wbi.o	# reuse v4wbi TLB functions
70obj-$(CONFIG_CPU_TLB_V6)	+= tlb-v6.o
71obj-$(CONFIG_CPU_TLB_V7)	+= tlb-v7.o
72obj-$(CONFIG_CPU_TLB_FA)	+= tlb-fa.o
73
74AFLAGS_tlb-v6.o		:=-Wa,-march=armv6
75AFLAGS_tlb-v7.o		:=-Wa,-march=armv7-a
76
77obj-$(CONFIG_CPU_ARM7TDMI)	+= proc-arm7tdmi.o
78obj-$(CONFIG_CPU_ARM720T)	+= proc-arm720.o
79obj-$(CONFIG_CPU_ARM740T)	+= proc-arm740.o
80obj-$(CONFIG_CPU_ARM9TDMI)	+= proc-arm9tdmi.o
81obj-$(CONFIG_CPU_ARM920T)	+= proc-arm920.o
82obj-$(CONFIG_CPU_ARM922T)	+= proc-arm922.o
83obj-$(CONFIG_CPU_ARM925T)	+= proc-arm925.o
84obj-$(CONFIG_CPU_ARM926T)	+= proc-arm926.o
85obj-$(CONFIG_CPU_ARM940T)	+= proc-arm940.o
86obj-$(CONFIG_CPU_ARM946E)	+= proc-arm946.o
87obj-$(CONFIG_CPU_FA526)		+= proc-fa526.o
88obj-$(CONFIG_CPU_ARM1020)	+= proc-arm1020.o
89obj-$(CONFIG_CPU_ARM1020E)	+= proc-arm1020e.o
90obj-$(CONFIG_CPU_ARM1022)	+= proc-arm1022.o
91obj-$(CONFIG_CPU_ARM1026)	+= proc-arm1026.o
92obj-$(CONFIG_CPU_SA110)		+= proc-sa110.o
93obj-$(CONFIG_CPU_SA1100)	+= proc-sa1100.o
94obj-$(CONFIG_CPU_XSCALE)	+= proc-xscale.o
95obj-$(CONFIG_CPU_XSC3)		+= proc-xsc3.o
96obj-$(CONFIG_CPU_MOHAWK)	+= proc-mohawk.o
97obj-$(CONFIG_CPU_FEROCEON)	+= proc-feroceon.o
98obj-$(CONFIG_CPU_V6)		+= proc-v6.o
99obj-$(CONFIG_CPU_V6K)		+= proc-v6.o
100obj-$(CONFIG_CPU_V7)		+= proc-v7.o
101obj-$(CONFIG_CPU_V7M)		+= proc-v7m.o
102
103AFLAGS_proc-v6.o	:=-Wa,-march=armv6
104AFLAGS_proc-v7.o	:=-Wa,-march=armv7-a
105
106obj-$(CONFIG_OUTER_CACHE)	+= l2c-common.o
107obj-$(CONFIG_CACHE_B15_RAC)	+= cache-b15-rac.o
108obj-$(CONFIG_CACHE_FEROCEON_L2)	+= cache-feroceon-l2.o
109obj-$(CONFIG_CACHE_L2X0)	+= cache-l2x0.o l2c-l2x0-resume.o
110obj-$(CONFIG_CACHE_L2X0_PMU)	+= cache-l2x0-pmu.o
111obj-$(CONFIG_CACHE_XSC3L2)	+= cache-xsc3l2.o
112obj-$(CONFIG_CACHE_TAUROS2)	+= cache-tauros2.o
113obj-$(CONFIG_CACHE_UNIPHIER)	+= cache-uniphier.o
114