summaryrefslogtreecommitdiffstats
path: root/target/linux/brcm2708/patches-4.4/0349-mmc-Add-MMC_QUIRK_ERASE_BROKEN-for-some-cards.patch
diff options
context:
space:
mode:
authorÁlvaro Fernández Rojas <noltari@gmail.com>2016-09-10 14:54:26 +0200
committerÁlvaro Fernández Rojas <noltari@gmail.com>2016-09-10 14:54:26 +0200
commit2b1c6b21b5e6c82ebb55d7fb7df90e60e88cbb14 (patch)
treeba6d48b4fec219d07110f5d55afc19bc309d2bdb /target/linux/brcm2708/patches-4.4/0349-mmc-Add-MMC_QUIRK_ERASE_BROKEN-for-some-cards.patch
parentac08cb06f6734ebf73ed855cbc836c566f80eaca (diff)
downloadmaster-31e0f0ae-2b1c6b21b5e6c82ebb55d7fb7df90e60e88cbb14.tar.gz
master-31e0f0ae-2b1c6b21b5e6c82ebb55d7fb7df90e60e88cbb14.tar.bz2
master-31e0f0ae-2b1c6b21b5e6c82ebb55d7fb7df90e60e88cbb14.zip
brcm2708: update linux 4.4 patches to latest version
As usual these patches were extracted and rebased from the raspberry pi repo: https://github.com/raspberrypi/linux/tree/rpi-4.4.y Also adds support for Raspberry Pi Compute Module 3 (untested). Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Diffstat (limited to 'target/linux/brcm2708/patches-4.4/0349-mmc-Add-MMC_QUIRK_ERASE_BROKEN-for-some-cards.patch')
-rw-r--r--target/linux/brcm2708/patches-4.4/0349-mmc-Add-MMC_QUIRK_ERASE_BROKEN-for-some-cards.patch56
1 files changed, 0 insertions, 56 deletions
diff --git a/target/linux/brcm2708/patches-4.4/0349-mmc-Add-MMC_QUIRK_ERASE_BROKEN-for-some-cards.patch b/target/linux/brcm2708/patches-4.4/0349-mmc-Add-MMC_QUIRK_ERASE_BROKEN-for-some-cards.patch
deleted file mode 100644
index 0058e8a3b5..0000000000
--- a/target/linux/brcm2708/patches-4.4/0349-mmc-Add-MMC_QUIRK_ERASE_BROKEN-for-some-cards.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From efba060602bfb54eb1106972360df001bb88ae3b Mon Sep 17 00:00:00 2001
-From: Phil Elwell <phil@raspberrypi.org>
-Date: Wed, 11 May 2016 12:50:33 +0100
-Subject: [PATCH 349/423] mmc: Add MMC_QUIRK_ERASE_BROKEN for some cards
-
-Some SD cards have been found that corrupt data when small blocks
-are erased. Add a quirk to indicate that ERASE should not be used,
-and set it for cards of that type.
-
-Signed-off-by: Phil Elwell <phil@raspberrypi.org>
----
- drivers/mmc/card/block.c | 7 +++++++
- drivers/mmc/core/core.c | 3 ++-
- include/linux/mmc/card.h | 3 +++
- 3 files changed, 12 insertions(+), 1 deletion(-)
-
---- a/drivers/mmc/card/block.c
-+++ b/drivers/mmc/card/block.c
-@@ -2552,6 +2552,13 @@ static const struct mmc_fixup blk_fixups
- MMC_FIXUP("V10016", CID_MANFID_KINGSTON, CID_OEMID_ANY, add_quirk_mmc,
- MMC_QUIRK_TRIM_BROKEN),
-
-+ /*
-+ * On some Kingston SD cards, multiple erases of less than 64
-+ * sectors can cause corruption.
-+ */
-+ MMC_FIXUP("SD16G", 0x41, 0x3432, add_quirk_mmc,
-+ MMC_QUIRK_ERASE_BROKEN),
-+
- END_FIXUP
- };
-
---- a/drivers/mmc/core/core.c
-+++ b/drivers/mmc/core/core.c
-@@ -2253,7 +2253,8 @@ EXPORT_SYMBOL(mmc_erase);
- int mmc_can_erase(struct mmc_card *card)
- {
- if ((card->host->caps & MMC_CAP_ERASE) &&
-- (card->csd.cmdclass & CCC_ERASE) && card->erase_size)
-+ (card->csd.cmdclass & CCC_ERASE) && card->erase_size &&
-+ !(card->quirks & MMC_QUIRK_ERASE_BROKEN))
- return 1;
- return 0;
- }
---- a/include/linux/mmc/card.h
-+++ b/include/linux/mmc/card.h
-@@ -281,6 +281,9 @@ struct mmc_card {
- #define MMC_QUIRK_TRIM_BROKEN (1<<12) /* Skip trim */
-
-
-+#define MMC_QUIRK_ERASE_BROKEN (1<<31) /* Skip erase */
-+
-+
- unsigned int erase_size; /* erase size in sectors */
- unsigned int erase_shift; /* if erase unit is power 2 */
- unsigned int pref_erase; /* in sectors */