0
0
mirror of https://git.openwrt.org/openwrt/openwrt.git synced 2025-10-04 04:19:39 +00:00
Files
openwrt/target/linux/bcm27xx/patches-6.12/950-0445-mmc-quirks-add-MMC_QUIRK_BROKEN_ERASE-for-Phison-Int.patch
2025-07-12 16:47:58 +02:00

34 lines
1.2 KiB
Diff

From 6c134c01a25fa8dbb871e03060059f85cdbf097a Mon Sep 17 00:00:00 2001
From: Jonathan Bell <jonathan@raspberrypi.com>
Date: Fri, 18 Oct 2024 16:01:28 +0100
Subject: [PATCH] mmc: quirks: add MMC_QUIRK_BROKEN_ERASE for Phison/Integral
cards
Recent Integral cards end up with corrupt sectors after a flash erase.
This covers sizes for the A2 range, which can't be differentiated from
the A1 range which might not have the same issue.
Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
---
drivers/mmc/core/quirks.h | 9 +++++++++
1 file changed, 9 insertions(+)
--- a/drivers/mmc/core/quirks.h
+++ b/drivers/mmc/core/quirks.h
@@ -181,6 +181,15 @@ static const struct mmc_fixup __maybe_un
MMC_FIXUP("M62704", CID_MANFID_KINGSTON, 0x0100, add_quirk_mmc,
MMC_QUIRK_TRIM_BROKEN),
+ /*
+ * Larger Integral SD cards using rebranded Phison controllers trash
+ * nearby flash blocks after erases.
+ */
+ MMC_FIXUP("SD64G", 0x27, 0x5048, add_quirk, MMC_QUIRK_ERASE_BROKEN),
+ MMC_FIXUP("SD128", 0x27, 0x5048, add_quirk, MMC_QUIRK_ERASE_BROKEN),
+ MMC_FIXUP("SD256", 0x27, 0x5048, add_quirk, MMC_QUIRK_ERASE_BROKEN),
+ MMC_FIXUP("SD512", 0x27, 0x5048, add_quirk, MMC_QUIRK_ERASE_BROKEN),
+
END_FIXUP
};