Re: [PATCH 0/2] mmc: rtsx: card stuck busy fixes for Realtek PCI SD card readers
From: Greg Kroah-Hartman
Date: Wed Jan 21 2026 - 11:07:23 EST
On Wed, Jan 21, 2026 at 01:49:11PM +0100, Ulf Hansson wrote:
> On Wed, 21 Jan 2026 at 11:31, Greg Kroah-Hartman
> <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > On Wed, Jan 21, 2026 at 11:13:03AM +0100, Ulf Hansson wrote:
> > > On Mon, 5 Jan 2026 at 07:02, Matthew Schwartz
> > > <matthew.schwartz@xxxxxxxxx> wrote:
> > > >
> > > > This series fixes some SD card timeout errors that occur after suspend and
> > > > resume ops on systems with Realtek PCI card readers. These issues occur on
> > > > my 2 RTS525A card readers and my RTS5261 card reader.
> > > >
> > > > As a stress test, I ran the amd-s2idle script from amd-debug-tools to
> > > > automate s2idle cycles and I launched a visual novel, WITCH ON THE HOLY
> > > > NIGHT, from the SD card. Visual novels are basically just slideshows, and
> > > > waiting for 10 seconds without advancing the text is an easy way to
> > > > trigger rtsx_pci_runtime_suspend/rtsx_pci_runtime_resume. I set amd-s2idle
> > > > to test with a 10 second long s2idle length with 13 seconds between runs.
> > > >
> > > > The main symptom that always shows up is "mmc0: Card stuck being busy!"
> > > > followed by timeouts and filesystem errors. This can occur during both
> > > > runtime resume and s2idle resume:
> > > >
> > > > [ 260.638214] mmc0: error -110 doing runtime resume
> > > > [ 261.054214] mmc0: card d555 removed
> > > > [ 261.054382] Aborting journal on device mmcblk0p1-8.
> > > > [ 261.054386] JBD2: I/O error when updating journal superblock for mmcblk0p1-8.
> > > > [ 261.067729] EXT4-fs (mmcblk0p1): shut down requested (2)
> > > >
> > > > Patch 1 adds a power_off callback so rtsx_pcr can notify the sdmmc driver
> > > > during suspend, allowing it to reset prev_power_state. This ensures
> > > > sd_power_on properly reinitializes the card on resume. It reduces the
> > > > failure rate of "mmc0: Card stuck being busy!" after resume from 20% down
> > > > to 4%.
> > > >
> > > > Patch 2 increases the post-power-on settling delay from 1ms to 5ms. The
> > > > shorter delay seems insufficient for reliable reinitialization after the
> > > > hardware has been powered off during suspend. Increasing this reduces the
> > > > failure rate from 4% down to 0%, tested with over 300 s2idle cycles.
> > > >
> > > > Matthew Schwartz (2):
> > > > mmc: rtsx: reset power state on suspend
> > > > mmc: rtsx_pci_sdmmc: increase power-on settling delay to 5ms
> > > >
> > > > drivers/misc/cardreader/rtsx_pcr.c | 9 +++++++++
> > > > drivers/mmc/host/rtsx_pci_sdmmc.c | 24 +++++++++++++++++++++++-
> > > > include/linux/rtsx_common.h | 1 +
> > > > 3 files changed, 33 insertions(+), 1 deletion(-)
> > > >
> > > > --
> > > > 2.52.0
> > > >
> > >
> > > Greg, looks like you have queued up these patches via your misc tree,
> > > can you please drop them? We need a different approach to the problem.
> >
> > They need to be reverted (my tree can not be rebased.) Should I do
> > that, or does someone want to send me the reverts?
>
> If you can revert them, that would be great!
>
> Then I will continue to work with Matthew to fix the problem in a more
> proper way.
All now reverted, thanks!
greg k-h