From patchwork Wed Jun 8 08:34:19 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ohad Ben Cohen X-Patchwork-Id: 861062 X-Patchwork-Delegate: tony@atomide.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.4) with ESMTP id p588bTId008581 for ; Wed, 8 Jun 2011 08:37:29 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754920Ab1FHIf7 (ORCPT ); Wed, 8 Jun 2011 04:35:59 -0400 Received: from mail-ww0-f44.google.com ([74.125.82.44]:58874 "EHLO mail-ww0-f44.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754360Ab1FHIf4 (ORCPT ); Wed, 8 Jun 2011 04:35:56 -0400 Received: by mail-ww0-f44.google.com with SMTP id 36so310820wwa.1 for ; Wed, 08 Jun 2011 01:35:55 -0700 (PDT) Received: by 10.227.205.19 with SMTP id fo19mr1919515wbb.58.1307522155256; Wed, 08 Jun 2011 01:35:55 -0700 (PDT) Received: from localhost.localdomain (46-116-119-47.bb.netvision.net.il [46.116.119.47]) by mx.google.com with ESMTPS id fl19sm223759wbb.49.2011.06.08.01.35.53 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 08 Jun 2011 01:35:54 -0700 (PDT) From: Ohad Ben-Cohen To: Joerg Roedel Cc: , , , Arnd Bergmann , David Brown , David Woodhouse , , , Ohad Ben-Cohen Subject: [PATCH 1/4] drivers: iommu: move to a dedicated folder Date: Wed, 8 Jun 2011 11:34:19 +0300 Message-Id: <1307522062-19273-2-git-send-email-ohad@wizery.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1307522062-19273-1-git-send-email-ohad@wizery.com> References: <1307522062-19273-1-git-send-email-ohad@wizery.com> Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Wed, 08 Jun 2011 08:37:29 +0000 (UTC) Create a dedicated folder for iommu drivers, and move the base iommu implementation over there. Grouping the various iommu drivers in a single location will help finding similar problems shared by different platforms, so they could be solved once, in the iommu framework, instead of solved diff --git a/drivers/base/iommu.c b/drivers/iommu/iommu.c similarity index 100% rename from drivers/base/iommu.c rename to drivers/iommu/iommu.c differently (or duplicated) in each driver. Signed-off-by: Ohad Ben-Cohen --- arch/arm/mach-msm/Kconfig | 3 --- arch/x86/Kconfig | 5 ++--- drivers/Kconfig | 2 ++ drivers/Makefile | 1 + drivers/base/Makefile | 1 - drivers/iommu/Kconfig | 3 +++ drivers/iommu/Makefile | 1 + drivers/{base => iommu}/iommu.c | 0 8 files changed, 9 insertions(+), 7 deletions(-) create mode 100644 drivers/iommu/Kconfig create mode 100644 drivers/iommu/Makefile rename drivers/{base => iommu}/iommu.c (100%) diff --git a/arch/arm/mach-msm/Kconfig b/arch/arm/mach-msm/Kconfig index 1516896..efb7b7d 100644 --- a/arch/arm/mach-msm/Kconfig +++ b/arch/arm/mach-msm/Kconfig @@ -205,9 +205,6 @@ config MSM_GPIOMUX config MSM_V2_TLMM bool -config IOMMU_API - bool - config MSM_SCM bool endif diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index da34972..460d573 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -685,6 +685,7 @@ config AMD_IOMMU select SWIOTLB select PCI_MSI select PCI_IOV + select IOMMU_API depends on X86_64 && PCI && ACPI ---help--- With this option you can enable support for AMD IOMMU hardware in @@ -720,9 +721,6 @@ config SWIOTLB config IOMMU_HELPER def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU) -config IOMMU_API - def_bool (AMD_IOMMU || DMAR) - config MAXSMP bool "Enable Maximum number of SMP Processors and NUMA Nodes" depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL @@ -1945,6 +1943,7 @@ config PCI_CNB20LE_QUIRK config DMAR bool "Support for DMA Remapping Devices (EXPERIMENTAL)" depends on PCI_MSI && ACPI && EXPERIMENTAL + select IOMMU_API help DMA remapping (DMAR) devices support enables independent address translations for Direct Memory Access (DMA) from devices. diff --git a/drivers/Kconfig b/drivers/Kconfig index 3bb154d..9d51318 100644 --- a/drivers/Kconfig +++ b/drivers/Kconfig @@ -126,4 +126,6 @@ source "drivers/hwspinlock/Kconfig" source "drivers/clocksource/Kconfig" +source "drivers/iommu/Kconfig" + endmenu diff --git a/drivers/Makefile b/drivers/Makefile index 09f3232..2f7a71a 100644 --- a/drivers/Makefile +++ b/drivers/Makefile @@ -122,3 +122,4 @@ obj-y += ieee802154/ obj-y += clk/ obj-$(CONFIG_HWSPINLOCK) += hwspinlock/ +obj-$(CONFIG_IOMMU_API) += iommu/ diff --git a/drivers/base/Makefile b/drivers/base/Makefile index 4c5701c..5ab0d07 100644 --- a/drivers/base/Makefile +++ b/drivers/base/Makefile @@ -13,7 +13,6 @@ obj-$(CONFIG_FW_LOADER) += firmware_class.o obj-$(CONFIG_NUMA) += node.o obj-$(CONFIG_MEMORY_HOTPLUG_SPARSE) += memory.o obj-$(CONFIG_SMP) += topology.o -obj-$(CONFIG_IOMMU_API) += iommu.o ifeq ($(CONFIG_SYSFS),y) obj-$(CONFIG_MODULES) += module.o endif diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig new file mode 100644 index 0000000..2c5dfb4 --- /dev/null +++ b/drivers/iommu/Kconfig @@ -0,0 +1,3 @@ +# IOMMU_API always gets selected by whoever wants it. +config IOMMU_API + bool diff --git a/drivers/iommu/Makefile b/drivers/iommu/Makefile new file mode 100644 index 0000000..241ba4c --- /dev/null +++ b/drivers/iommu/Makefile @@ -0,0 +1 @@ +obj-$(CONFIG_IOMMU_API) += iommu.o