kernel: nvmem: correctly assign fwnode to MMC block device
[openwrt/staging/jow.git] / target / linux / bcm27xx / patches-6.1 / 950-0111-MMC-added-alternative-MMC-driver.patch
index b1a5dbfe2df67330a159d0554908fa3671ee34c4..a89940dacb6f770fc5beac58928473b9f6b271c0 100644 (file)
@@ -266,7 +266,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
  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,
-@@ -2970,6 +2977,8 @@ static int mmc_blk_probe(struct mmc_card
+@@ -3050,6 +3057,8 @@ static int mmc_blk_probe(struct mmc_card
  {
        struct mmc_blk_data *md;
        int ret = 0;
@@ -275,7 +275,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
  
        /*
         * Check that the card supports the command class(es) we need.
-@@ -2977,7 +2986,16 @@ static int mmc_blk_probe(struct mmc_card
+@@ -3057,7 +3066,16 @@ static int mmc_blk_probe(struct mmc_card
        if (!(card->csd.cmdclass & CCC_BLOCK_READ))
                return -ENODEV;
  
@@ -293,7 +293,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
  
        card->complete_wq = alloc_workqueue("mmc_complete",
                                        WQ_MEM_RECLAIM | WQ_HIGHPRI, 0);
-@@ -2992,6 +3010,17 @@ static int mmc_blk_probe(struct mmc_card
+@@ -3072,6 +3090,17 @@ static int mmc_blk_probe(struct mmc_card
                goto out_free;
        }
  
@@ -313,7 +313,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
                goto out;
 --- a/drivers/mmc/core/core.c
 +++ b/drivers/mmc/core/core.c
-@@ -1814,7 +1814,8 @@ EXPORT_SYMBOL(mmc_erase);
+@@ -1819,7 +1819,8 @@ EXPORT_SYMBOL(mmc_erase);
  
  int mmc_can_erase(struct mmc_card *card)
  {
@@ -325,7 +325,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
  }
 --- a/drivers/mmc/core/quirks.h
 +++ b/drivers/mmc/core/quirks.h
-@@ -129,6 +129,14 @@ static const struct mmc_fixup __maybe_un
+@@ -130,6 +130,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),
  
@@ -2007,12 +2007,12 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
                sdhci_dumpregs(host);
 --- a/include/linux/mmc/card.h
 +++ b/include/linux/mmc/card.h
-@@ -296,6 +296,8 @@ struct mmc_card {
- #define MMC_QUIRK_BROKEN_SD_DISCARD   (1<<14) /* Disable broken SD discard support */
+@@ -297,6 +297,8 @@ struct mmc_card {
  #define MMC_QUIRK_BROKEN_SD_CACHE     (1<<15) /* Disable broken SD cache support */
+ #define MMC_QUIRK_BROKEN_CACHE_FLUSH  (1<<16) /* Don't flush cache until the write has occurred */
  
 +#define MMC_QUIRK_ERASE_BROKEN        (1<<31)         /* Skip erase */
 +
+       bool                    written_flag;   /* Indicates eMMC has been written since power on */
        bool                    reenable_cmdq;  /* Re-enable Command Queue */
  
-       unsigned int            erase_size;     /* erase size in sectors */