From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S935173AbcKJQkI (ORCPT ); Thu, 10 Nov 2016 11:40:08 -0500 Received: from 8bytes.org ([81.169.241.247]:32951 "EHLO theia.8bytes.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933854AbcKJQkF (ORCPT ); Thu, 10 Nov 2016 11:40:05 -0500 Date: Thu, 10 Nov 2016 17:40:03 +0100 From: Joerg Roedel To: Marek Szyprowski Cc: linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, iommu@lists.linux-foundation.org, linux-samsung-soc@vger.kernel.org, Inki Dae , Kukjin Kim , Krzysztof Kozlowski , Bartlomiej Zolnierkiewicz , "Rafael J. Wysocki" , Mark Brown , "Luis R. Rodriguez" , Greg Kroah-Hartman , Tomeu Vizoso , Lukas Wunner , Kevin Hilman , Tobias Jakobi , Tomasz Figa Subject: Re: [PATCH v6 3/7] iommu/exynos: Simplify internal enable/disable functions Message-ID: <20161110164003.GL2078@8bytes.org> References: <1478611764-6473-1-git-send-email-m.szyprowski@samsung.com> <1478611764-6473-4-git-send-email-m.szyprowski@samsung.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1478611764-6473-4-git-send-email-m.szyprowski@samsung.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Nov 08, 2016 at 02:29:20PM +0100, Marek Szyprowski wrote: > Remove remaining leftovers of the ref-count related code in the > __sysmmu_enable/disable functions inline __sysmmu_enable/disable_nocount > to them. Suspend/resume callbacks now checks if master device is set for > given SYSMMU controller instead of relying on the activation count. > > Signed-off-by: Marek Szyprowski > --- > drivers/iommu/exynos-iommu.c | 104 ++++++++++++------------------------------- > 1 file changed, 29 insertions(+), 75 deletions(-) > > diff --git a/drivers/iommu/exynos-iommu.c b/drivers/iommu/exynos-iommu.c > index 4056228..f45b274 100644 > --- a/drivers/iommu/exynos-iommu.c > +++ b/drivers/iommu/exynos-iommu.c > @@ -237,8 +237,8 @@ struct sysmmu_drvdata { > struct clk *aclk; /* SYSMMU's aclk clock */ > struct clk *pclk; /* SYSMMU's pclk clock */ > struct clk *clk_master; /* master's device clock */ > - int activations; /* number of calls to sysmmu_enable */ > spinlock_t lock; /* lock for modyfying state */ > + int active; /* current status */ Any reason for this being int and not bool? You only assign true/false later. Joerg