From patchwork Mon May 23 09:30:08 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marek Szyprowski X-Patchwork-Id: 9131391 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 1E70E60459 for ; Mon, 23 May 2016 09:32:26 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 0FC2B28220 for ; Mon, 23 May 2016 09:32:26 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 04D2E2822F; Mon, 23 May 2016 09:32:26 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id B5D0828220 for ; Mon, 23 May 2016 09:32:25 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1b4mCO-0006sJ-Nn; Mon, 23 May 2016 09:30:56 +0000 Received: from mailout2.w1.samsung.com ([210.118.77.12]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1b4mC8-0006g4-Cu for linux-arm-kernel@lists.infradead.org; Mon, 23 May 2016 09:30:41 +0000 Received: from eucpsbgm1.samsung.com (unknown [203.254.199.244]) by mailout2.w1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0O7M00J99IEG3A70@mailout2.w1.samsung.com> for linux-arm-kernel@lists.infradead.org; Mon, 23 May 2016 10:30:16 +0100 (BST) X-AuditID: cbfec7f4-f796c6d000001486-b3-5742cda8337c Received: from eusync4.samsung.com ( [203.254.199.214]) by eucpsbgm1.samsung.com (EUCPMTA) with SMTP id 77.73.05254.8ADC2475; Mon, 23 May 2016 10:30:16 +0100 (BST) Received: from amdc1339.digital.local ([106.116.147.30]) by eusync4.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0O7M00M2SIECIH30@eusync4.samsung.com>; Mon, 23 May 2016 10:30:16 +0100 (BST) From: Marek Szyprowski To: iommu@lists.linux-foundation.org, linux-samsung-soc@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH 2/3] iommu/exynos: Fix master clock management for inactive SYSMMU Date: Mon, 23 May 2016 11:30:08 +0200 Message-id: <1463995809-26862-3-git-send-email-m.szyprowski@samsung.com> X-Mailer: git-send-email 1.9.2 In-reply-to: <1463995809-26862-1-git-send-email-m.szyprowski@samsung.com> References: <1463995809-26862-1-git-send-email-m.szyprowski@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrILMWRmVeSWpSXmKPExsVy+t/xa7orzjqFG5y6r22xccZ6VotJ9yew WCzYb23ROXsDu8XrF4YW/Y9fM1tsenyN1WLG+X1MFmuP3GV34PR4cnAek8emVZ1sHpuX1HtM vrGc0aNvyypGj8+b5ALYorhsUlJzMstSi/TtErgyNn88xFzwi7Ni/5a9bA2MOzm6GDk5JARM JCb0n2WHsMUkLtxbz9bFyMUhJLCUUeJE9w4op4lJ4v2//2wgVWwChhJdb7vAbBGBfIkXe/+y gBQxC/xilDjX2c4EkhAWCJFYvXkj2FgWAVWJGaeWg9m8Ah4SD0+0sEKsk5P4/3IFWD2ngKfE w2V3wYYKAdXMvzCFaQIj7wJGhlWMoqmlyQXFSem5hnrFibnFpXnpesn5uZsYIQH3ZQfj4mNW hxgFOBiVeHg3MDqFC7EmlhVX5h5ilOBgVhLhzTwNFOJNSaysSi3Kjy8qzUktPsQozcGiJM47 d9f7ECGB9MSS1OzU1ILUIpgsEwenVAPjyiv/N+ypZZfwLLqhdkfswNV3p684XX7xvWPq13Sb xamO26ImF1vNS2EyT58cMH/+jlOv3jlyLlq/nkn4eW97lumhlqc7jX5WxvJNV2PuNX+mtpvR s3ypXFTt6aTNSYtYJR67ums95Lj5aYbSxuw+p32MIT81Z7D9TQqcM6ugOIR/bfZCltUxSizF GYmGWsxFxYkAeneesTQCAAA= X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20160523_023040_589022_82A78DB7 X-CRM114-Status: GOOD ( 17.56 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Krzysztof Kozlowski , Bartlomiej Zolnierkiewicz , Joerg Roedel , Inki Dae , Kukjin Kim , Marek Szyprowski MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP If SYSMMU controller is not active, there is no point in enabling master's clock just for doing the the of internal state. This patch moves enabling that clock to the block which actually does the register access. Signed-off-by: Marek Szyprowski --- drivers/iommu/exynos-iommu.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/iommu/exynos-iommu.c b/drivers/iommu/exynos-iommu.c index 989365682d14..018bcd5d5edc 100644 --- a/drivers/iommu/exynos-iommu.c +++ b/drivers/iommu/exynos-iommu.c @@ -524,16 +524,15 @@ static void sysmmu_tlb_invalidate_flpdcache(struct sysmmu_drvdata *data, { unsigned long flags; - clk_enable(data->clk_master); spin_lock_irqsave(&data->lock, flags); - if (is_sysmmu_active(data)) { - if (data->version >= MAKE_MMU_VER(3, 3)) - __sysmmu_tlb_invalidate_entry(data, iova, 1); + if (is_sysmmu_active(data) && data->version >= MAKE_MMU_VER(3, 3)) { + clk_enable(data->clk_master); + __sysmmu_tlb_invalidate_entry(data, iova, 1); + clk_disable(data->clk_master); } spin_unlock_irqrestore(&data->lock, flags); - clk_disable(data->clk_master); } static void sysmmu_tlb_invalidate_entry(struct sysmmu_drvdata *data,