From mboxrd@z Thu Jan 1 00:00:00 1970 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 3FBE8C32793 for ; Wed, 18 Jan 2023 15:44:04 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229741AbjARPoD (ORCPT ); Wed, 18 Jan 2023 10:44:03 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49928 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229924AbjARPoC (ORCPT ); Wed, 18 Jan 2023 10:44:02 -0500 Received: from mail-ej1-x635.google.com (mail-ej1-x635.google.com [IPv6:2a00:1450:4864:20::635]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E1A662F79E for ; Wed, 18 Jan 2023 07:44:00 -0800 (PST) Received: by mail-ej1-x635.google.com with SMTP id mp20so37639251ejc.7 for ; Wed, 18 Jan 2023 07:44:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to; bh=TS9CCaD3W/Ef+3BKZ1mHmrI6rBrjUs7n/cOcP3Yjhmg=; b=Sz5zif0XpsrhWxDQC7aqEmSRXbgFoklqDczGmOyasi4+bAcquxfeb2w9q4G9v7UFEk F7vAiyULwgLTKCo78F/UXzpQQLsd+bfXLd/SUEpJ3Z4+A1YjlNCze/h7eECfA+JTrzTX 1igyU2bg0gGg36iBuGm9U79wTFEcLnTmlGriBgib/Wk+tDIjOKfOWLerI3WLIuw1CduZ Z365IY20ugTz2h3EAQl4WRl2D/FUqPEAzkFCGhz50eAlsSmkTpSTybJqdwq9G/zcdd8N 5HfIP1B1yaA08qABoklA+L6znmIiRuKmLFOWZUTKoALQGgBTzbOtz7UsEUVUkVwQePUR 3qqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=TS9CCaD3W/Ef+3BKZ1mHmrI6rBrjUs7n/cOcP3Yjhmg=; b=20YZxWVwXkWy7rG2cW+SgK8x0JsBTNa2W+veOdrqzMMCMiF2rp7CK2sa1lrcRUGHY/ ouCg/0viIWCKV/0WXF0ViZPlWPi7mxhZzjZLI5ZEerVfTPXuY8pfceyuMRlGWCklUZ+k la3j/9ZJEPi9EVQ3RqQlb2GAD4iTbU/C2NY0uArJDQzkCwHUhV7rRMKH/FXlrFPfRbdd Ybkd7jMFKCBQsPzIZbp7+3AZ3flzc6iWnbPdgIqxVVHTfSE6Wy35mwb8Vuq45cHVtkG6 vzSqvsWIjUT15xBnuBA8Q4cJ2xbwMJS/hioWoY1H6DIWuP6uR7Eflg7I40G2hsNd/aT2 ZIcA== X-Gm-Message-State: AFqh2koSHkRVAMYvY9hInLMhEKGKzSd79cJfrVkc7TD2phsX64rTZKsy BmHPdBBWhpx1zXj9pkORVuo= X-Google-Smtp-Source: AMrXdXvOJPASPFYP23YMH/bEYgBLynA6wIJW70hAqoXhinXvT07+SEnHOlJuMvPK3/LsNzeRVEk2Pg== X-Received: by 2002:a17:907:98f4:b0:872:6bd0:d25 with SMTP id ke20-20020a17090798f400b008726bd00d25mr7447296ejc.37.1674056639300; Wed, 18 Jan 2023 07:43:59 -0800 (PST) Received: from osv.localdomain ([89.175.180.246]) by smtp.gmail.com with ESMTPSA id k2-20020a170906970200b0073dbaeb50f6sm14664730ejx.169.2023.01.18.07.43.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Jan 2023 07:43:58 -0800 (PST) From: Sergey Organov To: Ilpo =?utf-8?Q?J=C3=A4rvinen?= Cc: linux-serial , Fabio Estevam , Greg Kroah-Hartman , Jiri Slaby , Richard Genoud , Sascha Hauer , Shawn Guo , Tim Harvey , Tomasz =?utf-8?Q?Mo=C5=84?= , linux-arm-kernel@lists.infradead.org, NXP Linux Team , Pengutronix Kernel Team Subject: Re: [PATCH 7/8] serial: imx: use readl() to optimize FIFO reading loop References: <87bko4e65y.fsf@osv.gnss.ru> <20230113184334.287130-1-sorganov@gmail.com> <20230113184334.287130-8-sorganov@gmail.com> <48ba84e3-7f52-9cfb-426a-a432587c1c9@linux.intel.com> <87lem12h0k.fsf@osv.gnss.ru> Date: Wed, 18 Jan 2023 18:43:56 +0300 In-Reply-To: ("Ilpo =?utf-8?Q?J=C3=A4rvinen=22's?= message of "Wed, 18 Jan 2023 10:24:13 +0200 (EET)") Message-ID: <87edrrzw3n.fsf@osv.gnss.ru> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-serial@vger.kernel.org Ilpo Järvinen writes: > On Tue, 17 Jan 2023, Sergey Organov wrote: > >> Ilpo Järvinen writes: >> >> > On Fri, 13 Jan 2023, Sergey Organov wrote: >> > >> >> Use readl() instead of heavier imx_uart_readl() in the Rx ISR, as we know >> >> we read registers that must not be cached. >> >> >> >> Signed-off-by: Sergey Organov >> >> --- >> >> drivers/tty/serial/imx.c | 5 +++-- >> >> 1 file changed, 3 insertions(+), 2 deletions(-) >> >> >> >> diff --git a/drivers/tty/serial/imx.c b/drivers/tty/serial/imx.c >> >> index be00362b8b67..f4236e8995fa 100644 >> >> --- a/drivers/tty/serial/imx.c >> >> +++ b/drivers/tty/serial/imx.c >> >> @@ -890,14 +890,15 @@ static irqreturn_t __imx_uart_rxint(int irq, void *dev_id) >> >> struct imx_port *sport = dev_id; >> >> unsigned int rx, flg; >> >> struct tty_port *port = &sport->port.state->port; >> >> + typeof(sport->port.membase) membase = sport->port.membase; >> >> u32 usr2; >> >> >> >> /* If we received something, check for 0xff flood */ >> >> - usr2 = imx_uart_readl(sport, USR2); >> >> + usr2 = readl(membase + USR2); >> >> if (usr2 & USR2_RDR) >> >> imx_uart_check_flood(sport, usr2); >> >> >> >> - while ((rx = imx_uart_readl(sport, URXD0)) & URXD_CHARRDY) { >> >> + while ((rx = readl(membase + URXD0)) & URXD_CHARRDY) { >> >> flg = TTY_NORMAL; >> >> sport->port.icount.rx++; >> > >> > I'd just make a uport local variable and use uport->membase + xx. There >> > are plenty of sport->port constructs to replace with uport in that >> > function anyway. >> >> OK, thanks, will do it this way. Probably with global rename over this >> function in a separate patch? > > Yes, it is better to have it in own patch. Well, it now seems that I'll drop this patch altogether, by agreement with Uwe. Do you think introducing of 'uport' still worth it in this one function? I figure it's probably not, provided the reset of the code in the driver still doesn't use the idiom. Thanks, -- Sergey From mboxrd@z Thu Jan 1 00:00:00 1970 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A827BC32793 for ; Wed, 18 Jan 2023 15:45:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:In-Reply-To: Date:References:Subject:Cc:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=jrtnZGo7JMxPMXP0+f33pRtLVv/xVknMCdBvv7neaZM=; b=eB8iNCjHVuqeNf lrC/xsPLWbleDahV8s3+GObsBubTe8BxAhGBsogN2HQsiQPHsiOk9FIK9cc6+VjvRWMR903ExrNO8 EpTAUgs5H3dHKkeDg7ANQO6GX4sCJZ768TEJbtS+jcAGNG9O0hBY7dmoSFGPj49tu7uXnZnJPjoik kcgLBqTjQG4TLZRgXl6ukD8qYoyx4Vsdfbx3XmREXf/qANLF0+wEBgR/2qosu1od5Dyph95DxXX58 AHHuF9B6Zi+wB8jOcgejwLP1Zbjn0gD4vEeuAHQyx7iXZOL1f5rnyibImVFrDxZyKX+Fm34LBVsFh m6xcKL7u5gXHAN4vCSRA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pIAbc-001dB4-7M; Wed, 18 Jan 2023 15:44:04 +0000 Received: from mail-ej1-x634.google.com ([2a00:1450:4864:20::634]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pIAbZ-001d9p-Gt for linux-arm-kernel@lists.infradead.org; Wed, 18 Jan 2023 15:44:02 +0000 Received: by mail-ej1-x634.google.com with SMTP id tz11so19831473ejc.0 for ; Wed, 18 Jan 2023 07:44:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to; bh=TS9CCaD3W/Ef+3BKZ1mHmrI6rBrjUs7n/cOcP3Yjhmg=; b=Sz5zif0XpsrhWxDQC7aqEmSRXbgFoklqDczGmOyasi4+bAcquxfeb2w9q4G9v7UFEk F7vAiyULwgLTKCo78F/UXzpQQLsd+bfXLd/SUEpJ3Z4+A1YjlNCze/h7eECfA+JTrzTX 1igyU2bg0gGg36iBuGm9U79wTFEcLnTmlGriBgib/Wk+tDIjOKfOWLerI3WLIuw1CduZ Z365IY20ugTz2h3EAQl4WRl2D/FUqPEAzkFCGhz50eAlsSmkTpSTybJqdwq9G/zcdd8N 5HfIP1B1yaA08qABoklA+L6znmIiRuKmLFOWZUTKoALQGgBTzbOtz7UsEUVUkVwQePUR 3qqA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:user-agent:message-id :in-reply-to:date:references:subject:cc:to:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=TS9CCaD3W/Ef+3BKZ1mHmrI6rBrjUs7n/cOcP3Yjhmg=; b=gfmhVtMr5ZlNZzFuoVdqB6VU3P6Fgdt5Gsir1msOX81Y2i47DyB966C+d/hOJEQP+S ivGUj6bfBH2qJbQ3T45bxaSUw+tKxL5P7D7kfaRKvJUIU3maNgyWXzDFZvNPQjM8XuUV ou4lYneJAQuTpPsYRxlrjpMqYb/OqTn7bNQIPVllMI1X42iubh2ZTN3mtpd0fv9bf763 PFWv3uQoltmprlZzr8FjvQ0Rte+U7ZczmphaqZE2ZU3sR35DT/7aO5PCNAkY1Au5zwnK 1GC/sgiH1DydIfUeBsihdyI1QVYy5lGEAdjoH+2/j+FXMdwM/1i6yhzhE+ekyu/k3kHz GKLw== X-Gm-Message-State: AFqh2koUbj9ErgG66NSfp2FVhXSthFksRHPeqQj8j/+58q6RHa3482w9 cfiMp1LjP/S7MSr6TrMR6wg= X-Google-Smtp-Source: AMrXdXvOJPASPFYP23YMH/bEYgBLynA6wIJW70hAqoXhinXvT07+SEnHOlJuMvPK3/LsNzeRVEk2Pg== X-Received: by 2002:a17:907:98f4:b0:872:6bd0:d25 with SMTP id ke20-20020a17090798f400b008726bd00d25mr7447296ejc.37.1674056639300; Wed, 18 Jan 2023 07:43:59 -0800 (PST) Received: from osv.localdomain ([89.175.180.246]) by smtp.gmail.com with ESMTPSA id k2-20020a170906970200b0073dbaeb50f6sm14664730ejx.169.2023.01.18.07.43.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Jan 2023 07:43:58 -0800 (PST) From: Sergey Organov To: Ilpo =?utf-8?Q?J=C3=A4rvinen?= Cc: linux-serial , Fabio Estevam , Greg Kroah-Hartman , Jiri Slaby , Richard Genoud , Sascha Hauer , Shawn Guo , Tim Harvey , Tomasz =?utf-8?Q?Mo=C5=84?= , linux-arm-kernel@lists.infradead.org, NXP Linux Team , Pengutronix Kernel Team Subject: Re: [PATCH 7/8] serial: imx: use readl() to optimize FIFO reading loop References: <87bko4e65y.fsf@osv.gnss.ru> <20230113184334.287130-1-sorganov@gmail.com> <20230113184334.287130-8-sorganov@gmail.com> <48ba84e3-7f52-9cfb-426a-a432587c1c9@linux.intel.com> <87lem12h0k.fsf@osv.gnss.ru> Date: Wed, 18 Jan 2023 18:43:56 +0300 In-Reply-To: ("Ilpo =?utf-8?Q?J=C3=A4rvinen=22's?= message of "Wed, 18 Jan 2023 10:24:13 +0200 (EET)") Message-ID: <87edrrzw3n.fsf@osv.gnss.ru> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230118_074401_594939_96B0DD67 X-CRM114-Status: GOOD ( 23.55 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org SWxwbyBKw6RydmluZW4gPGlscG8uamFydmluZW5AbGludXguaW50ZWwuY29tPiB3cml0ZXM6Cgo+ IE9uIFR1ZSwgMTcgSmFuIDIwMjMsIFNlcmdleSBPcmdhbm92IHdyb3RlOgo+Cj4+IElscG8gSsOk cnZpbmVuIDxpbHBvLmphcnZpbmVuQGxpbnV4LmludGVsLmNvbT4gd3JpdGVzOgo+PiAKPj4gPiBP biBGcmksIDEzIEphbiAyMDIzLCBTZXJnZXkgT3JnYW5vdiB3cm90ZToKPj4gPgo+PiA+PiBVc2Ug cmVhZGwoKSBpbnN0ZWFkIG9mIGhlYXZpZXIgaW14X3VhcnRfcmVhZGwoKSBpbiB0aGUgUnggSVNS LCBhcyB3ZSBrbm93Cj4+ID4+IHdlIHJlYWQgcmVnaXN0ZXJzIHRoYXQgbXVzdCBub3QgYmUgY2Fj aGVkLgo+PiA+PiAKPj4gPj4gU2lnbmVkLW9mZi1ieTogU2VyZ2V5IE9yZ2Fub3YgPHNvcmdhbm92 QGdtYWlsLmNvbT4KPj4gPj4gLS0tCj4+ID4+ICBkcml2ZXJzL3R0eS9zZXJpYWwvaW14LmMgfCA1 ICsrKy0tCj4+ID4+ICAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9u cygtKQo+PiA+PiAKPj4gPj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvdHR5L3NlcmlhbC9pbXguYyBi L2RyaXZlcnMvdHR5L3NlcmlhbC9pbXguYwo+PiA+PiBpbmRleCBiZTAwMzYyYjhiNjcuLmY0MjM2 ZTg5OTVmYSAxMDA2NDQKPj4gPj4gLS0tIGEvZHJpdmVycy90dHkvc2VyaWFsL2lteC5jCj4+ID4+ ICsrKyBiL2RyaXZlcnMvdHR5L3NlcmlhbC9pbXguYwo+PiA+PiBAQCAtODkwLDE0ICs4OTAsMTUg QEAgc3RhdGljIGlycXJldHVybl90IF9faW14X3VhcnRfcnhpbnQoaW50IGlycSwgdm9pZCAqZGV2 X2lkKQo+PiA+PiAgCXN0cnVjdCBpbXhfcG9ydCAqc3BvcnQgPSBkZXZfaWQ7Cj4+ID4+ICAJdW5z aWduZWQgaW50IHJ4LCBmbGc7Cj4+ID4+ICAJc3RydWN0IHR0eV9wb3J0ICpwb3J0ID0gJnNwb3J0 LT5wb3J0LnN0YXRlLT5wb3J0Owo+PiA+PiArCXR5cGVvZihzcG9ydC0+cG9ydC5tZW1iYXNlKSBt ZW1iYXNlID0gc3BvcnQtPnBvcnQubWVtYmFzZTsKPj4gPj4gIAl1MzIgdXNyMjsKPj4gPj4gIAo+ PiA+PiAgCS8qIElmIHdlIHJlY2VpdmVkIHNvbWV0aGluZywgY2hlY2sgZm9yIDB4ZmYgZmxvb2Qg Ki8KPj4gPj4gLQl1c3IyID0gaW14X3VhcnRfcmVhZGwoc3BvcnQsIFVTUjIpOwo+PiA+PiArCXVz cjIgPSByZWFkbChtZW1iYXNlICsgVVNSMik7Cj4+ID4+ICAJaWYgKHVzcjIgJiBVU1IyX1JEUikK Pj4gPj4gIAkJaW14X3VhcnRfY2hlY2tfZmxvb2Qoc3BvcnQsIHVzcjIpOwo+PiA+PiAgCj4+ID4+ IC0Jd2hpbGUgKChyeCA9IGlteF91YXJ0X3JlYWRsKHNwb3J0LCBVUlhEMCkpICYgVVJYRF9DSEFS UkRZKSB7Cj4+ID4+ICsJd2hpbGUgKChyeCA9IHJlYWRsKG1lbWJhc2UgKyBVUlhEMCkpICYgVVJY RF9DSEFSUkRZKSB7Cj4+ID4+ICAJCWZsZyA9IFRUWV9OT1JNQUw7Cj4+ID4+ICAJCXNwb3J0LT5w b3J0Lmljb3VudC5yeCsrOwo+PiA+Cj4+ID4gSSdkIGp1c3QgbWFrZSBhIHVwb3J0IGxvY2FsIHZh cmlhYmxlIGFuZCB1c2UgdXBvcnQtPm1lbWJhc2UgKyB4eC4gVGhlcmUgCj4+ID4gYXJlIHBsZW50 eSBvZiBzcG9ydC0+cG9ydCBjb25zdHJ1Y3RzIHRvIHJlcGxhY2Ugd2l0aCB1cG9ydCBpbiB0aGF0 IAo+PiA+IGZ1bmN0aW9uIGFueXdheS4KPj4gCj4+IE9LLCB0aGFua3MsIHdpbGwgZG8gaXQgdGhp cyB3YXkuIFByb2JhYmx5IHdpdGggZ2xvYmFsIHJlbmFtZSBvdmVyIHRoaXMKPj4gZnVuY3Rpb24g aW4gYSBzZXBhcmF0ZSBwYXRjaD8KPgo+IFllcywgaXQgaXMgYmV0dGVyIHRvIGhhdmUgaXQgaW4g b3duIHBhdGNoLgoKV2VsbCwgaXQgbm93IHNlZW1zIHRoYXQgSSdsbCBkcm9wIHRoaXMgcGF0Y2gg YWx0b2dldGhlciwgYnkgYWdyZWVtZW50CndpdGggVXdlLiBEbyB5b3UgdGhpbmsgaW50cm9kdWNp bmcgb2YgJ3Vwb3J0JyBzdGlsbCB3b3J0aCBpdCBpbiB0aGlzCm9uZSBmdW5jdGlvbj8gSSBmaWd1 cmUgaXQncyBwcm9iYWJseSBub3QsIHByb3ZpZGVkIHRoZSByZXNldCBvZiB0aGUgY29kZQppbiB0 aGUgZHJpdmVyIHN0aWxsIGRvZXNuJ3QgdXNlIHRoZSBpZGlvbS4KClRoYW5rcywKLS0gU2VyZ2V5 CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1h cm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5v cmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0t a2VybmVsCg==