[PATCH] iommu/arm-smmu: Move Arm SMMU drivers into their own subdirectory

From: Will Deacon
Date: Fri Jul 24 2020 - 07:43:20 EST


The Arm SMMU drivers are getting fat on vendor value-add, so move them
to their own subdirectory out of the way of the other IOMMU drivers.

Suggested-by: Joerg Roedel <joro@xxxxxxxxxx>
Signed-off-by: Will Deacon <will@xxxxxxxxxx>
---
MAINTAINERS | 2 +-
drivers/iommu/Makefile | 5 +----
drivers/iommu/arm/Makefile | 2 ++
drivers/iommu/arm/arm-smmu-v3/Makefile | 2 ++
drivers/iommu/{ => arm/arm-smmu-v3}/arm-smmu-v3.c | 0
drivers/iommu/arm/arm-smmu/Makefile | 4 ++++
drivers/iommu/{ => arm/arm-smmu}/arm-smmu-impl.c | 0
drivers/iommu/{ => arm/arm-smmu}/arm-smmu-nvidia.c | 0
drivers/iommu/{ => arm/arm-smmu}/arm-smmu-qcom.c | 0
drivers/iommu/{ => arm/arm-smmu}/arm-smmu.c | 0
drivers/iommu/{ => arm/arm-smmu}/arm-smmu.h | 0
drivers/iommu/{ => arm/arm-smmu}/qcom_iommu.c | 0
12 files changed, 10 insertions(+), 5 deletions(-)
create mode 100644 drivers/iommu/arm/Makefile
create mode 100644 drivers/iommu/arm/arm-smmu-v3/Makefile
rename drivers/iommu/{ => arm/arm-smmu-v3}/arm-smmu-v3.c (100%)
create mode 100644 drivers/iommu/arm/arm-smmu/Makefile
rename drivers/iommu/{ => arm/arm-smmu}/arm-smmu-impl.c (100%)
rename drivers/iommu/{ => arm/arm-smmu}/arm-smmu-nvidia.c (100%)
rename drivers/iommu/{ => arm/arm-smmu}/arm-smmu-qcom.c (100%)
rename drivers/iommu/{ => arm/arm-smmu}/arm-smmu.c (100%)
rename drivers/iommu/{ => arm/arm-smmu}/arm-smmu.h (100%)
rename drivers/iommu/{ => arm/arm-smmu}/qcom_iommu.c (100%)

diff --git a/MAINTAINERS b/MAINTAINERS
index ee2c0ba13a0f..6383801828c7 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1498,7 +1498,7 @@ R: Robin Murphy <robin.murphy@xxxxxxx>
L: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx (moderated for non-subscribers)
S: Maintained
F: Documentation/devicetree/bindings/iommu/arm,smmu*
-F: drivers/iommu/arm-smmu*
+F: drivers/iommu/arm/
F: drivers/iommu/io-pgtable-arm-v7s.c
F: drivers/iommu/io-pgtable-arm.c

diff --git a/drivers/iommu/Makefile b/drivers/iommu/Makefile
index 2b8203db73ec..d971cffc810b 100644
--- a/drivers/iommu/Makefile
+++ b/drivers/iommu/Makefile
@@ -1,4 +1,5 @@
# SPDX-License-Identifier: GPL-2.0
+obj-y += arm/
obj-$(CONFIG_IOMMU_API) += iommu.o
obj-$(CONFIG_IOMMU_API) += iommu-traces.o
obj-$(CONFIG_IOMMU_API) += iommu-sysfs.o
@@ -14,9 +15,6 @@ obj-$(CONFIG_MSM_IOMMU) += msm_iommu.o
obj-$(CONFIG_AMD_IOMMU) += amd/iommu.o amd/init.o amd/quirks.o
obj-$(CONFIG_AMD_IOMMU_DEBUGFS) += amd/debugfs.o
obj-$(CONFIG_AMD_IOMMU_V2) += amd/iommu_v2.o
-obj-$(CONFIG_ARM_SMMU) += arm_smmu.o
-arm_smmu-objs += arm-smmu.o arm-smmu-impl.o arm-smmu-nvidia.o arm-smmu-qcom.o
-obj-$(CONFIG_ARM_SMMU_V3) += arm-smmu-v3.o
obj-$(CONFIG_DMAR_TABLE) += intel/dmar.o
obj-$(CONFIG_INTEL_IOMMU) += intel/iommu.o intel/pasid.o
obj-$(CONFIG_INTEL_IOMMU) += intel/trace.o
@@ -35,6 +33,5 @@ obj-$(CONFIG_TEGRA_IOMMU_SMMU) += tegra-smmu.o
obj-$(CONFIG_EXYNOS_IOMMU) += exynos-iommu.o
obj-$(CONFIG_FSL_PAMU) += fsl_pamu.o fsl_pamu_domain.o
obj-$(CONFIG_S390_IOMMU) += s390-iommu.o
-obj-$(CONFIG_QCOM_IOMMU) += qcom_iommu.o
obj-$(CONFIG_HYPERV_IOMMU) += hyperv-iommu.o
obj-$(CONFIG_VIRTIO_IOMMU) += virtio-iommu.o
diff --git a/drivers/iommu/arm/Makefile b/drivers/iommu/arm/Makefile
new file mode 100644
index 000000000000..0f9efeab709f
--- /dev/null
+++ b/drivers/iommu/arm/Makefile
@@ -0,0 +1,2 @@
+# SPDX-License-Identifier: GPL-2.0
+obj-y += arm-smmu/ arm-smmu-v3/
diff --git a/drivers/iommu/arm/arm-smmu-v3/Makefile b/drivers/iommu/arm/arm-smmu-v3/Makefile
new file mode 100644
index 000000000000..569e24e9f162
--- /dev/null
+++ b/drivers/iommu/arm/arm-smmu-v3/Makefile
@@ -0,0 +1,2 @@
+# SPDX-License-Identifier: GPL-2.0
+obj-$(CONFIG_ARM_SMMU_V3) += arm-smmu-v3.o
diff --git a/drivers/iommu/arm-smmu-v3.c b/drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
similarity index 100%
rename from drivers/iommu/arm-smmu-v3.c
rename to drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c
diff --git a/drivers/iommu/arm/arm-smmu/Makefile b/drivers/iommu/arm/arm-smmu/Makefile
new file mode 100644
index 000000000000..e240a7bcf310
--- /dev/null
+++ b/drivers/iommu/arm/arm-smmu/Makefile
@@ -0,0 +1,4 @@
+# SPDX-License-Identifier: GPL-2.0
+obj-$(CONFIG_QCOM_IOMMU) += qcom_iommu.o
+obj-$(CONFIG_ARM_SMMU) += arm_smmu.o
+arm_smmu-objs += arm-smmu.o arm-smmu-impl.o arm-smmu-nvidia.o arm-smmu-qcom.o
diff --git a/drivers/iommu/arm-smmu-impl.c b/drivers/iommu/arm/arm-smmu/arm-smmu-impl.c
similarity index 100%
rename from drivers/iommu/arm-smmu-impl.c
rename to drivers/iommu/arm/arm-smmu/arm-smmu-impl.c
diff --git a/drivers/iommu/arm-smmu-nvidia.c b/drivers/iommu/arm/arm-smmu/arm-smmu-nvidia.c
similarity index 100%
rename from drivers/iommu/arm-smmu-nvidia.c
rename to drivers/iommu/arm/arm-smmu/arm-smmu-nvidia.c
diff --git a/drivers/iommu/arm-smmu-qcom.c b/drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c
similarity index 100%
rename from drivers/iommu/arm-smmu-qcom.c
rename to drivers/iommu/arm/arm-smmu/arm-smmu-qcom.c
diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm/arm-smmu/arm-smmu.c
similarity index 100%
rename from drivers/iommu/arm-smmu.c
rename to drivers/iommu/arm/arm-smmu/arm-smmu.c
diff --git a/drivers/iommu/arm-smmu.h b/drivers/iommu/arm/arm-smmu/arm-smmu.h
similarity index 100%
rename from drivers/iommu/arm-smmu.h
rename to drivers/iommu/arm/arm-smmu/arm-smmu.h
diff --git a/drivers/iommu/qcom_iommu.c b/drivers/iommu/arm/arm-smmu/qcom_iommu.c
similarity index 100%
rename from drivers/iommu/qcom_iommu.c
rename to drivers/iommu/arm/arm-smmu/qcom_iommu.c
--
2.28.0.rc0.142.g3c755180ce-goog