Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754075AbdDCRWi (ORCPT ); Mon, 3 Apr 2017 13:22:38 -0400 Received: from lelnx193.ext.ti.com ([198.47.27.77]:37853 "EHLO lelnx193.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752225AbdDCRWh (ORCPT ); Mon, 3 Apr 2017 13:22:37 -0400 Subject: Re: [PATCH 1/5] iommu/omap: Move data structures to omap-iommu.h To: Joerg Roedel , References: <1490962248-12602-1-git-send-email-joro@8bytes.org> <1490962248-12602-2-git-send-email-joro@8bytes.org> CC: , Joerg Roedel From: Suman Anna Message-ID: <43fce859-b192-3f23-f3bd-cf2ed869ca30@ti.com> Date: Mon, 3 Apr 2017 12:22:27 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 MIME-Version: 1.0 In-Reply-To: <1490962248-12602-2-git-send-email-joro@8bytes.org> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 4142 Lines: 131 On 03/31/2017 07:10 AM, Joerg Roedel wrote: > From: Joerg Roedel > > The internal data-structures are scattered over various > header and C files. Consolidate them in omap-iommu.h. > > Signed-off-by: Joerg Roedel > --- > drivers/iommu/omap-iommu.c | 16 ---------------- > drivers/iommu/omap-iommu.h | 32 ++++++++++++++++++++++++++++++++ > include/linux/platform_data/iommu-omap.h | 15 --------------- > 3 files changed, 32 insertions(+), 31 deletions(-) > > diff --git a/drivers/iommu/omap-iommu.c b/drivers/iommu/omap-iommu.c > index e2583cc..e9c9b08 100644 > --- a/drivers/iommu/omap-iommu.c > +++ b/drivers/iommu/omap-iommu.c > @@ -42,22 +42,6 @@ > /* bitmap of the page sizes currently supported */ > #define OMAP_IOMMU_PGSIZES (SZ_4K | SZ_64K | SZ_1M | SZ_16M) > > -/** > - * struct omap_iommu_domain - omap iommu domain > - * @pgtable: the page table > - * @iommu_dev: an omap iommu device attached to this domain. only a single > - * iommu device can be attached for now. > - * @dev: Device using this domain. > - * @lock: domain lock, should be taken when attaching/detaching > - */ > -struct omap_iommu_domain { > - u32 *pgtable; > - struct omap_iommu *iommu_dev; > - struct device *dev; > - spinlock_t lock; > - struct iommu_domain domain; > -}; > - > #define MMU_LOCK_BASE_SHIFT 10 > #define MMU_LOCK_BASE_MASK (0x1f << MMU_LOCK_BASE_SHIFT) > #define MMU_LOCK_BASE(x) \ > diff --git a/drivers/iommu/omap-iommu.h b/drivers/iommu/omap-iommu.h > index 59628e5..3cd414a 100644 > --- a/drivers/iommu/omap-iommu.h > +++ b/drivers/iommu/omap-iommu.h > @@ -14,6 +14,7 @@ > #define _OMAP_IOMMU_H > > #include > +#include > > #define for_each_iotlb_cr(obj, n, __i, cr) \ > for (__i = 0; \ > @@ -27,6 +28,22 @@ struct iotlb_entry { > u32 endian, elsz, mixed; > }; > > +/** > + * struct omap_iommu_domain - omap iommu domain > + * @pgtable: the page table > + * @iommu_dev: an omap iommu device attached to this domain. only a single > + * iommu device can be attached for now. > + * @dev: Device using this domain. > + * @lock: domain lock, should be taken when attaching/detaching > + */ > +struct omap_iommu_domain { > + u32 *pgtable; > + struct omap_iommu *iommu_dev; > + struct device *dev; > + spinlock_t lock; > + struct iommu_domain domain; > +}; > + > struct omap_iommu { > const char *name; > void __iomem *regbase; > @@ -52,6 +69,21 @@ struct omap_iommu { > u32 id; > }; > > +/** > + * struct iommu_arch_data - omap iommu private data > + * @name: name of the iommu device > + * @iommu_dev: handle of the iommu device > + * > + * This is an omap iommu private data object, which binds an iommu user > + * to its iommu device. This object should be placed at the iommu user's > + * dev_archdata so generic IOMMU API can be used without having to > + * utilize omap-specific plumbing anymore. > + */ > +struct omap_iommu_arch_data { > + const char *name; > + struct omap_iommu *iommu_dev; > +}; > + > struct cr_regs { > u32 cam; > u32 ram; > diff --git a/include/linux/platform_data/iommu-omap.h b/include/linux/platform_data/iommu-omap.h > index 0496d17..8c2a77c 100644 > --- a/include/linux/platform_data/iommu-omap.h > +++ b/include/linux/platform_data/iommu-omap.h > @@ -14,21 +14,6 @@ > > #define MMU_REG_SIZE 256 This define can be dropped as well since you are already modifying this file, it's already defined in drivers/iommu/omap-iommu.h. regards Suman > > -/** > - * struct iommu_arch_data - omap iommu private data > - * @name: name of the iommu device > - * @iommu_dev: handle of the iommu device > - * > - * This is an omap iommu private data object, which binds an iommu user > - * to its iommu device. This object should be placed at the iommu user's > - * dev_archdata so generic IOMMU API can be used without having to > - * utilize omap-specific plumbing anymore. > - */ > -struct omap_iommu_arch_data { > - const char *name; > - struct omap_iommu *iommu_dev; > -}; > - > struct iommu_platform_data { > const char *name; > const char *reset_name; >