Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933143AbbD1JP4 (ORCPT ); Tue, 28 Apr 2015 05:15:56 -0400 Received: from mailout2.w1.samsung.com ([210.118.77.12]:27039 "EHLO mailout2.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932417AbbD1JPw (ORCPT ); Tue, 28 Apr 2015 05:15:52 -0400 X-AuditID: cbfec7f5-f794b6d000001495-63-553f4fc9387b Message-id: <553F4FB2.9030201@samsung.com> Date: Tue, 28 Apr 2015 11:15:30 +0200 From: Sylwester Nawrocki User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.5.0 MIME-version: 1.0 To: Chanwoo Choi Cc: tomasz.figa@gmail.com, mturquette@linaro.org, kgene@kernel.org, inki.dae@samsung.com, chanho61.park@samsung.com, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, Jonghwa Lee Subject: Re: [PATCH v3 10/10] clk: samsung: exynos5433: Add CLK_IGNORE_UNUSED flag to prevent the hang for suspend-to-ram References: <1430134597-14668-1-git-send-email-cw00.choi@samsung.com> <1430134597-14668-11-git-send-email-cw00.choi@samsung.com> In-reply-to: <1430134597-14668-11-git-send-email-cw00.choi@samsung.com> Content-type: text/plain; charset=windows-1252 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrBLMWRmVeSWpSXmKPExsVy+t/xK7on/e1DDd5/t7G4vF/b4vqX56wW 84+cY7WYdH8Ci0Xn2SfMFv2PXzNbXN41h81ixvl9TBZPJ1xks1i16w+jA5fHzll32T02repk 87hzbQ+bR9+WVYwenzfJBbBGcdmkpOZklqUW6dslcGVMubqHqWC7WMXDeduZGhivC3UxcnJI CJhIvPt1kBnCFpO4cG89WxcjF4eQwFJGieuNy1ggnOeMEl9PzmICqeIV0JJoXbGCEcRmEVCV eDPvOCuIzSZgKNF7tA8ozsEhKhAhcfsyJ0S5oMSPyfdYQGwRAQ2JmX+vMILMZBb4xyhx9/oN dpCEsEC1xPPnu6CWNTFK3O/6CjaIU8Bdout7GojJLKAncf+iFkg5s4C8xOY1b5knMArMQrJi FkLVLCRVCxiZVzGKppYmFxQnpeca6RUn5haX5qXrJefnbmKEhP/XHYxLj1kdYhTgYFTi4S3g sg8VYk0sK67MPcQowcGsJMJbawsU4k1JrKxKLcqPLyrNSS0+xCjNwaIkzjtz1/sQIYH0xJLU 7NTUgtQimCwTB6dUAyP/xq/x8zpeR3uwq9+fpdN4X/N2RuWCW87Pk1SidOTn2jsdcTv4e9OW 4wmb/tY8a06f+kMusqvr0I6Hh8TOpvrubVxq9PrXj/PZzc/m5O+yVo37LpJ5fXVi0M+cLZIa WR9NpBVYWy7PYzza5n2OZ25aosEGpWrzQ2scnom97D5tZGW1XGfno2AlluKMREMt5qLiRADU o7+PewIAAA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3052 Lines: 69 Hi Chanwoo, On 27/04/15 13:36, Chanwoo Choi wrote: > From: Jonghwa Lee > > Some clocks are required being unmasked for suspend-to-ram. Otherwise, > PMU (Power Management Unit) will stick and power line never down. > > Signed-off-by: Jonghwa Lee > Signed-off-by: Chanwoo Choi > --- > @@ -1718,11 +1722,14 @@ static struct samsung_gate_clock peric_gate_clks[] __initdata = { > GATE(CLK_SCLK_SPI0, "sclk_spi0", "sclk_spi0_peric", ENABLE_SCLK_PERIC, > 3, CLK_SET_RATE_PARENT, 0), > GATE(CLK_SCLK_UART2, "sclk_uart2", "sclk_uart2_peric", > - ENABLE_SCLK_PERIC, 2, CLK_SET_RATE_PARENT, 0), > + ENABLE_SCLK_PERIC, 2, > + CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 0), > GATE(CLK_SCLK_UART1, "sclk_uart1", "sclk_uart1_peric", > - ENABLE_SCLK_PERIC, 1, CLK_SET_RATE_PARENT, 0), > + ENABLE_SCLK_PERIC, 1, > + CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 0), > GATE(CLK_SCLK_UART0, "sclk_uart0", "sclk_uart0_peric", > - ENABLE_SCLK_PERIC, 0, CLK_SET_RATE_PARENT, 0), > + ENABLE_SCLK_PERIC, 0, > + CLK_SET_RATE_PARENT | CLK_IGNORE_UNUSED, 0), > }; > > static struct samsung_cmu_info peric_cmu_info __initdata = { > @@ -3025,7 +3032,7 @@ static struct samsung_gate_clock aud_gate_clks[] __initdata = { > > /* ENABLE_SCLK_AUD0 */ > GATE(CLK_ATCLK_AUD, "atclk_aud", "div_atclk_aud", ENABLE_SCLK_AUD0, > - 2, 0, 0), > + 2, CLK_IGNORE_UNUSED, 0), > GATE(CLK_PCLK_DBG_AUD, "pclk_dbg_aud", "div_pclk_dbg_aud", > ENABLE_SCLK_AUD0, 1, 0, 0), > GATE(CLK_SCLK_AUD_CA5, "sclk_aud_ca5", "div_aud_ca5", ENABLE_SCLK_AUD0, > @@ -3425,9 +3432,11 @@ static struct samsung_gate_clock gscl_gate_clks[] __initdata = { > GATE(CLK_ACLK_GSCLNP_111, "aclk_gsclnp_111", "mout_aclk_gscl_111_user", > ENABLE_ACLK_GSCL, 6, CLK_IGNORE_UNUSED, 0), > GATE(CLK_ACLK_GSCLRTND_333, "aclk_gsclrtnd_333", > - "mout_aclk_gscl_333_user", ENABLE_ACLK_GSCL, 5, 0, 0), > + "mout_aclk_gscl_333_user", ENABLE_ACLK_GSCL, 5, > + CLK_IGNORE_UNUSED, 0), > GATE(CLK_ACLK_GSCLBEND_333, "aclk_gsclbend_333", > - "mout_aclk_gscl_333_user", ENABLE_ACLK_GSCL, 4, 0, 0), > + "mout_aclk_gscl_333_user", ENABLE_ACLK_GSCL, 4, > + CLK_IGNORE_UNUSED, 0), Some of the clocks you are adding CLK_IGNORE_UNUSED flag for here are or will be handled be the related IP drivers, thus can be gated regardless of the changes done in this patch. I would suggest to register suspend/ resume syscore ops like exynos5420_clk_syscore_ops and enable some of clocks you're touching in this patch explicitly in the suspend() callback and restore the registers state from before suspend() call in resume(). I've picked up patches 01/10...09/10. In future please also copy linux-clk@vger.kernel.org on clk related patches. -- Regards, Sylwester -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/