Re: [PATCH 0/4] mmc: Fix busy detection timeouts for some SDHCI variant

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 10 Mar 2020 at 16:33, Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote:
>
> The mmc core may decide (for CMD6 and erase/trim/discard operations) to convert
> from using an R1B response into using an R1 response, in cases when the needed
> busy timeout exceeds the host's maximum supported HW max_busy_timeout. The core
> does this to prevent the host from doing HW busy detection and instead rely on
> polling, as to cope with the needed busy timeout.
>
> However, it has turned out that some SDHCI variants (tegra, omap), really
> requires R1B for all commands that have this response associated with them. This
> became especially obvious when commit 24ed3bd01d6a ("mmc: core: Specify timeouts
> for BKOPS and CACHE_FLUSH for eMMC") (and a few other commits on top) got
> introduced in v5.6-rc1, as several people reported errors (thanks!). More
> precisely, the mentioned commit triggered the existing problems described above
> in the SDHCI variant drivers, when an eMMC cache flush command (CMD6) was
> issued.
>
> This series fixes these problems, but the changes are also targeted for stable
> releases as the problems have existed since a long time back.
>
> Please help out in testing this!

Tested-by: Anders Roxell <anders.roxell@xxxxxxxxxx>

I tested it on a beagleboard x15.

Cheers,
Anders

>
> Kind regards
> Ulf Hansson
>
>
> Ulf Hansson (4):
>   mmc: core: Allow host controllers to require R1B for CMD6
>   mmc: core: Respect MMC_CAP_NEED_RSP_BUSY for erase/trim/discard
>   mmc: sdhci-omap: Fix busy detection by enabling MMC_CAP_NEED_RSP_BUSY
>   mmc: sdhci-tegra: Fix busy detection by enabling MMC_CAP_NEED_RSP_BUSY
>
>  drivers/mmc/core/core.c        | 5 ++++-
>  drivers/mmc/core/mmc_ops.c     | 6 ++++--
>  drivers/mmc/host/sdhci-omap.c  | 3 +++
>  drivers/mmc/host/sdhci-tegra.c | 3 +++
>  include/linux/mmc/host.h       | 1 +
>  5 files changed, 15 insertions(+), 3 deletions(-)
>
> --
> 2.20.1
>



[Index of Archives]     [Linux Memonry Technology]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux