[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAPDyKFqa6ut25uaDN6pP50wGi2+DZ8MJ6_OZ6ujtgjfHz4hxzg@mail.gmail.com>
Date: Fri, 18 Jul 2025 15:04:18 +0200
From: Ulf Hansson <ulf.hansson@...aro.org>
To: Benoît Monin <benoit.monin@...tlin.com>
Cc: Adrian Hunter <adrian.hunter@...el.com>, linux-mmc@...r.kernel.org,
linux-kernel@...r.kernel.org,
Vladimir Kondratiev <vladimir.kondratiev@...ileye.com>,
Tawfik Bayouk <tawfik.bayouk@...ileye.com>, Gregory CLEMENT <gregory.clement@...tlin.com>,
Thomas Petazzoni <thomas.petazzoni@...tlin.com>
Subject: Re: [PATCH v3 0/6] mmc: introduce multi-block read gap tuning
On Wed, 16 Jul 2025 at 17:47, Benoît Monin <benoit.monin@...tlin.com> wrote:
>
> This patchset implements the multi-block read gap tuning for the SDHCI
> cadence driver.
>
> The first two patches introduce helpers to check for CMD23 support by
> MMC card: mmc_card_can_cmd23 for support proper and mmc_card_blk_no_cmd23
> for the NO_CMD23 quirk.
>
> The next two patches use the new helpers in mmc/core/mmc_test.c and
> mmc/core/block.c.
>
> The next patch add mmc_read_tuning to read blocks from MMC as part of
> the tuning. This function does not return the data read to the caller,
> only the status of the read operation. It also takes an optional card
> argument, not used when called from execute_tuning() but present in
> execute_hs400_tuning() and prepare_sd_hs_tuning().
>
> Finally the last patch uses mmc_read_tuning to implement the multi-block
> read gap tuning in the cadence host driver, by doing a multi-block read
> and increasing the gap delay until the read succeeds.
>
> v2 -> v3:
> Move the changes related to CMD23 support by MMC card to separate patches
> at the beginning of the series.
> Change the mmc read function to be less appealing to reuse/abuse
> outside of tuning context.
A quick review made me feel a lot better about this, thanks!
Although I will need a few more days for review and possibly it's
getting too late for v6.17 for me, but let's see, I will do my best.
Kind regards
Uffe
>
> Link to v2:
> https://lore.kernel.org/linux-mmc/cover.1751898225.git.benoit.monin@bootlin.com/
>
> v1 -> v2:
> Split the code between the core and the driver by adding a generic
> function to read blocks from the MMC.
>
> Link to v1:
> https://lore.kernel.org/linux-mmc/2a43386ffef4012530ca2421ad81ad21c36c8a25.1750943549.git.benoit.monin@bootlin.com/
>
> Signed-off-by: Benoît Monin <benoit.monin@...tlin.com>
> ---
> Benoît Monin (6):
> mmc: core: add mmc_card_can_cmd23
> mmc: card: add mmc_card_blk_no_cmd23
> mmc: mmc_test: use mmc_card cmd23 helpers
> mmc: block: use mmc_card cmd23 helpers
> mmc: core: add mmc_read_tuning
> mmc: sdhci-cadence: implement multi-block read gap tuning
>
> drivers/mmc/core/block.c | 12 ++----
> drivers/mmc/core/card.h | 9 ++++-
> drivers/mmc/core/core.c | 9 +++++
> drivers/mmc/core/core.h | 1 +
> drivers/mmc/core/mmc_ops.c | 79 ++++++++++++++++++++++++++++++++++++++++
> drivers/mmc/core/mmc_test.c | 10 +----
> drivers/mmc/host/sdhci-cadence.c | 69 ++++++++++++++++++++++++++++++++++-
> include/linux/mmc/host.h | 2 +
> 8 files changed, 171 insertions(+), 20 deletions(-)
> ---
> base-commit: 4ad9e44c76b301e786eb4cdab890eac8c7eebd42
> change-id: 20250716-mobileye-emmc-for-upstream-4-40ef552c3b59
>
> Best regards,
> --
> Benoît Monin <benoit.monin@...tlin.com>
>
Powered by blists - more mailing lists