Many files in arch/powerpc/mm are only for book3S64. This patch creates a subdirectory for them.
Signed-off-by: Christophe Leroy <christophe.le...@c-s.fr> --- arch/powerpc/mm/Makefile | 25 +++---------------- arch/powerpc/mm/book3s64/Makefile | 28 ++++++++++++++++++++++ arch/powerpc/mm/{ => book3s64}/hash64_4k.c | 0 arch/powerpc/mm/{ => book3s64}/hash64_64k.c | 0 arch/powerpc/mm/{ => book3s64}/hash_native_64.c | 0 arch/powerpc/mm/{ => book3s64}/hash_utils_64.c | 0 arch/powerpc/mm/{ => book3s64}/hugepage-hash64.c | 0 .../powerpc/mm/{ => book3s64}/hugetlbpage-hash64.c | 0 arch/powerpc/mm/{ => book3s64}/hugetlbpage-radix.c | 0 .../mm/{ => book3s64}/mmu_context_book3s64.c | 0 arch/powerpc/mm/{ => book3s64}/mmu_context_iommu.c | 0 arch/powerpc/mm/{ => book3s64}/pgtable-book3s64.c | 0 arch/powerpc/mm/{ => book3s64}/pgtable-hash64.c | 0 arch/powerpc/mm/{ => book3s64}/pgtable-radix.c | 0 arch/powerpc/mm/{ => book3s64}/pkeys.c | 0 arch/powerpc/mm/{ => book3s64}/slb.c | 0 arch/powerpc/mm/{ => book3s64}/subpage-prot.c | 0 arch/powerpc/mm/{ => book3s64}/tlb-radix.c | 0 arch/powerpc/mm/{ => book3s64}/tlb_hash64.c | 0 arch/powerpc/mm/{ => book3s64}/vphn.c | 0 arch/powerpc/mm/{ => book3s64}/vphn.h | 0 arch/powerpc/mm/numa.c | 2 +- 22 files changed, 32 insertions(+), 23 deletions(-) create mode 100644 arch/powerpc/mm/book3s64/Makefile rename arch/powerpc/mm/{ => book3s64}/hash64_4k.c (100%) rename arch/powerpc/mm/{ => book3s64}/hash64_64k.c (100%) rename arch/powerpc/mm/{ => book3s64}/hash_native_64.c (100%) rename arch/powerpc/mm/{ => book3s64}/hash_utils_64.c (100%) rename arch/powerpc/mm/{ => book3s64}/hugepage-hash64.c (100%) rename arch/powerpc/mm/{ => book3s64}/hugetlbpage-hash64.c (100%) rename arch/powerpc/mm/{ => book3s64}/hugetlbpage-radix.c (100%) rename arch/powerpc/mm/{ => book3s64}/mmu_context_book3s64.c (100%) rename arch/powerpc/mm/{ => book3s64}/mmu_context_iommu.c (100%) rename arch/powerpc/mm/{ => book3s64}/pgtable-book3s64.c (100%) rename arch/powerpc/mm/{ => book3s64}/pgtable-hash64.c (100%) rename arch/powerpc/mm/{ => book3s64}/pgtable-radix.c (100%) rename arch/powerpc/mm/{ => book3s64}/pkeys.c (100%) rename arch/powerpc/mm/{ => book3s64}/slb.c (100%) rename arch/powerpc/mm/{ => book3s64}/subpage-prot.c (100%) rename arch/powerpc/mm/{ => book3s64}/tlb-radix.c (100%) rename arch/powerpc/mm/{ => book3s64}/tlb_hash64.c (100%) rename arch/powerpc/mm/{ => book3s64}/vphn.c (100%) rename arch/powerpc/mm/{ => book3s64}/vphn.h (100%) diff --git a/arch/powerpc/mm/Makefile b/arch/powerpc/mm/Makefile index 3c1bd9fa23cd..a137fdf775e2 100644 --- a/arch/powerpc/mm/Makefile +++ b/arch/powerpc/mm/Makefile @@ -5,53 +5,34 @@ ccflags-$(CONFIG_PPC64) := $(NO_MINIMAL_TOC) -CFLAGS_REMOVE_slb.o = $(CC_FLAGS_FTRACE) - obj-y := fault.o mem.o pgtable.o mmap.o \ init_$(BITS).o pgtable_$(BITS).o \ init-common.o mmu_context.o drmem.o obj-$(CONFIG_PPC_MMU_NOHASH) += mmu_context_nohash.o tlb_nohash.o \ tlb_nohash_low.o obj-$(CONFIG_PPC_BOOK3E) += tlb_low_$(BITS)e.o -hash64-$(CONFIG_PPC_NATIVE) := hash_native_64.o obj-$(CONFIG_PPC_BOOK3E_64) += pgtable-book3e.o -obj-$(CONFIG_PPC_BOOK3S_64) += pgtable-hash64.o hash_utils_64.o slb.o \ - $(hash64-y) mmu_context_book3s64.o \ - pgtable-book3s64.o pgtable-frag.o +obj-$(CONFIG_PPC_BOOK3S_64) += book3s64/ +obj-$(CONFIG_PPC_BOOK3S_64) += pgtable-frag.o obj-$(CONFIG_PPC32) += pgtable-frag.o -obj-$(CONFIG_PPC_RADIX_MMU) += pgtable-radix.o tlb-radix.o obj-$(CONFIG_PPC_BOOK3S_32) += ppc_mmu_32.o hash_low_32.o mmu_context_hash32.o -obj-$(CONFIG_PPC_BOOK3S) += tlb_hash$(BITS).o -ifdef CONFIG_PPC_BOOK3S_64 -obj-$(CONFIG_PPC_4K_PAGES) += hash64_4k.o -obj-$(CONFIG_PPC_64K_PAGES) += hash64_64k.o -endif +obj-$(CONFIG_PPC_BOOK3S_32) += tlb_hash32.o obj-$(CONFIG_40x) += 40x_mmu.o obj-$(CONFIG_44x) += 44x_mmu.o obj-$(CONFIG_PPC_8xx) += 8xx_mmu.o obj-$(CONFIG_PPC_FSL_BOOK3E) += fsl_booke_mmu.o obj-$(CONFIG_NEED_MULTIPLE_NODES) += numa.o -obj-$(CONFIG_PPC_SPLPAR) += vphn.o obj-$(CONFIG_PPC_MM_SLICES) += slice.o obj-y += hugetlbpage.o ifdef CONFIG_HUGETLB_PAGE -obj-$(CONFIG_PPC_BOOK3S_64) += hugetlbpage-hash64.o -obj-$(CONFIG_PPC_RADIX_MMU) += hugetlbpage-radix.o obj-$(CONFIG_PPC_BOOK3E_MMU) += hugetlbpage-book3e.o endif -obj-$(CONFIG_TRANSPARENT_HUGEPAGE) += hugepage-hash64.o -obj-$(CONFIG_PPC_SUBPAGE_PROT) += subpage-prot.o obj-$(CONFIG_NOT_COHERENT_CACHE) += dma-noncoherent.o obj-$(CONFIG_HIGHMEM) += highmem.o obj-$(CONFIG_PPC_COPRO_BASE) += copro_fault.o -obj-$(CONFIG_SPAPR_TCE_IOMMU) += mmu_context_iommu.o obj-$(CONFIG_PPC_PTDUMP) += ptdump/ -obj-$(CONFIG_PPC_MEM_KEYS) += pkeys.o # Disable kcov instrumentation on sensitive code # This is necessary for booting with kcov enabled on book3e machines KCOV_INSTRUMENT_tlb_nohash.o := n KCOV_INSTRUMENT_fsl_booke_mmu.o := n - -# Instrumenting the SLB fault path can lead to duplicate SLB entries -KCOV_INSTRUMENT_slb.o := n diff --git a/arch/powerpc/mm/book3s64/Makefile b/arch/powerpc/mm/book3s64/Makefile new file mode 100644 index 000000000000..cfea527b66d9 --- /dev/null +++ b/arch/powerpc/mm/book3s64/Makefile @@ -0,0 +1,28 @@ +# SPDX-License-Identifier: GPL-2.0 +# +# Makefile for the linux ppc-specific parts of the memory manager. +# + +ccflags-y := $(NO_MINIMAL_TOC) + +CFLAGS_REMOVE_slb.o = $(CC_FLAGS_FTRACE) + +obj-y += pgtable-hash64.o hash_utils_64.o slb.o \ + mmu_context_book3s64.o pgtable-book3s64.o \ + tlb_hash64.o +obj-$(CONFIG_PPC_NATIVE) += hash_native_64.o +obj-$(CONFIG_PPC_RADIX_MMU) += pgtable-radix.o tlb-radix.o +obj-$(CONFIG_PPC_4K_PAGES) += hash64_4k.o +obj-$(CONFIG_PPC_64K_PAGES) += hash64_64k.o +obj-$(CONFIG_PPC_SPLPAR) += vphn.o +obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage-hash64.o +ifdef CONFIG_HUGETLB_PAGE +obj-$(CONFIG_PPC_RADIX_MMU) += hugetlbpage-radix.o +endif +obj-$(CONFIG_TRANSPARENT_HUGEPAGE) += hugepage-hash64.o +obj-$(CONFIG_PPC_SUBPAGE_PROT) += subpage-prot.o +obj-$(CONFIG_SPAPR_TCE_IOMMU) += mmu_context_iommu.o +obj-$(CONFIG_PPC_MEM_KEYS) += pkeys.o + +# Instrumenting the SLB fault path can lead to duplicate SLB entries +KCOV_INSTRUMENT_slb.o := n diff --git a/arch/powerpc/mm/hash64_4k.c b/arch/powerpc/mm/book3s64/hash64_4k.c similarity index 100% rename from arch/powerpc/mm/hash64_4k.c rename to arch/powerpc/mm/book3s64/hash64_4k.c diff --git a/arch/powerpc/mm/hash64_64k.c b/arch/powerpc/mm/book3s64/hash64_64k.c similarity index 100% rename from arch/powerpc/mm/hash64_64k.c rename to arch/powerpc/mm/book3s64/hash64_64k.c diff --git a/arch/powerpc/mm/hash_native_64.c b/arch/powerpc/mm/book3s64/hash_native_64.c similarity index 100% rename from arch/powerpc/mm/hash_native_64.c rename to arch/powerpc/mm/book3s64/hash_native_64.c diff --git a/arch/powerpc/mm/hash_utils_64.c b/arch/powerpc/mm/book3s64/hash_utils_64.c similarity index 100% rename from arch/powerpc/mm/hash_utils_64.c rename to arch/powerpc/mm/book3s64/hash_utils_64.c diff --git a/arch/powerpc/mm/hugepage-hash64.c b/arch/powerpc/mm/book3s64/hugepage-hash64.c similarity index 100% rename from arch/powerpc/mm/hugepage-hash64.c rename to arch/powerpc/mm/book3s64/hugepage-hash64.c diff --git a/arch/powerpc/mm/hugetlbpage-hash64.c b/arch/powerpc/mm/book3s64/hugetlbpage-hash64.c similarity index 100% rename from arch/powerpc/mm/hugetlbpage-hash64.c rename to arch/powerpc/mm/book3s64/hugetlbpage-hash64.c diff --git a/arch/powerpc/mm/hugetlbpage-radix.c b/arch/powerpc/mm/book3s64/hugetlbpage-radix.c similarity index 100% rename from arch/powerpc/mm/hugetlbpage-radix.c rename to arch/powerpc/mm/book3s64/hugetlbpage-radix.c diff --git a/arch/powerpc/mm/mmu_context_book3s64.c b/arch/powerpc/mm/book3s64/mmu_context_book3s64.c similarity index 100% rename from arch/powerpc/mm/mmu_context_book3s64.c rename to arch/powerpc/mm/book3s64/mmu_context_book3s64.c diff --git a/arch/powerpc/mm/mmu_context_iommu.c b/arch/powerpc/mm/book3s64/mmu_context_iommu.c similarity index 100% rename from arch/powerpc/mm/mmu_context_iommu.c rename to arch/powerpc/mm/book3s64/mmu_context_iommu.c diff --git a/arch/powerpc/mm/pgtable-book3s64.c b/arch/powerpc/mm/book3s64/pgtable-book3s64.c similarity index 100% rename from arch/powerpc/mm/pgtable-book3s64.c rename to arch/powerpc/mm/book3s64/pgtable-book3s64.c diff --git a/arch/powerpc/mm/pgtable-hash64.c b/arch/powerpc/mm/book3s64/pgtable-hash64.c similarity index 100% rename from arch/powerpc/mm/pgtable-hash64.c rename to arch/powerpc/mm/book3s64/pgtable-hash64.c diff --git a/arch/powerpc/mm/pgtable-radix.c b/arch/powerpc/mm/book3s64/pgtable-radix.c similarity index 100% rename from arch/powerpc/mm/pgtable-radix.c rename to arch/powerpc/mm/book3s64/pgtable-radix.c diff --git a/arch/powerpc/mm/pkeys.c b/arch/powerpc/mm/book3s64/pkeys.c similarity index 100% rename from arch/powerpc/mm/pkeys.c rename to arch/powerpc/mm/book3s64/pkeys.c diff --git a/arch/powerpc/mm/slb.c b/arch/powerpc/mm/book3s64/slb.c similarity index 100% rename from arch/powerpc/mm/slb.c rename to arch/powerpc/mm/book3s64/slb.c diff --git a/arch/powerpc/mm/subpage-prot.c b/arch/powerpc/mm/book3s64/subpage-prot.c similarity index 100% rename from arch/powerpc/mm/subpage-prot.c rename to arch/powerpc/mm/book3s64/subpage-prot.c diff --git a/arch/powerpc/mm/tlb-radix.c b/arch/powerpc/mm/book3s64/tlb-radix.c similarity index 100% rename from arch/powerpc/mm/tlb-radix.c rename to arch/powerpc/mm/book3s64/tlb-radix.c diff --git a/arch/powerpc/mm/tlb_hash64.c b/arch/powerpc/mm/book3s64/tlb_hash64.c similarity index 100% rename from arch/powerpc/mm/tlb_hash64.c rename to arch/powerpc/mm/book3s64/tlb_hash64.c diff --git a/arch/powerpc/mm/vphn.c b/arch/powerpc/mm/book3s64/vphn.c similarity index 100% rename from arch/powerpc/mm/vphn.c rename to arch/powerpc/mm/book3s64/vphn.c diff --git a/arch/powerpc/mm/vphn.h b/arch/powerpc/mm/book3s64/vphn.h similarity index 100% rename from arch/powerpc/mm/vphn.h rename to arch/powerpc/mm/book3s64/vphn.h diff --git a/arch/powerpc/mm/numa.c b/arch/powerpc/mm/numa.c index f976676004ad..6ef516718da3 100644 --- a/arch/powerpc/mm/numa.c +++ b/arch/powerpc/mm/numa.c @@ -1063,7 +1063,7 @@ u64 memory_hotplug_max(void) /* Virtual Processor Home Node (VPHN) support */ #ifdef CONFIG_PPC_SPLPAR -#include "vphn.h" +#include "book3s64/vphn.h" struct topology_update_data { struct topology_update_data *next; -- 2.13.3