]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
Fix breakage due to nand_release changes on 4.9
authorSasha Levin <sashal@kernel.org>
Thu, 25 Jun 2020 02:08:55 +0000 (22:08 -0400)
committerSasha Levin <sashal@kernel.org>
Thu, 25 Jun 2020 02:08:55 +0000 (22:08 -0400)
Signed-off-by: Sasha Levin <sashal@kernel.org>
queue-4.9/mtd-rawnand-pass-a-nand_chip-object-to-nand_release.patch

index 597e22f7008dcf507405a8e16bc247bea42158f3..54430bd0381b80d7e653eb20f56de511efc41876 100644 (file)
@@ -1,4 +1,4 @@
-From 77a2a2c7f2371b690dffe12056c947a0270279ce Mon Sep 17 00:00:00 2001
+From c21bbd7a665f240da0ed7708f94846302b649956 Mon Sep 17 00:00:00 2001
 From: Sasha Levin <sashal@kernel.org>
 Date: Thu, 6 Sep 2018 14:05:15 +0200
 Subject: mtd: rawnand: Pass a nand_chip object to nand_release()
@@ -17,8 +17,10 @@ Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
 Signed-off-by: Sasha Levin <sashal@kernel.org>
 ---
  drivers/mtd/nand/ams-delta.c           | 2 +-
+ drivers/mtd/nand/atmel_nand.c          | 2 +-
  drivers/mtd/nand/au1550nd.c            | 2 +-
  drivers/mtd/nand/bcm47xxnflash/main.c  | 2 +-
+ drivers/mtd/nand/bf5xx_nand.c          | 2 +-
  drivers/mtd/nand/brcmnand/brcmnand.c   | 2 +-
  drivers/mtd/nand/cafe_nand.c           | 2 +-
  drivers/mtd/nand/cmx270_nand.c         | 2 +-
@@ -34,10 +36,10 @@ Signed-off-by: Sasha Levin <sashal@kernel.org>
  drivers/mtd/nand/gpio.c                | 2 +-
  drivers/mtd/nand/gpmi-nand/gpmi-nand.c | 2 +-
  drivers/mtd/nand/hisi504_nand.c        | 5 ++---
- drivers/mtd/nand/jz4740_nand.c         | 2 +-
+ drivers/mtd/nand/jz4740_nand.c         | 4 ++--
  drivers/mtd/nand/jz4780_nand.c         | 4 ++--
- drivers/mtd/nand/lpc32xx_mlc.c         | 3 +--
- drivers/mtd/nand/lpc32xx_slc.c         | 3 +--
+ drivers/mtd/nand/lpc32xx_mlc.c         | 5 ++---
+ drivers/mtd/nand/lpc32xx_slc.c         | 5 ++---
  drivers/mtd/nand/mpc5121_nfc.c         | 2 +-
  drivers/mtd/nand/mtk_nand.c            | 4 ++--
  drivers/mtd/nand/mxc_nand.c            | 2 +-
@@ -49,7 +51,8 @@ Signed-off-by: Sasha Levin <sashal@kernel.org>
  drivers/mtd/nand/orion_nand.c          | 5 ++---
  drivers/mtd/nand/pasemi_nand.c         | 2 +-
  drivers/mtd/nand/plat_nand.c           | 4 ++--
- drivers/mtd/nand/qcom_nandc.c          | 2 +-
+ drivers/mtd/nand/pxa3xx_nand.c         | 2 +-
+ drivers/mtd/nand/qcom_nandc.c          | 4 ++--
  drivers/mtd/nand/r852.c                | 4 ++--
  drivers/mtd/nand/s3c2410.c             | 2 +-
  drivers/mtd/nand/sh_flctl.c            | 2 +-
@@ -61,7 +64,7 @@ Signed-off-by: Sasha Levin <sashal@kernel.org>
  drivers/mtd/nand/vf610_nfc.c           | 2 +-
  drivers/mtd/nand/xway_nand.c           | 4 ++--
  include/linux/mtd/nand.h               | 6 ++----
- 45 files changed, 63 insertions(+), 70 deletions(-)
+ 48 files changed, 70 insertions(+), 77 deletions(-)
 
 diff --git a/drivers/mtd/nand/ams-delta.c b/drivers/mtd/nand/ams-delta.c
 index 78e12cc8bac2f..02ec2d183607f 100644
@@ -76,6 +79,19 @@ index 78e12cc8bac2f..02ec2d183607f 100644
  
        gpio_free_array(_mandatory_gpio, ARRAY_SIZE(_mandatory_gpio));
        gpio_free(AMS_DELTA_GPIO_PIN_NAND_RB);
+diff --git a/drivers/mtd/nand/atmel_nand.c b/drivers/mtd/nand/atmel_nand.c
+index 68b9160108c9f..45495bc1a70e2 100644
+--- a/drivers/mtd/nand/atmel_nand.c
++++ b/drivers/mtd/nand/atmel_nand.c
+@@ -2336,7 +2336,7 @@ static int atmel_nand_remove(struct platform_device *pdev)
+       struct atmel_nand_host *host = platform_get_drvdata(pdev);
+       struct mtd_info *mtd = nand_to_mtd(&host->nand_chip);
+-      nand_release(mtd);
++      nand_release(&host->nand_chip);
+       atmel_nand_disable(host);
 diff --git a/drivers/mtd/nand/au1550nd.c b/drivers/mtd/nand/au1550nd.c
 index 9bf6d9915694e..a0e7789131dfc 100644
 --- a/drivers/mtd/nand/au1550nd.c
@@ -102,6 +118,19 @@ index fb31429b70a9a..d796941608457 100644
  
        return 0;
  }
+diff --git a/drivers/mtd/nand/bf5xx_nand.c b/drivers/mtd/nand/bf5xx_nand.c
+index 3962f55bd0349..020bb350a2db2 100644
+--- a/drivers/mtd/nand/bf5xx_nand.c
++++ b/drivers/mtd/nand/bf5xx_nand.c
+@@ -688,7 +688,7 @@ static int bf5xx_nand_remove(struct platform_device *pdev)
+        * and their partitions, then go through freeing the
+        * resources used
+        */
+-      nand_release(nand_to_mtd(&info->chip));
++      nand_release(&info->chip);
+       peripheral_free_list(bfin_nfc_pin_req);
+       bf5xx_nand_dma_remove(info);
 diff --git a/drivers/mtd/nand/brcmnand/brcmnand.c b/drivers/mtd/nand/brcmnand/brcmnand.c
 index 1291492a1cef1..fbee81909d38a 100644
 --- a/drivers/mtd/nand/brcmnand/brcmnand.c
@@ -327,9 +356,18 @@ index 9432546f4cd47..6c96d9d29a310 100644
        return 0;
  }
 diff --git a/drivers/mtd/nand/jz4740_nand.c b/drivers/mtd/nand/jz4740_nand.c
-index 5551c36adbdf1..e664b2a0eeae0 100644
+index 5551c36adbdf1..6f323858d51a1 100644
 --- a/drivers/mtd/nand/jz4740_nand.c
 +++ b/drivers/mtd/nand/jz4740_nand.c
+@@ -499,7 +499,7 @@ static int jz_nand_probe(struct platform_device *pdev)
+       return 0;
+ err_nand_release:
+-      nand_release(mtd);
++      nand_release(chip);
+ err_unclaim_banks:
+       while (chipnr--) {
+               unsigned char bank = nand->banks[chipnr];
 @@ -520,7 +520,7 @@ static int jz_nand_remove(struct platform_device *pdev)
        struct jz_nand *nand = platform_get_drvdata(pdev);
        size_t i;
@@ -362,9 +400,18 @@ index a39bb70175eea..e8aaf2543946c 100644
        }
  }
 diff --git a/drivers/mtd/nand/lpc32xx_mlc.c b/drivers/mtd/nand/lpc32xx_mlc.c
-index bc6e49af063a2..90e7742992404 100644
+index bc6e49af063a2..839f8f4ace9e6 100644
 --- a/drivers/mtd/nand/lpc32xx_mlc.c
 +++ b/drivers/mtd/nand/lpc32xx_mlc.c
+@@ -805,7 +805,7 @@ static int lpc32xx_nand_probe(struct platform_device *pdev)
+       if (!res)
+               return res;
+-      nand_release(mtd);
++      nand_release(nand_chip);
+ err_exit4:
+       free_irq(host->irq, host);
 @@ -828,9 +828,8 @@ static int lpc32xx_nand_probe(struct platform_device *pdev)
  static int lpc32xx_nand_remove(struct platform_device *pdev)
  {
@@ -377,9 +424,18 @@ index bc6e49af063a2..90e7742992404 100644
        if (use_dma)
                dma_release_channel(host->dma_chan);
 diff --git a/drivers/mtd/nand/lpc32xx_slc.c b/drivers/mtd/nand/lpc32xx_slc.c
-index 8d3edc34958e7..05cbef16d6b50 100644
+index 8d3edc34958e7..0b5fa254ea60a 100644
 --- a/drivers/mtd/nand/lpc32xx_slc.c
 +++ b/drivers/mtd/nand/lpc32xx_slc.c
+@@ -940,7 +940,7 @@ static int lpc32xx_nand_probe(struct platform_device *pdev)
+       if (!res)
+               return res;
+-      nand_release(mtd);
++      nand_release(chip);
+ err_exit3:
+       dma_release_channel(host->dma_chan);
 @@ -959,9 +959,8 @@ static int lpc32xx_nand_remove(struct platform_device *pdev)
  {
        uint32_t tmp;
@@ -580,10 +636,32 @@ index 415a53a0deeb3..245efb0f83e26 100644
        if (pdata->ctrl.remove)
                pdata->ctrl.remove(pdev);
  
+diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c
+index 3b8911cd3a199..46f13f7e54da0 100644
+--- a/drivers/mtd/nand/pxa3xx_nand.c
++++ b/drivers/mtd/nand/pxa3xx_nand.c
+@@ -1907,7 +1907,7 @@ static int pxa3xx_nand_remove(struct platform_device *pdev)
+       clk_disable_unprepare(info->clk);
+       for (cs = 0; cs < pdata->num_cs; cs++)
+-              nand_release(nand_to_mtd(&info->host[cs]->chip));
++              nand_release(&info->host[cs]->chip);
+       return 0;
+ }
 diff --git a/drivers/mtd/nand/qcom_nandc.c b/drivers/mtd/nand/qcom_nandc.c
-index 9f6c9a34b9eb6..4d9a3c90ab13b 100644
+index 9f6c9a34b9eb6..1594770987fdb 100644
 --- a/drivers/mtd/nand/qcom_nandc.c
 +++ b/drivers/mtd/nand/qcom_nandc.c
+@@ -2163,7 +2163,7 @@ static int qcom_nandc_probe(struct platform_device *pdev)
+ err_cs_init:
+       list_for_each_entry(host, &nandc->host_list, node)
+-              nand_release(nand_to_mtd(&host->chip));
++              nand_release(&host->chip);
+ err_setup:
+       clk_disable_unprepare(nandc->aon_clk);
+ err_aon_clk:
 @@ -2180,7 +2180,7 @@ static int qcom_nandc_remove(struct platform_device *pdev)
        struct qcom_nand_host *host;