aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.15/950-0070-MMC-added-alternative-MMC-driver.patch
diff options
context:
space:
mode:
authorJohn Audia <therealgraysky@proton.me>2022-10-29 06:34:51 -0400
committerHauke Mehrtens <hauke@hauke-m.de>2022-10-30 17:57:25 +0100
commit910bdda6afa229e35ef6e1f74795ee79aa99c2e2 (patch)
treef66d70d2f775e5929a6c930cd845fe80dc0949b4 /target/linux/bcm27xx/patches-5.15/950-0070-MMC-added-alternative-MMC-driver.patch
parentaf1e3439a8006a4878322f8129a51b23fa8be2b3 (diff)
downloadupstream-910bdda6afa229e35ef6e1f74795ee79aa99c2e2.tar.gz
upstream-910bdda6afa229e35ef6e1f74795ee79aa99c2e2.tar.bz2
upstream-910bdda6afa229e35ef6e1f74795ee79aa99c2e2.zip
kernel: bump 5.15 to 5.15.76
All patches automatically rebased. Build system: x86_64 Build-tested: bcm2711/RPi4B, mt7622/RT3200 Run-tested: bcm2711/RPi4B, mt7622/RT3200 Signed-off-by: John Audia <therealgraysky@proton.me>
Diffstat (limited to 'target/linux/bcm27xx/patches-5.15/950-0070-MMC-added-alternative-MMC-driver.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.15/950-0070-MMC-added-alternative-MMC-driver.patch16
1 files changed, 8 insertions, 8 deletions
diff --git a/target/linux/bcm27xx/patches-5.15/950-0070-MMC-added-alternative-MMC-driver.patch b/target/linux/bcm27xx/patches-5.15/950-0070-MMC-added-alternative-MMC-driver.patch
index 42c8cef645..754b633967 100644
--- a/target/linux/bcm27xx/patches-5.15/950-0070-MMC-added-alternative-MMC-driver.patch
+++ b/target/linux/bcm27xx/patches-5.15/950-0070-MMC-added-alternative-MMC-driver.patch
@@ -244,7 +244,7 @@ bcm2835-mmc: uninitialized_var is no more
static inline int mmc_blk_part_switch(struct mmc_card *card,
unsigned int part_type);
static void mmc_blk_rw_rq_prep(struct mmc_queue_req *mqrq,
-@@ -2923,6 +2930,8 @@ static int mmc_blk_probe(struct mmc_card
+@@ -2928,6 +2935,8 @@ static int mmc_blk_probe(struct mmc_card
{
struct mmc_blk_data *md;
int ret = 0;
@@ -253,7 +253,7 @@ bcm2835-mmc: uninitialized_var is no more
/*
* Check that the card supports the command class(es) we need.
-@@ -2930,7 +2939,16 @@ static int mmc_blk_probe(struct mmc_card
+@@ -2935,7 +2944,16 @@ static int mmc_blk_probe(struct mmc_card
if (!(card->csd.cmdclass & CCC_BLOCK_READ))
return -ENODEV;
@@ -271,7 +271,7 @@ bcm2835-mmc: uninitialized_var is no more
card->complete_wq = alloc_workqueue("mmc_complete",
WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
-@@ -2945,6 +2963,17 @@ static int mmc_blk_probe(struct mmc_card
+@@ -2950,6 +2968,17 @@ static int mmc_blk_probe(struct mmc_card
goto out_free;
}
@@ -303,9 +303,9 @@ bcm2835-mmc: uninitialized_var is no more
}
--- a/drivers/mmc/core/quirks.h
+++ b/drivers/mmc/core/quirks.h
-@@ -99,6 +99,14 @@ static const struct mmc_fixup __maybe_un
- MMC_FIXUP("V10016", CID_MANFID_KINGSTON, CID_OEMID_ANY, add_quirk_mmc,
- MMC_QUIRK_TRIM_BROKEN),
+@@ -105,6 +105,14 @@ static const struct mmc_fixup __maybe_un
+ MMC_FIXUP(CID_NAME_ANY, CID_MANFID_SANDISK_SD, 0x5344, add_quirk_sd,
+ MMC_QUIRK_BROKEN_SD_DISCARD),
+ /*
+ * On some Kingston SD cards, multiple erases of less than 64
@@ -2004,9 +2004,9 @@ bcm2835-mmc: uninitialized_var is no more
--- a/include/linux/mmc/card.h
+++ b/include/linux/mmc/card.h
-@@ -293,6 +293,8 @@ struct mmc_card {
- #define MMC_QUIRK_TRIM_BROKEN (1<<12) /* Skip trim */
+@@ -294,6 +294,8 @@ struct mmc_card {
#define MMC_QUIRK_BROKEN_HPI (1<<13) /* Disable broken HPI support */
+ #define MMC_QUIRK_BROKEN_SD_DISCARD (1<<14) /* Disable broken SD discard support */
+#define MMC_QUIRK_ERASE_BROKEN (1<<31) /* Skip erase */
+