Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp393658rdb; Tue, 5 Dec 2023 08:13:33 -0800 (PST) X-Google-Smtp-Source: AGHT+IE6xvEmmXbVrHJpyaNDdJRtKOwmM10HbsRDzgsuCo20GCW/BCuP5UZOOTMxjMKTGBsem73N X-Received: by 2002:a92:dc84:0:b0:35d:59a2:6464 with SMTP id c4-20020a92dc84000000b0035d59a26464mr5346811iln.55.1701792813301; Tue, 05 Dec 2023 08:13:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701792813; cv=none; d=google.com; s=arc-20160816; b=OA/L0msviGczvoOSl7vWLHV/pV60fZwyk12RQWC6nrBoP5HXccuaPHLXv1ge07v21e sEt2xI+cz3Gjox7PON2dRtyRKI8GmxkwvOEwzJRqL4F+1gCZoh75NiH+a0qPexHxZMkk xVSMtcbeYA2RnsNG7WxbzdCnNuHl4Cepu0ZfSKB7OzwbMmzEDqD07pyZ0D2lvJidExzv VG0d0SEfEuFXAM9Sbwb3gHzsT3fnoghoJIeHiCiCKfjadmGw/ln+XN9l6+YtDkVlwWpu NJ2CyTKB8+cERvkYf/yIgyAA7G2Mhe/L4za8UEmhiTDXadZi/ZmKcubPDPC03vWhWnqq P4IQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:date:from:dkim-signature; bh=cdrpO8C0nU4ljU4ooPjskl+QNi6RFyVvcGgF3Sty5jA=; fh=1lExekPEzYmChj4XnXvBzO9E/ePCoSE1NOtiddplGcY=; b=BtdwN/j0h+qo1zs9wf3kkEVYMJ4aMuE4Bcr+LUMdh+J3ZVEAVOshcFvkiOXfpUHmMS f8UU7ga7Zl3SwG3bTZ0W8qZ5NGVlPWdhP0IoVO8qT8uaGe2U5apchYCbPQ2BwThridFv Z+30rOF4VWITmsBJTcWKwgIMq4IQLSrwlwIuyJdBw79ix7/crOuFEgmGghbc2VWpYPcA l6gvnpg5zFvAGO7z74Mj8fbOZ8gyRJmbCWF2ua5S2Dw9zr/DMNWb2PZEfezTGzL8dKEL 2/k1kaXRH4Oo2cm6Hs5Qa1HKC3e6DxDwqIf3cqFKVx/myVajdoStK+FogGhTkjE3quwt wMAQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@foundries.io header.s=google header.b=Ba5MuIdF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:1 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=foundries.io Return-Path: Received: from morse.vger.email (morse.vger.email. [2620:137:e000::3:1]) by mx.google.com with ESMTPS id w4-20020a63d744000000b005c2203bfc01si10147996pgi.170.2023.12.05.08.13.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 05 Dec 2023 08:13:33 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:1 as permitted sender) client-ip=2620:137:e000::3:1; Authentication-Results: mx.google.com; dkim=pass header.i=@foundries.io header.s=google header.b=Ba5MuIdF; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:1 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=foundries.io Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by morse.vger.email (Postfix) with ESMTP id A9C3F807E001; Tue, 5 Dec 2023 08:10:17 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at morse.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231833AbjLEQKC (ORCPT + 99 others); Tue, 5 Dec 2023 11:10:02 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52648 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231799AbjLEQKB (ORCPT ); Tue, 5 Dec 2023 11:10:01 -0500 Received: from mail-wr1-x435.google.com (mail-wr1-x435.google.com [IPv6:2a00:1450:4864:20::435]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1BD0C122 for ; Tue, 5 Dec 2023 08:10:06 -0800 (PST) Received: by mail-wr1-x435.google.com with SMTP id ffacd0b85a97d-3334a701cbbso2051492f8f.0 for ; Tue, 05 Dec 2023 08:10:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=foundries.io; s=google; t=1701792604; x=1702397404; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to; bh=cdrpO8C0nU4ljU4ooPjskl+QNi6RFyVvcGgF3Sty5jA=; b=Ba5MuIdF4U+NnpyoFjfElzDxb9c5FXXRQ1M49oAh1CfjMDF079zjnJRRwxaxjWoRWv RArBWuMaQ5oJYiYq+hhCK+bwo23gsLV5NfMglE3fqQvEkEh0XQ6pORaU6lS459FMH2D0 KlHvd6aOTR2OJJe6v28AA0vzxRB598Ck8Nyi9edLQdSRW8DvRPSQHwPvVbxVEbCvX6Z/ G9DouKbQChX5KYmvjXRIlw9dvfOT12xDw5nxrc7FdGpV6UHi5Ebv9zO/AwXuYdw6GAGH qwMJsZ+WN3hJjXR4AMwQ/tnB42DVnvDjMhWQst3nmaGTqnPze5TLk5qJ/2tIVmR3tGYx Afsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701792604; x=1702397404; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=cdrpO8C0nU4ljU4ooPjskl+QNi6RFyVvcGgF3Sty5jA=; b=c9UUHpOac/JOZ5vBAyb0PBFBaqslAaaTbqm+/8GkEA1zzetIYJcM6PFGzcHzVAlEZk tDjEg2SwmdGUz+KLfgB3yR8gMOGv3pc8XwqzYGy8BAS4YVmdSRjK+3tuEUYBySI7QiLK HhfSXXJO92PaWD/PJd0tqY05BIgGw1TrPvBnScQr5rsXN2WoFNlURFOdiogU1uRmAMdm 7t7SGsOJhLHyyOBgxbPixJmQq5YyF5K1aGblsVDsKby/wOzcKoewHuNBJK5l7igEyzGk 5GMKtPE3n80zDyvVYIMwEU0IpmOIWPv//kn8MvXZBjZJFeXxa2KXkuaoIpzUM0JF5ctP OwIg== X-Gm-Message-State: AOJu0YyB5WWFiTKSL692VayQ/3G5GS8bPB9XXwwV0/Hgnm5Kkc+MUBEa u9jXH9GIvbV5fwXo9+70bkajsg== X-Received: by 2002:a5d:5691:0:b0:332:ffdb:e9ad with SMTP id f17-20020a5d5691000000b00332ffdbe9admr3124222wrv.46.1701792604504; Tue, 05 Dec 2023 08:10:04 -0800 (PST) Received: from trax (139.red-79-144-198.dynamicip.rima-tde.net. [79.144.198.139]) by smtp.gmail.com with ESMTPSA id l7-20020a05600002a700b00332eb16d215sm14913576wry.23.2023.12.05.08.10.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 05 Dec 2023 08:10:04 -0800 (PST) From: "Jorge Ramirez-Ortiz, Foundries" X-Google-Original-From: "Jorge Ramirez-Ortiz, Foundries" Date: Tue, 5 Dec 2023 17:10:02 +0100 To: "Jorge Ramirez-Ortiz, Foundries" Cc: Avri Altman , "adrian.hunter@intel.com" , "ulf.hansson@linaro.org" , "christian.loehle@arm.com" , "jinpu.wang@ionos.com" , "axboe@kernel.dk" , "beanhuo@micron.com" , "yibin.ding@unisoc.com" , "victor.shih@genesyslogic.com.tw" , "asuk4.q@gmail.com" , "hkallweit1@gmail.com" , "yangyingliang@huawei.com" , "yebin10@huawei.com" , "linux-mmc@vger.kernel.org" , "linux-kernel@vger.kernel.org" Subject: Re: [PATCH] mmc: rpmb: do not force a retune before RPMB switch Message-ID: References: <20231204150111.3320071-1-jorge@foundries.io> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on morse.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (morse.vger.email [0.0.0.0]); Tue, 05 Dec 2023 08:10:17 -0800 (PST) On 04/12/23 19:14:01, Jorge Ramirez-Ortiz, Foundries wrote: > On 04/12/23 17:58:45, Avri Altman wrote: > > > > > > Requesting a retune before switching to the RPMB partition has been > > > observed to cause CRC errors on the RPMB reads (-EILSEQ). > > > > > > Since RPMB reads can not be retried, the clients would be directly affected by > > > the errors. > > > > > > This commit disables the request prior to RPMB switching while allowing the > > > pause interface to still request a retune before the pause for other use cases. > > > > > > This was verified with the sdhci-of-arasan driver (ZynqMP) configured for > > > HS200 using two separate eMMC cards (DG4064 and 064GB2). In both cases, > > > the error was easy to reproduce triggering every few tenths of reads. > > > > > > Signed-off-by: Jorge Ramirez-Ortiz > > > --- > > > drivers/mmc/core/block.c | 2 +- > > > drivers/mmc/core/host.c | 7 ++++--- > > > drivers/mmc/core/host.h | 2 +- > > > 3 files changed, 6 insertions(+), 5 deletions(-) > > > > > > diff --git a/drivers/mmc/core/block.c b/drivers/mmc/core/block.c index > > > f9a5cffa64b1..1d69078ad9b2 100644 > > > --- a/drivers/mmc/core/block.c > > > +++ b/drivers/mmc/core/block.c > > > @@ -859,7 +859,7 @@ static int mmc_blk_part_switch_pre(struct mmc_card > > > *card, > > > if (ret) > > > return ret; > > > } > > > - mmc_retune_pause(card->host); > > > + mmc_retune_pause(card->host, false); > > > } > > > > > > return ret; > > > diff --git a/drivers/mmc/core/host.c b/drivers/mmc/core/host.c index > > > 096093f7be00..a9b95aaa2235 100644 > > > --- a/drivers/mmc/core/host.c > > > +++ b/drivers/mmc/core/host.c > > > @@ -119,13 +119,14 @@ void mmc_retune_enable(struct mmc_host *host) > > > > > > /* > > > * Pause re-tuning for a small set of operations. The pause begins after the > > > - * next command and after first doing re-tuning. > > > + * next command and, if retune is set, after first doing re-tuning. > > > */ > > > -void mmc_retune_pause(struct mmc_host *host) > > > +void mmc_retune_pause(struct mmc_host *host, bool retune) > > > { > > Since mmc_blk_part_switch_pre is the only caller of mmc_retune_pause, > > How about just move those lines into it? > > +1 from me > > I wasnt sure if there was some other plan for mmc_retune_pause in the > future hence why I didnt remove it and extended it instead. > > Should I wait for Adrian's confirmation or just go ahead?. just making sure this is not falling through the cracks.