From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752665AbbC3CEY (ORCPT ); Sun, 29 Mar 2015 22:04:24 -0400 Received: from mailout2.samsung.com ([203.254.224.25]:56845 "EHLO mailout2.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751936AbbC3CET (ORCPT ); Sun, 29 Mar 2015 22:04:19 -0400 X-AuditID: cbfee690-f79ab6d0000046f7-1c-5518af1834cd Message-id: <5518AF17.2060207@samsung.com> Date: Mon, 30 Mar 2015 11:04:07 +0900 From: Chanwoo Choi User-Agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130106 Thunderbird/17.0.2 MIME-version: 1.0 To: Javier Martinez Canillas Cc: Kukjin Kim , Doug Anderson , Olof Johansson , Krzysztof Kozlowski , Abhilash Kesavan , Kevin Hilman , Tyler Baker , Steve Capper , Amit Kucheria , linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [RFC PATCH 2/2] ARM: EXYNOS: Make sure that the Exynos5420 MDMA0 clock is enabled during suspend References: <1427466097-7287-1-git-send-email-javier.martinez@collabora.co.uk> <1427466097-7287-3-git-send-email-javier.martinez@collabora.co.uk> In-reply-to: <1427466097-7287-3-git-send-email-javier.martinez@collabora.co.uk> Content-type: text/plain; charset=ISO-8859-1 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrFIsWRmVeSWpSXmKPExsWyRsSkWFdivUSowc2nghbNDYuZLM4uO8hm cfR3gcXrF4YWa/4qWfQ/fs1s8fXwCkaLy7vmsFnMOL+PyeLU9c9sFivmLWOz+LjjHosDj8fs hossHn+fX2fx2DnrLrvHplWdbB53ru1h87hyoonVo2/LKkaPz5vkAjiiuGxSUnMyy1KL9O0S uDIe959iKrgjVLF0Qh9TA2MXfxcjJ4eEgInEhubH7BC2mMSFe+vZuhi5OIQEljJKHDt2ihWm 6NmrK8wgtpDAdEaJyS98IIoeMEp8u/CEESTBK6AlMftvBwuIzSKgKvHkZytYAxtQfP+LG2wg tqhAmMTK6VdYIOoFJX5MvgdmiwjYSdxY/ZAZZCizwEZmiY6FT5hAEsIC+RI7V3YwQmybzCix a9sksG2cAv4Ss578AtvALKAjsb91GhuELS+xec1bsEkSAo0cEnvOfGGEOElA4tvkQ0DrOIAS shKbDjBDvCYpcXDFDZYJjGKzkBw1C8nYWUjGLmBkXsUomlqQXFCclF5kolecmFtcmpeul5yf u4kRGMWn/z2bsIPx3gHrQ4wCHIxKPLwO9RKhQqyJZcWVuYcYTYGumMgsJZqcD0wVeSXxhsZm RhamJqbGRuaWZkrivK+lfgYLCaQnlqRmp6YWpBbFF5XmpBYfYmTi4JRqYGQ8oGCnyZnZuE9C Yl+v9zqT9wuKJao2r9ZZHuk/lyFUVrv0pnuF2c0Z3FW5kouEdEuLPmyuvWHxOGUzd95apvLg +Zs2ZL2Zt/7Zb5OTml683yxVtBhXTgkQDrPw+flzjbrY9OvaxlmyS2oTJnd9spc6fXn2u6l6 u+fc7BP892JrjqhRwZxF+5VYijMSDbWYi4oTAUkFJKfdAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprCKsWRmVeSWpSXmKPExsVy+t9jQV2J9RKhBr9uMVs0Nyxmsji77CCb xdHfBRavXxharPmrZNH/+DWzxdfDKxgtLu+aw2Yx4/w+JotT1z+zWayYt4zN4uOOeywOPB6z Gy6yePx9fp3FY+esu+wem1Z1snncubaHzePKiSZWj74tqxg9Pm+SC+CIamC0yUhNTEktUkjN S85PycxLt1XyDo53jjc1MzDUNbS0MFdSyEvMTbVVcvEJ0HXLzAE6VkmhLDGnFCgUkFhcrKRv h2lCaIibrgVMY4Sub0gQXI+RARpIWMOY8bj/FFPBHaGKpRP6mBoYu/i7GDk5JARMJJ69usIM YYtJXLi3ng3EFhKYzigx+YVPFyMXkP2AUeLbhSeMIAleAS2J2X87WEBsFgFViSc/W8Ga2YDi +1/cAGsWFQiTWDn9CgtEvaDEj8n3wGwRATuJG6sfMoMMZRbYyCzRsfAJE0hCWCBfYufKDkaI bZMZJXZtmwS2jVPAX2LWk19gG5gFdCT2t05jg7DlJTavecs8gVFgFpIls5CUzUJStoCReRWj aGpBckFxUnquoV5xYm5xaV66XnJ+7iZGcIp4JrWDcWWDxSFGAQ5GJR5ex3qJUCHWxLLiytxD jBIczEoivLdLgEK8KYmVValF+fFFpTmpxYcYTYFhMJFZSjQ5H5i+8kriDY1NzIwsjcwNLYyM zZXEeZXs20KEBNITS1KzU1MLUotg+pg4OKUaGKduPZZZ6LHG+eiGJe/2y/j05iyVvn/qUFCt 3VneziVzG+8q95qy7ufq8ThSoaYgJf3i0GP21ZIJBv2MNc8fKV6ZZXBofuz8+RYfdFUtbB0F LO8E8rwXvbh2Q8r39dZfhThn75S+EfiSidk36crarsrmX19EStrF+nwVu/fvVbafGhgrOKN3 sRJLcUaioRZzUXEiAMyTV5knAwAA DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Javier, On 03/27/2015 11:21 PM, Javier Martinez Canillas wrote: > Commit ae43b3289186 ("ARM: 8202/1: dmaengine: pl330: Add runtime Power > Management support v12") added pm support for the pl330 dma driver but > it makes the clock for the Exynos5420 MDMA0 DMA controller to be gated > during suspend and this clock needs to remain enabled in order to make > the system resume from a system suspend state. > > To make sure that the clock is enabled during suspend, enable it prior > to entering a suspend state and disable it once the system has resumed. > > Thanks to Abhilash Kesavan for figuring out that this was the issue. > > Fixes: ae43b32 ("ARM: 8202/1: dmaengine: pl330: Add runtime Power Management support v12") > Signed-off-by: Javier Martinez Canillas > --- > arch/arm/mach-exynos/suspend.c | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/arch/arm/mach-exynos/suspend.c b/arch/arm/mach-exynos/suspend.c > index 1521eaf99265..6dbc0a6d1bb5 100644 > --- a/arch/arm/mach-exynos/suspend.c > +++ b/arch/arm/mach-exynos/suspend.c > @@ -16,6 +16,7 @@ > #include > #include > #include > +#include > #include > #include > #include > @@ -79,6 +80,7 @@ static const struct exynos_pm_data *pm_data; > > static int exynos5420_cpu_state; > static unsigned int exynos_pmu_spare3; > +static struct clk *clk; > > /* > * GIC wake-up support > @@ -374,6 +376,16 @@ static void exynos5420_pm_prepare(void) > { > unsigned int tmp; > > + /* > + * Exynos5420 requires the MDMA0 controller clock to be > + * ungated on suspend in order to be resumed correctly. > + */ > + clk = clk_get(NULL, "mdma0"); > + if (IS_ERR(clk)) > + pr_warn("Failed to get mdma0 clk (%ld)\n", PTR_ERR(clk)); > + else > + clk_prepare_enable(clk); > + I faced on the similiar issue. If some clock was disabled, Exynos SoC could not enter the suspend mode But, I think it is not prpper method to resolve this issue. about that that specific clock (e.g., mdma0) is handled in this dirver. Also, ARM-64bit don't include any '../mach-exynos' directory. IMHO, some clock issue have to be handled in SoC clk driver or others. [snip] Best Regards, Chanwoo Choi