From patchwork Wed Oct 11 17:38:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Lino Sanfilippo X-Patchwork-Id: 732395 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1BC7BCDB470 for ; Wed, 11 Oct 2023 17:39:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233024AbjJKRje (ORCPT ); Wed, 11 Oct 2023 13:39:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55248 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233183AbjJKRj0 (ORCPT ); Wed, 11 Oct 2023 13:39:26 -0400 Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on2088.outbound.protection.outlook.com [40.107.249.88]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 82388CC; Wed, 11 Oct 2023 10:39:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XAh2drSLMhIDGnpgmbeR5QxKNfoLgrTmzxZj3wqU08yayWnBU4t3w03PaPJG/8GPpIhBSSSjtzrVAZIhlsGd1y1qzYbyJU/XEvj90rbrQyZSGhqq5e/X5PaYYIq96gyZYd2zCeC3Obxh1wk4O7fxfGv/UAs5XKrZ1Qu3SKZHRXj0B25LpNvRhgCPJa2b/bPqrA8gh0yRU2UfCOJts7ifoVqT24T3ROAqIFGT2oU4txiwI3HcuenRiaFr+RheOEWhtwlMl1IbLhCJiUkrY4sGj/nXB4sqWawIF5Swf9t49O9SnNESAt+n6j/Pbk1qS3NA7Vkg3ytrWuTFxBmjQ6rwTA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=g9VNnrRh+93b9tiZ7+fqQ29BWG2jfMJ+okhxSduWaaw=; b=bBeAblgk4q/AM/hZYIdL5SHKWSx35276mQ/idQ9keKNchocVM+RCfsW4IH8pAeb1U9nxV9CTA3Xy+jG9kH19mGjSjpoVNO1bq8oORQM/VxgZCceBR8+2t0Jz51jlXMvZkNqmvWxcGXyDIK3Ls0dp1KSGd196U+F+soorjGPJeDOvyMT8e3W9ESyw/lHF17hAZHw0ZSVWVBrxhzx7vHyYUeujv6cvmzNNKBMCyiXtO06vbmC103NAfpm38e/bmr2GXsu2EE2rgTL3GQ4WCssnDqTEKThE0T9s4gWXeA+dofGXBUjBNoUI94FfI8vtpJ5hFJdBDjSTXwrhAT/4toGgpg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=kunbus.com; dmarc=pass action=none header.from=kunbus.com; dkim=pass header.d=kunbus.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kunbus.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=g9VNnrRh+93b9tiZ7+fqQ29BWG2jfMJ+okhxSduWaaw=; b=aAO/cdrvJeQ7KrAch7thEVyxuqGaSN5jU0IxrAIquJXnO8kRwSMYGd7C6IAOGlWthsjeQjg4CaLu066BgAS94rUJV6pf3jb+0BBp9vmkc0lAeWoP5zeu0RG8nlJ0Hbvj4GWsdubrWf1HrcEW41rfoYNxzKwY2nfCpixV+2vM9KM= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=kunbus.com; Received: from VI1P193MB0413.EURP193.PROD.OUTLOOK.COM (2603:10a6:803:4e::14) by AM8P193MB1187.EURP193.PROD.OUTLOOK.COM (2603:10a6:20b:362::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6863.41; Wed, 11 Oct 2023 17:39:08 +0000 Received: from VI1P193MB0413.EURP193.PROD.OUTLOOK.COM ([fe80::550d:2425:c0ed:3e59]) by VI1P193MB0413.EURP193.PROD.OUTLOOK.COM ([fe80::550d:2425:c0ed:3e59%3]) with mapi id 15.20.6863.032; Wed, 11 Oct 2023 17:39:08 +0000 From: Lino Sanfilippo To: gregkh@linuxfoundation.org, jirislaby@kernel.org, ilpo.jarvinen@linux.intel.com Cc: shawnguo@kernel.org, s.hauer@pengutronix.de, mcoquelin.stm32@gmail.com, alexandre.torgue@foss.st.com, cniedermaier@dh-electronics.com, linux-kernel@vger.kernel.org, linux-serial@vger.kernel.org, LinoSanfilippo@gmx.de, lukas@wunner.de, p.rosenberger@kunbus.com, Lino Sanfilippo , stable@vger.kernel.org, =?utf-8?q?Uwe_Kleine-K=C3=B6nig?= Subject: [PATCH v2 6/7] serial: core, imx: do not set RS485 enabled if it is not supported Date: Wed, 11 Oct 2023 19:38:28 +0200 Message-Id: <20231011173829.10508-7-l.sanfilippo@kunbus.com> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20231011173829.10508-1-l.sanfilippo@kunbus.com> References: <20231011173829.10508-1-l.sanfilippo@kunbus.com> X-ClientProxiedBy: FR2P281CA0093.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:9b::18) To VI1P193MB0413.EURP193.PROD.OUTLOOK.COM (2603:10a6:803:4e::14) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: VI1P193MB0413:EE_|AM8P193MB1187:EE_ X-MS-Office365-Filtering-Correlation-Id: 7563fd0f-131b-4ca1-b310-08dbca80f8a2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 58WR2e9qytcd68wapZlInQB0RgQtzyhh+s/A+CUeJqJIyQS5PDGb8QgP/UiSxn1AEwkKSBVfKkCRiuOPoMuGKL/ImF+7QakoAuPjZQ6Tqxh2h3DB3CsmMIzfPJ3kzFv8YIHmt6gBwyOZOy0HZSGXCzKDtJpYMvMhVdeV9br2L1j2ZO5XI44Sg15Dy3i/tTkvtt6MhGirONesdrUfTQMF6dh5HIPMD/uRuRjZS7rwCwWYaYmr4L9TKrLJ505rcp7tS/66/h6CiEKc9o1hNumk13Y6MJQ0RUR51cjqxwIJSHXWYJGOOy2oR7iJPg7zHWrSKWNxSSH5bTdYSk5a4yugE2Cy8R+5Aoigufm258uoiFFZx+vG7of2XhQiLj4vvgLoVyossx52PvcLWjbxhzOAaL6s8qNEo0c9fRyQ4cZz5fciwv1IEmQDSUqMB5+FjiNoMjTKCtZmbiSkaJDoOj9HnVdPqXzHDgu6f1tnvGU6CXTLIctzDZOBhUojrKTBWiubJjfXYZSg4kciB1fb3rVz/ELrYeymehic3t+gi8k9JOnMizht/BHHp9uCgPNYLTHQ X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1P193MB0413.EURP193.PROD.OUTLOOK.COM; PTR:; CAT:NONE; SFS:(13230031)(136003)(39840400004)(376002)(366004)(346002)(396003)(230922051799003)(186009)(64100799003)(451199024)(1800799009)(6666004)(2616005)(83380400001)(6486002)(478600001)(1076003)(52116002)(38100700002)(6506007)(6512007)(66476007)(66946007)(66556008)(4326008)(8676002)(8936002)(41300700001)(316002)(86362001)(7416002)(2906002)(54906003)(36756003)(5660300002); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?3XLJh4itFinlueTudjCJxV2NwAwu?= =?utf-8?q?W+9unnrk7N0+M92K5pkhOGTltrOGD8KLdCcP5M8d+6sQ4td2fcixlHfIJ0eYZqBTF?= =?utf-8?q?JZPveht/efI6SEx3JlfB952MUOYRWgK6Pz6QvTX2CRa2y55tL9lkebVf6BrHqur+/?= =?utf-8?q?4Pz1AiNLyBTj/kLQvoHaZqBXTj5mPo9sg+OI9a9ru3T/rsGij3nECL8+XSCLcCsLi?= =?utf-8?q?3FhKey00AtI06q9PDq8Zd1/vbkq66rwFOGSwpxxLvz8YsP0ItoDUwKnuu85d2y45d?= =?utf-8?q?x8j+QA0ZHJZRrAl4/rPtF5ESEN1MxG0UyoAjPcpu/fgcW+TC/IaBNK6ppP2bvuWEz?= =?utf-8?q?r3MzMEW53VbNt8lO9CWx/+L/q5v5NrPD9+pioSg+6UYkI3G4CMGQKVRQKdUEGI0hW?= =?utf-8?q?MfhYjUheTv2OZ5R/H+yXXYlYaWjyf4QGr1T4Zf7tdtsuNcojevZlexwNx5y8bYqLW?= =?utf-8?q?hCtfBPMNYuW7YRBqD8gVZCPQAtcKbWHSp8cJgwAg0TPpU95uEzGS+P1HEohdPS5u/?= =?utf-8?q?S9QmaYhGB72wY8H9KlCzv+CJvaPlojHbav3HJyrnrB6OH3zzIPkqHPG6+chufALqT?= =?utf-8?q?IiuHAAfLMACK9UfmXGIeHmVa4ZIdnjxf8HNitSWz6Q/NmxV4GbL++56CGjH3R4bis?= =?utf-8?q?hLGbYJdn096tfrBSJH8E/73O22IMAuapsRZWf2edbFaOubaZkEg9K1xidRfgZTOtb?= =?utf-8?q?vufpLAZXjmBr2j2Cqhip4rJDrlQyoFok/Wn+nWn3UQTPhxmA3PJPtVkLGOwCE8EpG?= =?utf-8?q?vA5ZzfbU2OEK9t6OBJYCuTg2ELzfOUrySqvIpLmwrhZyWCk9M4i09VQrlQvnRfP9d?= =?utf-8?q?vuhNH7F9wkRg7AqxJMjQs+Tvvr+dUe62HIcTJjkiTSjMqQWurfR0V0dgirOvuGdim?= =?utf-8?q?tLV42TXpacWiMXwLDeB312rVEoLXKhofoh1auHurDTXbDC2sM7Kz0VEG+fp1fbP0z?= =?utf-8?q?yPTw7VV39lyMdWyATLCY+i6QYLvkjpIulSk26j4bF/ipbx4Qt6jxLytMf66M+x4Si?= =?utf-8?q?l369NkOj0YtW8QVZ6bQNYocqxYUpJSwYKLVdb2J0Lh9qp2bQp2N5S0IabffEKc1Lv?= =?utf-8?q?UkGqq8Vp6Ht19KDVtDHp4ApDORFMlih7nP9b9/tVGTb10qOdhFx91g1UaM14rZCGY?= =?utf-8?q?uowBjVQofI08LRnvB/yMuTbMh/wgF4zymsv+28/qx/ND56zxjheEEdHquJykKtRY6?= =?utf-8?q?PRua3yVoL7hNn5u5G9WHTPIlYvf97Ajk5JVrLmmHdYPc8smqJ+GmkYLJI41DVnece?= =?utf-8?q?lkWsjBVznPMbccq9QGteMxySznZalckyO/UkF+++jEMJTPXrKwM4YcyYeO0iJx9Gs?= =?utf-8?q?5uU+IvxgF4Jv6x/sk/Ag9TAoUGlOql2JpgBx/tNDkiKQ0PvpPZQUL/DC+iiXBOgGq?= =?utf-8?q?28URD/YrftBX1qNr2VRfdqu/fCXdvMKY6lcGTsjgcw+x4pLpVyCzlenbKRmiAHE/+?= =?utf-8?q?XpLlp4G7o8V/ZxGF4HHuOPveW19SfNewINDPxno/aRQdknscwy8nUezuwed1C8UiU?= =?utf-8?q?JOr4/ZBdj9UJJJPONEyNBKK6tY3cOgQDcaBeGvRCazl5t2cme45FSmvfuLvBaj9Ol?= =?utf-8?q?xOvaoQ1p8Gf?= X-OriginatorOrg: kunbus.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7563fd0f-131b-4ca1-b310-08dbca80f8a2 X-MS-Exchange-CrossTenant-AuthSource: VI1P193MB0413.EURP193.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Oct 2023 17:39:08.0536 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: aaa4d814-e659-4b0a-9698-1c671f11520b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 3G/BcBG+MR0SKgB0v9OH9fWXUk4Z96ezoa242iKnjMLz/idaDYLIuT7767KHxp4W8c/vim2rxhhbVa9f0eLhMA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM8P193MB1187 Precedence: bulk List-ID: X-Mailing-List: linux-serial@vger.kernel.org If the imx driver cannot support RS485 it sets the ports rs485_supported structure to NULL. But it still calls uart_get_rs485_mode() which may set the RS485_ENABLED flag nevertheless. This may lead to an attempt to configure RS485 even if it is not supported when the flag is evaluated in uart_configure_port() at port startup. Avoid this by bailing out of uart_get_rs485_mode() if the RS485_ENABLED flag is not supported by the caller. With this fix a check for RTS availability is now obsolete in the imx driver, since it can not evaluate to true any more. Remove this check, too. Fixes: 00d7a00e2a6f ("serial: imx: Fill in rs485_supported") Cc: stable@vger.kernel.org Suggested-by: Uwe Kleine-König Signed-off-by: Lino Sanfilippo --- drivers/tty/serial/imx.c | 4 ---- drivers/tty/serial/serial_core.c | 3 +++ 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c index edb2ec6a5567..c8c19bf8585d 100644 --- a/drivers/tty/serial/imx.c +++ b/drivers/tty/serial/imx.c @@ -2332,10 +2332,6 @@ static int imx_uart_probe(struct platform_device *pdev) return ret; } - if (sport->port.rs485.flags & SER_RS485_ENABLED && - (!sport->have_rtscts && !sport->have_rtsgpio)) - dev_err(&pdev->dev, "no RTS control, disabling rs485\n"); - /* * If using the i.MX UART RTS/CTS control then the RTS (CTS_B) * signal cannot be set low during transmission in case the diff --git a/drivers/tty/serial/serial_core.c b/drivers/tty/serial/serial_core.c index dca09877fabc..95cec2343b35 100644 --- a/drivers/tty/serial/serial_core.c +++ b/drivers/tty/serial/serial_core.c @@ -3576,6 +3576,9 @@ int uart_get_rs485_mode(struct uart_port *port) int ret; int rx_during_tx_gpio_flag; + if (!(port->rs485_supported.flags & SER_RS485_ENABLED)) + return 0; + ret = device_property_read_u32_array(dev, "rs485-rts-delay", rs485_delay, 2); if (!ret) {