From patchwork Fri Dec 14 11:23:23 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marek Szyprowski X-Patchwork-Id: 153816 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp1940552ljp; Fri, 14 Dec 2018 03:23:43 -0800 (PST) X-Google-Smtp-Source: AFSGD/XWk8hBpzkkGWK+NElM1f5J/y928rolTBnO1qz56zobgM5JMA5BAfMI8BxXBAtIdTx9iDc/ X-Received: by 2002:a63:1c61:: with SMTP id c33mr2308332pgm.354.1544786622985; Fri, 14 Dec 2018 03:23:42 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1544786622; cv=none; d=google.com; s=arc-20160816; b=n0jJK+G1gJpuw69DNMy8lbEhRdPCC2TOkTjo5HIVVtasCtodCtwfLr40qjrN9fofAP 7prLYGeJizBJDgMgaFFZG7GAb5S6mirRuGr1kr49x4WCgyMdB7fOsiUC8SL7PJ9lce2R NbQuO5xJj7XLo4nxIN6tr0ZLkXj79x4ceTylDfdnYYkSqbpRC7e3erMuBBbyjvpI6J95 lKlxtMPVt4ysSGCYPE3oLpEvmIDgBa85YmhkEAq6tmEXH+YfqfcWhIVZ/DYx741BEbL9 8i41DrtSdiAG6GFTCrZW+1WlvukeUPyZ/vcilY9uE31aIaZKCQzs0PRzGjlqi5+yLT6B DsjQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:cms-type:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature:dkim-filter; bh=AKUsgv6gspXAloJymujKie5fq7hFCRFBHPM2TOJW0T4=; b=F5HuKuQvwClldDjlX5bhrSgqw0AKYzrppWjGlCj/zBBgSB3H91eEvxhs8GtCvbIGk0 6M6tqOR7X2mEzXdLUHdEczY81CjEccPolBTZPI6lPOdFcWgck/WxjC/eJ28aTURLGusD nWWt8bK49X4oCW6fuYAtcnd0LAgFwlgdLrcLVb1ZOBGoNFcrBQnuFen/41q5pyMh0YHE FuqJZ2QPTsMznCclobHObSbQ4EkNubLAt3YDzspAMWl3mSdeUv8pURU8vO9QUGcFhBkF 1RRMTddgflNnXJ5IwhyomM7IRfNHf5tZQmJW93TyevhAKw8CI6lpES/MTKO1cHVaVYjK SHwQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@samsung.com header.s=mail20170921 header.b=kwz5kLLA; spf=pass (google.com: best guess record for domain of linux-samsung-soc-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-samsung-soc-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=samsung.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b36si4034486pla.354.2018.12.14.03.23.42; Fri, 14 Dec 2018 03:23:42 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-samsung-soc-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@samsung.com header.s=mail20170921 header.b=kwz5kLLA; spf=pass (google.com: best guess record for domain of linux-samsung-soc-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-samsung-soc-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=samsung.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728731AbeLNLXm (ORCPT + 3 others); Fri, 14 Dec 2018 06:23:42 -0500 Received: from mailout1.w1.samsung.com ([210.118.77.11]:34812 "EHLO mailout1.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728415AbeLNLXm (ORCPT ); Fri, 14 Dec 2018 06:23:42 -0500 Received: from eucas1p1.samsung.com (unknown [182.198.249.206]) by mailout1.w1.samsung.com (KnoxPortal) with ESMTP id 20181214112341euoutp01b0287030ddd6f8b4e02f57214a5395d9~wLz9Kymwe3145231452euoutp01B; Fri, 14 Dec 2018 11:23:41 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 mailout1.w1.samsung.com 20181214112341euoutp01b0287030ddd6f8b4e02f57214a5395d9~wLz9Kymwe3145231452euoutp01B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=samsung.com; s=mail20170921; t=1544786621; bh=AKUsgv6gspXAloJymujKie5fq7hFCRFBHPM2TOJW0T4=; h=From:To:Cc:Subject:Date:In-reply-to:References:From; b=kwz5kLLAkiZz0ijL/bjj7wL0C+4ckkDUqsZF7Pp6E2ARTT0jiowVfP04mO0MoOJdP Piuhz/e+73q67DxwGoLEr5GaYz4oFP/N+39dvg6tf/3Y2GlFSfXxZxenqIZ3WSJuGH 9J99bF4MQxqKcvumdL01dakI4MGRMjab/6pTwsvo= Received: from eusmges2new.samsung.com (unknown [203.254.199.244]) by eucas1p1.samsung.com (KnoxPortal) with ESMTP id 20181214112340eucas1p1de6eb810566a7dd618f33acf856fd072~wLz8Z5ikJ0779207792eucas1p1R; Fri, 14 Dec 2018 11:23:40 +0000 (GMT) Received: from eucas1p1.samsung.com ( [182.198.249.206]) by eusmges2new.samsung.com (EUCPMTA) with SMTP id BF.18.04294.BB2931C5; Fri, 14 Dec 2018 11:23:39 +0000 (GMT) Received: from eusmgms2.samsung.com (unknown [182.198.249.180]) by eucas1p2.samsung.com (KnoxPortal) with ESMTP id 20181214112339eucas1p248fb077055355697ef6d1a69732df4cc~wLz7jzh7e1459614596eucas1p2g; Fri, 14 Dec 2018 11:23:39 +0000 (GMT) X-AuditID: cbfec7f4-84fff700000010c6-a5-5c1392bb101a Received: from eusync4.samsung.com ( [203.254.199.214]) by eusmgms2.samsung.com (EUCPMTA) with SMTP id EE.1C.04128.BB2931C5; Fri, 14 Dec 2018 11:23:39 +0000 (GMT) Received: from AMDC2765.digital.local ([106.116.147.25]) by eusync4.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0PJQ00L9B4Z6IX10@eusync4.samsung.com>; Fri, 14 Dec 2018 11:23:39 +0000 (GMT) From: Marek Szyprowski To: linux-samsung-soc@vger.kernel.org Cc: Marek Szyprowski , Krzysztof Kozlowski , Bartlomiej Zolnierkiewicz , Beomho Seo , Seung-Woo Kim , Sylwester Nawrocki Subject: [PATCH 2/4] tty: serial: samsung: Properly set flags in autoCTS mode Date: Fri, 14 Dec 2018 12:23:23 +0100 Message-id: <20181214112325.9551-3-m.szyprowski@samsung.com> X-Mailer: git-send-email 2.17.1 In-reply-to: <20181214112325.9551-1-m.szyprowski@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrIIsWRmVeSWpSXmKPExsWy7djPc7q7JwnHGKxYbmOxccZ6VovTn7ax W5w/v4HdYsb5fUwWa4/cZbc4/Kad1WLG5JdsDuwem1Z1snn0bVnF6PF5k1wAcxSXTUpqTmZZ apG+XQJXxvwf69kLlnBVXDm3mLmB8TRHFyMnh4SAicSnuR+Yuhi5OIQEVjBKXF80Hcr5zChx 53cHG0zVxgN7WEBsIYFljBJnWowhihqYJA58f8kKkmATMJToetsF1iAioCrxuW0BO0gRs0AP k8SMyTuZQRLCAv4S/9uegU1iASr6e+w0O4jNK2AjsetCAzvENnmJ1RsOgNVzCthKzGvdwwoy SELgK6vE4i0TGSGKXCTO/PgJZQtLvDq+BapZRuLy5G4WiIZmRon2GbPYIZweRomtc3ZAPWQt cfj4RbC7mQX4JCZtmw60jgMozivR0SYEUeIhMevjXUaIPycwSlzZ+ot1AqPkAkaGVYziqaXF uempxUZ5qeV6xYm5xaV56XrJ+bmbGIERd/rf8S87GHf9STrEKMDBqMTDmzFJKEaINbGsuDL3 EKMEB7OSCG9Yq3CMEG9KYmVValF+fFFpTmrxIUZpDhYlcd5qhgfRQgLpiSWp2ampBalFMFkm Dk6pBsbU91IH16/8eTLeviz/23aunzu7W0PD6i//vKfc/0T4sfIaL2am9YXFxpvc/5d9cGls YuZXOu67y/tp2STLE4oFW6pu+frLXgsLrpE4F+xxZOXVS9ODRS80brI1db65qqKwJPXvtZeX 9834PInFIGoO1w3JjFtPBRqfv2ztfa2QxDz1DOee5rVKLMUZiYZazEXFiQC/tGYOtAIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrHJMWRmVeSWpSXmKPExsVy+t/xa7q7JwnHGOz6zWyxccZ6VovTn7ax W5w/v4HdYsb5fUwWa4/cZbc4/Kad1WLG5JdsDuwem1Z1snn0bVnF6PF5k1wAcxSXTUpqTmZZ apG+XQJXxvwf69kLlnBVXDm3mLmB8TRHFyMnh4SAicTGA3tYuhi5OIQEljBK9L27xAjhNDFJ nN74gwmkik3AUKLrbRcbiC0ioCrxuW0BO0gRs0Afk0TH22nMIAlhAV+Jhe2TwBpYgIr+HjvN DmLzCthI7LrQwA6xTl5i9YYDYPWcArYS81r3sILYQkA1vZ8uM09g5FnAyLCKUSS1tDg3PbfY SK84Mbe4NC9dLzk/dxMjMFS2Hfu5ZQdj17vgQ4wCHIxKPLwHpgjFCLEmlhVX5h5ilOBgVhLh DWsVjhHiTUmsrEotyo8vKs1JLT7EKM3BoiTOe96gMkpIID2xJDU7NbUgtQgmy8TBKdXAePCx z5bMewHfZCwvaq61+/ph683+h689VM0vHAuIV9oY/36x2HQpEZ0mec0Cxx9HFZhOfv3g6MNg /s1iV+9WqR228rvv7K0/tPtXheQEQ9Nm6ZnmiuyrQmKz3q+LME7NPRO7fAl3wcPSNb+M/iZV duxfMFVrwtsbDi2CvseXvvs1UfDeSX8lZyWW4oxEQy3mouJEAG3S7oMRAgAA X-CMS-MailID: 20181214112339eucas1p248fb077055355697ef6d1a69732df4cc X-Msg-Generator: CA CMS-TYPE: 201P X-CMS-RootMailID: 20181214112339eucas1p248fb077055355697ef6d1a69732df4cc References: <20181214112325.9551-1-m.szyprowski@samsung.com> Sender: linux-samsung-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-samsung-soc@vger.kernel.org From: Beomho Seo Commit 391f93f2ec9f ("serial: core: Rework hw-assited flow control support") has changed the way the autoCTS mode is handled. According to that change, serial drivers which enable H/W autoCTS mode must set UPSTAT_AUTOCTS to prevent the serial core from inadvertently disabling TX. This patch adds proper handling of UPSTAT_AUTOCTS flag. Signed-off-by: Beomho Seo [mszyprow: rephrased commit message] Signed-off-by: Marek Szyprowski --- drivers/tty/serial/samsung.c | 3 +++ 1 file changed, 3 insertions(+) -- 2.17.1 diff --git a/drivers/tty/serial/samsung.c b/drivers/tty/serial/samsung.c index da1bd4bba8a9..2a49b6d876b8 100644 --- a/drivers/tty/serial/samsung.c +++ b/drivers/tty/serial/samsung.c @@ -1365,11 +1365,14 @@ static void s3c24xx_serial_set_termios(struct uart_port *port, wr_regl(port, S3C2410_ULCON, ulcon); wr_regl(port, S3C2410_UBRDIV, quot); + port->status &= ~UPSTAT_AUTOCTS; + umcon = rd_regl(port, S3C2410_UMCON); if (termios->c_cflag & CRTSCTS) { umcon |= S3C2410_UMCOM_AFC; /* Disable RTS when RX FIFO contains 63 bytes */ umcon &= ~S3C2412_UMCON_AFC_8; + port->status = UPSTAT_AUTOCTS; } else { umcon &= ~S3C2410_UMCOM_AFC; }