Message ID | 20250521124820.554493-1-avri.altman@sandisk.com |
---|---|
State | Superseded |
Headers | show |
Series | mmc: core: sd: Apply BROKEN_SD_DISCARD quirk earlier | expand |
> 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 --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 };
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(-)