Received: by 2002:ad5:4acb:0:0:0:0:0 with SMTP id n11csp229951imw; Mon, 4 Jul 2022 08:11:57 -0700 (PDT) X-Google-Smtp-Source: AGRyM1twpqnAGHGu8aSt6QIxH7aOMCaqFqM6mq8zLZG2625A17Z4IHh8d2d2BaFG9MqOSg1wyowJ X-Received: by 2002:a17:906:6c82:b0:709:f868:97f6 with SMTP id s2-20020a1709066c8200b00709f86897f6mr29343835ejr.555.1656947516903; Mon, 04 Jul 2022 08:11:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1656947516; cv=none; d=google.com; s=arc-20160816; b=V9NWbg7n+sL++XOIy/9fYb4RYKFt3mMT3Z3wm251p26Jh3mE9rCbIEn2Fa/rAHIq68 +/zsOsowPSOHpPdp43sV2mx/0I0kBXHdN8tbGtR+7+1Iobt191nrz9QNZMRQtJCKI6dN liJa2KE5eQNI4BqveshyVQWApEvCJp/RMlyEoDYPaelgXnLB+pl5f+4s57zmpEkEctUN kBwg4OQxZ5erZglMzmNuZyTsBc28OcdThzHFWWYavlGWbip4SxXRAXUj0uFbmS8IHyMO 1OeHu6CeAMmw0M0jByqetLvYrXhX3qbct3e4GeBd64JsqVRtGohuNQlWqnQSqUnrt0tP rWGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id:dkim-signature; bh=EbZCka/+AbTEHmmEmHenvymQAp8KqSQPmFFoTZeMXiM=; b=LnuTsDqvd7r8TgMQ23+hvUKYyeWGAp9K9LoKjfH/EP193vMe6PkgvgBGbPALXvXZvl MpE8u3juW743UNG386FRgjg8S5sZrxZybWSAHDtja+ShkhqIo9KH2Aibv+Yrjkvalos8 +O2na3DVK+Z4inbwIAQuXukITiW2Ma1m1fRHWEz7rzq/bw5aZ2+A3epFJ9xMfMFcHjrM gxiZpbGEMUSSFX7sr3vRJlzdawBctz0bu6eVK3g3ZCOqQr3RkXOl2QD/jKs54b6nOu5F 5wm4tVgxgR25zGOllii9YZfW32y7sz6A4TejFbLzNLrIQrb0FH+zUsqe69863D3oFSR3 QIoA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmx.net header.s=badeba3b8450 header.b=RYMeRukI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmx.de Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id dt20-20020a170907729400b00726be0cb176si20655735ejc.837.2022.07.04.08.11.30; Mon, 04 Jul 2022 08:11:56 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmx.net header.s=badeba3b8450 header.b=RYMeRukI; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmx.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233804AbiGDPJB (ORCPT + 99 others); Mon, 4 Jul 2022 11:09:01 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60916 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232622AbiGDPIj (ORCPT ); Mon, 4 Jul 2022 11:08:39 -0400 Received: from mout.gmx.net (mout.gmx.net [212.227.17.21]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 6E9FF12AF8; Mon, 4 Jul 2022 08:07:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1656947229; bh=K7RUmy5Limq+hSDDppl+PDSSH2S2TL2HjFu3L9C6A84=; h=X-UI-Sender-Class:Date:Subject:To:Cc:References:From:In-Reply-To; b=RYMeRukIIZY0NySBb0GJ4pRIQUlwiCXqGgva4+QIXoveWGJofZ0BcoHViO6Z8y0QP PZv7V7gzReeaVZuBe65DgHZS7ve8e57sn0mWLIOWUNhkFX4UFogr8NTbmKo/IyiyGy lEK9BEOkenEhSg6mUwGwYVqIpr3c6zY/JYRIAX3M= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from [192.168.0.69] ([46.223.3.210]) by mail.gmx.net (mrgmx105 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MV67y-1o0EkU3jeQ-00SB0W; Mon, 04 Jul 2022 17:07:08 +0200 Message-ID: Date: Mon, 4 Jul 2022 17:07:03 +0200 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.9.1 Subject: Re: [PATCH v2 1/9] serial: core: only get RS485 termination GPIO if supported Content-Language: en-US To: =?UTF-8?Q?Ilpo_J=c3=a4rvinen?= Cc: Greg Kroah-Hartman , Jiri Slaby , robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, Andy Shevchenko , vz@mleia.com, linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org, linux-serial , LKML , Lukas Wunner , p.rosenberger@kunbus.com, Lino Sanfilippo References: <20220703170039.2058202-1-LinoSanfilippo@gmx.de> <20220703170039.2058202-2-LinoSanfilippo@gmx.de> <9bc128a9-7ce3-d1e-dad6-ca91a5564ea8@linux.intel.com> From: Lino Sanfilippo In-Reply-To: <9bc128a9-7ce3-d1e-dad6-ca91a5564ea8@linux.intel.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:F78mEPif5Gs2kOcs+5mq/KWWlBuEXGPYjtBh5mxK9oOEJMpfGIo OR5yhs5r4ovPoOCJt5q3K/q1nPcuQhsYyFZos/lk6mlBms4Pn8VtEMUN2amik0AVV7Hf/Mc Zv8MGpulkRMhBld/UXFFQ6GA6WeQSsTp006zT7pKHlxRPWqd0LQv36aEQF9qblcv4/RM3rj vrxSq2/eSfq2tBH5gOEvg== X-UI-Out-Filterresults: notjunk:1;V03:K0:w3Sj/bnMhPU=:etWO/zFLCTQMC9Vm/8oNZT ZUSqW/0YqLSBsBOjEIm0k30PV6cjGahSgQLQF0Bby8ZhB59TagpVvGz+QchQjBxHbT8Lv/Otd a+AifdGmvr62uiKuf86LoMsFCeAd9lYOnrApngKsDK0p9DMfNEcxHGmcdr7QEgkSDYWHUfPgq gkTXsyTWMMrO90p4/NIQXsPwFa7QuO0wMMGnWN0C20tsZmvZozgUR0xcfCgBt4tewAOoBtkX8 K9znygeacU6oygankuiOn4CLI24bNMa1K4R13DQs+/nyLsrji42E+em5N0lcNZh0SbGW2PKc2 qYuXOyJknG0+SVESRVLCNf4PvoTbwiCfI59kdXW7UhIq7eGRFjQoMytpUUtSjRgZWlRPnvJ2V sclMOg4JnPqecClD86M/BD/viZFVvsWdc626EHCHxB606qwz2tqiIEikzFVY4Se4feq/gNZkk STazAfi7ERd5RAvnTKL9Pm9Nx/a8JQjF5yZtiZckJaiNUmwvVmOPXGVr3YTt5PLvyE1t15qAA VTI0vzEa0D+H/61vsO4L8jHiul0cG7Z0jdQCOqtac2AWdh/ojSWQ2Q95YlDuZfjgSwqKZSfAh wYeTzsc930j7D7sgz+BPSx48pMnAZqITeauJtx7fK343SXgYhZYLOCn6gGPChDTdKssN3IX0P 3DgA/mAkWimWllbKrrjhnwL0CTK8ca1ULCKPbazNasK6BAKin5mGFMq6AW8ExXPUt4+cXTkdP Zl2qFJm0jkI4al71k8MTIze7FL2tIHpPr4d5PPOMEJHOBQocCXvISmRoxZnWoAZPxH4xS4vt2 b6MRTsD9dBN2UXnH6hvdzdspOgBkCal0Dt0ST4WkBN4ZzyizUwGiVOflck2SWtTOJ2ZLzzRXV JBCC97UGHPWVjIrt2wzhoMfuVe3Su/HykY10vDCWHwyh1Z9bA/fj+eGC2OLxDTJZ+idGs36HM xOU9j6xdyb7H/3cpvITGKJlzv6wY+nsBCLEifUcKhd2qWm5qSdPcDwWFIP10pq9JqW92bGGGW P9fRQr36EP+U3DydnLGYxdCYppigklzPGs0zzwqrU/E7oKxRX7kRmB0PdpGTv2SKM7hy6qHmz NLXHdGSP+U71WoQI4h60OHOLnPGCgB/8G3K6CxSsBJQJRJ/Jy60cDM/2w== X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FREEMAIL_FROM,NICE_REPLY_A,RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 04.07.22 11:55, Ilpo J=C3=A4rvinen wrote: > On Sun, 3 Jul 2022, Lino Sanfilippo wrote: > >> From: Lino Sanfilippo >> >> In uart_get_rs485_mode() only try to get a termination GPIO if RS485 bu= s >> termination is supported by the driver. This prevents from allocating >> and holding a GPIO descriptor for the drivers lifetimg that will never = be >> used. >> >> Signed-off-by: Lino Sanfilippo >> --- >> >> NOTE: >> This patch follows the design decision that "rs485_supported" is >> set by the driver at initialization and cannot be modified >> afterwards. However the better approach would be to let the serial >> core modify the termination GPIO support setting based on the >> existence of a termination GPIO. If "rs485_supported" is not a >> read-only value any more in future the logic implemented in this >> patch should be adjusted accordingly. >> >> drivers/tty/serial/serial_core.c | 10 ++++++++++ >> 1 file changed, 10 insertions(+) >> >> diff --git a/drivers/tty/serial/serial_core.c b/drivers/tty/serial/seri= al_core.c >> index 85ef7ef00b82..3768663dfa4d 100644 >> --- a/drivers/tty/serial/serial_core.c >> +++ b/drivers/tty/serial/serial_core.c >> @@ -3404,6 +3404,16 @@ int uart_get_rs485_mode(struct uart_port *port) >> */ >> port->rs485_term_gpio =3D devm_gpiod_get_optional(dev, "rs485-term", >> GPIOD_OUT_LOW); >> + >> + if (port->rs485_term_gpio && >> + !(port->rs485_supported->flags & SER_RS485_TERMINATE_BUS)) { >> + dev_warn(port->dev, >> + "%s (%d): RS485 termination gpio not supported by driver\n", >> + port->name, port->line); >> + devm_gpiod_put(dev, port->rs485_term_gpio); >> + port->rs485_term_gpio =3D NULL; >> + } >> + >> if (IS_ERR(port->rs485_term_gpio)) { >> ret =3D PTR_ERR(port->rs485_term_gpio); >> port->rs485_term_gpio =3D NULL; > > I sent a series to embed supported_rs485 to uart_port and manage > SER_RS485_TERMINATE_BUS properly so I think this won't be necessary > with that? > > This is why I wrote the "NOTE" above. But yes, this patch is not needed any more. I will drop it in the next version. Regards, Lino