Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756068AbcC2HuB (ORCPT ); Tue, 29 Mar 2016 03:50:01 -0400 Received: from mailout3.w1.samsung.com ([210.118.77.13]:31748 "EHLO mailout3.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753276AbcC2Ht6 (ORCPT ); Tue, 29 Mar 2016 03:49:58 -0400 X-AuditID: cbfec7f5-f792a6d000001302-f3-56fa33a1356f Subject: Re: [PATCH v2] serial: samsung: Reorder the sequence of clock control when call s3c24xx_serial_set_termios() To: Chanwoo Choi , gregkh@linuxfoundation.org, jslaby@suse.com References: <1459122503-5202-1-git-send-email-cw00.choi@samsung.com> Cc: k.kozlowski@samsung.com, kgene@kernel.org, linux-serial@vger.kernel.org, linux-kernel@vger.kernel.org, linux-samsung-soc@vger.kernel.org From: Marek Szyprowski Message-id: <56FA33A0.4040608@samsung.com> Date: Tue, 29 Mar 2016 09:49:52 +0200 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.7.0 MIME-version: 1.0 In-reply-to: <1459122503-5202-1-git-send-email-cw00.choi@samsung.com> Content-type: text/plain; charset=utf-8; format=flowed Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrALMWRmVeSWpSXmKPExsVy+t/xa7oLjX+FGVx/aW1x/ctzVovmxevZ LKZs+MBk8fqFoUX/49fMFpd3zWGzmHF+H5PFmcW97A4cHptWdbJ57J+7ht2jb8sqRo/1W66y eHzeJBfAGsVlk5Kak1mWWqRvl8CV0bBtOVPBdJ6KHS/XsjYwPuHsYuTkkBAwkWi/18AEYYtJ XLi3nq2LkYtDSGApo8S7NRuYIZznjBI9U6+xdzFycAgLlEssPpMD0iAiEC5xf9opdhBbSMBF ovvjbyaQemaBPkaJdad7wKayCRhKdL3tYgOxeQW0JD4fmwwWZxFQlTg48QRYXFQgRqJtyyIm iBpBiR+T77GA2JwCrhJ/W54zgtjMAmYSX14eZoWw5SU2r3nLPIFRYBaSlllIymYhKVvAyLyK UTS1NLmgOCk910ivODG3uDQvXS85P3cTIyTcv+5gXHrM6hCjAAejEg9vxKKfYUKsiWXFlbmH GCU4mJVEeKvEf4UJ8aYkVlalFuXHF5XmpBYfYpTmYFES5525632IkEB6YklqdmpqQWoRTJaJ g1OqgdE1Jf46h/kUj3TZyPiqRycVPzwSmcUhkfWB73z/RZO3cjsWTvFy2i/2Or3VMV7t9WED U4WjT5dWTyz4l82nXm3zberxTNn8y9Ehn/56aT5tOvJXZ8MdG58+D0kPXg6O/XP/PNgr8kBF 9XnbqVab07vC6ldJ1AQGbrhXfEOIoZtzP+P5Lzer7iixFGckGmoxFxUnAgAIZpB/cwIAAA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1510 Lines: 47 Hello, On 2016-03-28 01:48, Chanwoo Choi wrote: > This patch fixes the broken serial log when changing the clock source > of uart device. Before disabling the original clock source, this patch > enables the new clock source to protect the clock off state for a split second. > > Signed-off-by: Chanwoo Choi Reviewed-by: Marek Szyprowski > --- > Changes from v1: > (https://lkml.org/lkml/2016/3/13/183) > - Enable the clock before changing the source by s3c24xx_serial_setsource() > - Rebase it on Linux v4.6-rc1 > > drivers/tty/serial/samsung.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/tty/serial/samsung.c b/drivers/tty/serial/samsung.c > index ac7f8df54406..99bb23161dd6 100644 > --- a/drivers/tty/serial/samsung.c > +++ b/drivers/tty/serial/samsung.c > @@ -1271,6 +1271,8 @@ static void s3c24xx_serial_set_termios(struct uart_port *port, > /* check to see if we need to change clock source */ > > if (ourport->baudclk != clk) { > + clk_prepare_enable(clk); > + > s3c24xx_serial_setsource(port, clk_sel); > > if (!IS_ERR(ourport->baudclk)) { > @@ -1278,8 +1280,6 @@ static void s3c24xx_serial_set_termios(struct uart_port *port, > ourport->baudclk = ERR_PTR(-EINVAL); > } > > - clk_prepare_enable(clk); > - > ourport->baudclk = clk; > ourport->baudclk_rate = clk ? clk_get_rate(clk) : 0; > } Best regards -- Marek Szyprowski, PhD Samsung R&D Institute Poland