diff mbox series

mmc: core: sd: Apply BROKEN_SD_DISCARD quirk earlier

Message ID 20250521124820.554493-1-avri.altman@sandisk.com
State Superseded
Headers show
Series mmc: core: sd: Apply BROKEN_SD_DISCARD quirk earlier | expand

Commit Message

Avri Altman May 21, 2025, 12:48 p.m. UTC
Move the BROKEN_SD_DISCARD quirk for certain SanDisk SD cards from the
`mmc_blk_fixups[]` to `mmc_sd_fixups[]`. This ensures the quirk is
applied earlier in the device initialization process, aligning with the
reasoning in [1]. Applying the quirk sooner prevents the kernel from
incorrectly enabling discard support on affected cards during initial
setup.

[1] https://lore.kernel.org/all/20240820230631.GA436523@sony.com

Fixes: 07d2872bf4c8 ("mmc: core: Add SD card quirk for broken discard")
Signed-off-by: Avri Altman <avri.altman@sandisk.com>
Cc: stable@vger.kernel.org
---
 drivers/mmc/core/quirks.h | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

Comments

Avri Altman May 21, 2025, 5:20 p.m. UTC | #1
> This didn't apply to my fixes/next branch, can you please double check and send a
> new version? I didn't have the time to resolve the conflict, sorry.
Sorry about that.
Will rebase and resend.

Thanks,
Avri

> 
> Kind regards
> Uffe
> 
> > ---
> >  drivers/mmc/core/quirks.h | 12 ++++++------
> >  1 file changed, 6 insertions(+), 6 deletions(-)
> >
> > diff --git a/drivers/mmc/core/quirks.h b/drivers/mmc/core/quirks.h
> > index 7f893bafaa60..c417ed34c057 100644
> > --- a/drivers/mmc/core/quirks.h
> > +++ b/drivers/mmc/core/quirks.h
> > @@ -44,6 +44,12 @@ static const struct mmc_fixup __maybe_unused
> mmc_sd_fixups[] = {
> >                    0, -1ull, SDIO_ANY_ID, SDIO_ANY_ID, add_quirk_sd,
> >                    MMC_QUIRK_NO_UHS_DDR50_TUNING, EXT_CSD_REV_ANY),
> >
> > +       /*
> > +        * Some SD cards reports discard support while they don't
> > +        */
> > +       MMC_FIXUP(CID_NAME_ANY, CID_MANFID_SANDISK_SD, 0x5344,
> add_quirk_sd,
> > +                 MMC_QUIRK_BROKEN_SD_DISCARD),
> > +
> >         END_FIXUP
> >  };
> >
> > @@ -147,12 +153,6 @@ static const struct mmc_fixup __maybe_unused
> mmc_blk_fixups[] = {
> >         MMC_FIXUP("M62704", CID_MANFID_KINGSTON, 0x0100,
> add_quirk_mmc,
> >                   MMC_QUIRK_TRIM_BROKEN),
> >
> > -       /*
> > -        * Some SD cards reports discard support while they don't
> > -        */
> > -       MMC_FIXUP(CID_NAME_ANY, CID_MANFID_SANDISK_SD, 0x5344,
> add_quirk_sd,
> > -                 MMC_QUIRK_BROKEN_SD_DISCARD),
> > -
> >         END_FIXUP
> >  };
> >
> > --
> > 2.25.1
> >
diff mbox series

Patch

diff --git a/drivers/mmc/core/quirks.h b/drivers/mmc/core/quirks.h
index 7f893bafaa60..c417ed34c057 100644
--- a/drivers/mmc/core/quirks.h
+++ b/drivers/mmc/core/quirks.h
@@ -44,6 +44,12 @@  static const struct mmc_fixup __maybe_unused mmc_sd_fixups[] = {
 		   0, -1ull, SDIO_ANY_ID, SDIO_ANY_ID, add_quirk_sd,
 		   MMC_QUIRK_NO_UHS_DDR50_TUNING, EXT_CSD_REV_ANY),
 
+	/*
+	 * Some SD cards reports discard support while they don't
+	 */
+	MMC_FIXUP(CID_NAME_ANY, CID_MANFID_SANDISK_SD, 0x5344, add_quirk_sd,
+		  MMC_QUIRK_BROKEN_SD_DISCARD),
+
 	END_FIXUP
 };
 
@@ -147,12 +153,6 @@  static const struct mmc_fixup __maybe_unused mmc_blk_fixups[] = {
 	MMC_FIXUP("M62704", CID_MANFID_KINGSTON, 0x0100, add_quirk_mmc,
 		  MMC_QUIRK_TRIM_BROKEN),
 
-	/*
-	 * Some SD cards reports discard support while they don't
-	 */
-	MMC_FIXUP(CID_NAME_ANY, CID_MANFID_SANDISK_SD, 0x5344, add_quirk_sd,
-		  MMC_QUIRK_BROKEN_SD_DISCARD),
-
 	END_FIXUP
 };