kernel: fix nand_release() usage.

nand_release() takes nand_chip since commit 5bcfcbfc4019 ("mtd: rawnand:
Pass a nand_chip object to nand_release()")

Fixes: f4985a22ca ("kernel: Update kernel 4.14 to version 4.14.187")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
master
Hauke Mehrtens 5 years ago
parent 820f4654c6
commit 9cad70044f
  1. 2
      target/linux/ar71xx/files/drivers/mtd/nand/ar934x_nfc.c
  2. 4
      target/linux/ar71xx/files/drivers/mtd/nand/rb4xx_nand.c
  3. 4
      target/linux/ar71xx/files/drivers/mtd/nand/rb750_nand.c
  4. 4
      target/linux/ar71xx/files/drivers/mtd/nand/rb91x_nand.c
  5. 4
      target/linux/brcm2708/patches-4.14/950-0047-Add-SMI-NAND-driver.patch
  6. 4
      target/linux/ramips/patches-4.14/0039-mtd-add-mt7621-nand-support.patch
  7. 3
      target/linux/samsung/files-4.14/drivers/mtd/nand/s5pxx_nand.c

@ -1566,7 +1566,7 @@ ar934x_nfc_remove(struct platform_device *pdev)
nfc = platform_get_drvdata(pdev);
if (nfc) {
mtd = ar934x_nfc_to_mtd(nfc);
nand_release(mtd);
nand_release(&nfc->nand_chip);
ar934x_nfc_free_buf(nfc);
free_irq(nfc->irq, nfc);
}

@ -335,7 +335,7 @@ static int rb4xx_nand_probe(struct platform_device *pdev)
return 0;
err_release_nand:
nand_release(mtd);
nand_release(&info->chip);
err_set_drvdata:
platform_set_drvdata(pdev, NULL);
err_free_info:
@ -356,7 +356,7 @@ static int rb4xx_nand_remove(struct platform_device *pdev)
{
struct rb4xx_nand_info *info = platform_get_drvdata(pdev);
nand_release(rbinfo_to_mtd(info));
nand_release(&info->chip));
platform_set_drvdata(pdev, NULL);
kfree(info);
gpio_free(RB4XX_NAND_GPIO_NCE);

@ -393,7 +393,7 @@ static int rb750_nand_probe(struct platform_device *pdev)
return 0;
err_release_nand:
nand_release(mtd);
nand_release(&info->chip);
err_set_drvdata:
platform_set_drvdata(pdev, NULL);
err_free_info:
@ -405,7 +405,7 @@ static int rb750_nand_remove(struct platform_device *pdev)
{
struct rb750_nand_info *info = platform_get_drvdata(pdev);
nand_release(rbinfo_to_mtd(info));
nand_release(&info->chip);
platform_set_drvdata(pdev, NULL);
kfree(info);

@ -434,7 +434,7 @@ static int rb91x_nand_probe(struct platform_device *pdev)
return 0;
err_release_nand:
nand_release(mtd);
nand_release(&rbni->chip);
return ret;
}
@ -442,7 +442,7 @@ static int rb91x_nand_remove(struct platform_device *pdev)
{
struct rb91x_nand_info *info = platform_get_drvdata(pdev);
nand_release(rbinfo_to_mtd(info));
nand_release(&rbni->chip);
return 0;
}

@ -312,7 +312,7 @@ Signed-off-by: Luke Wren <wren6991@gmail.com>
+ if (!ret)
+ return 0;
+
+ nand_release(mtd);
+ nand_release(this);
+ return -EINVAL;
+}
+
@ -320,7 +320,7 @@ Signed-off-by: Luke Wren <wren6991@gmail.com>
+{
+ struct bcm2835_smi_nand_host *host = platform_get_drvdata(pdev);
+
+ nand_release(&host->mtd);
+ nand_release(&host->nand_chip);
+
+ return 0;
+}

@ -3590,7 +3590,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
+
+out:
+ MSG(INIT, "[NFI] mtk_nand_probe fail, err = %d!\n", err);
+ nand_release(mtd);
+ nand_release(nand_chip);
+ platform_set_drvdata(pdev, NULL);
+ kfree(host);
+ nand_disable_clock();
@ -3604,7 +3604,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
+ struct mtd_info *mtd = host->mtd;
+ struct nand_chip *nand_chip = &host->nand_chip;
+
+ nand_release(mtd);
+ nand_release(nand_chip);
+ kfree(host);
+ nand_disable_clock();
+

@ -468,9 +468,8 @@ static int s5p_nand_probe(struct platform_device *pdev)
static int s5p_nand_remove(struct platform_device *pdev)
{
struct s5p_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);
clk_disable_unprepare(host->clk[0]); /* nandxl */
clk_disable_unprepare(host->clk[1]); /* nand */

Loading…
Cancel
Save