提交 f5a666bd 编写于 作者: A Alexey Khoroshilov 提交者: Boris Brezillon

mtd: nand: vf610: remove the unnecessary of_node_put()

Calling of_node_put() in vf610_nfc_probe() is wrong because nothing in
this code retains a reference to the DT node.
Signed-off-by: NAlexey Khoroshilov <khoroshilov@ispras.ru>
Reviewed-by: NStefan Agner <stefan@agner.ch>
Signed-off-by: NBoris Brezillon <boris.brezillon@bootlin.com>
上级 532a1cf9
...@@ -667,7 +667,7 @@ static int vf610_nfc_probe(struct platform_device *pdev) ...@@ -667,7 +667,7 @@ static int vf610_nfc_probe(struct platform_device *pdev)
dev_err(nfc->dev, dev_err(nfc->dev,
"Only one NAND chip supported!\n"); "Only one NAND chip supported!\n");
err = -EINVAL; err = -EINVAL;
goto error; goto err_clk;
} }
nand_set_flash_node(chip, child); nand_set_flash_node(chip, child);
...@@ -697,7 +697,7 @@ static int vf610_nfc_probe(struct platform_device *pdev) ...@@ -697,7 +697,7 @@ static int vf610_nfc_probe(struct platform_device *pdev)
err = devm_request_irq(nfc->dev, irq, vf610_nfc_irq, 0, DRV_NAME, mtd); err = devm_request_irq(nfc->dev, irq, vf610_nfc_irq, 0, DRV_NAME, mtd);
if (err) { if (err) {
dev_err(nfc->dev, "Error requesting IRQ!\n"); dev_err(nfc->dev, "Error requesting IRQ!\n");
goto error; goto err_clk;
} }
vf610_nfc_preinit_controller(nfc); vf610_nfc_preinit_controller(nfc);
...@@ -705,7 +705,7 @@ static int vf610_nfc_probe(struct platform_device *pdev) ...@@ -705,7 +705,7 @@ static int vf610_nfc_probe(struct platform_device *pdev)
/* first scan to find the device and get the page size */ /* first scan to find the device and get the page size */
err = nand_scan_ident(mtd, 1, NULL); err = nand_scan_ident(mtd, 1, NULL);
if (err) if (err)
goto error; goto err_clk;
vf610_nfc_init_controller(nfc); vf610_nfc_init_controller(nfc);
...@@ -717,20 +717,20 @@ static int vf610_nfc_probe(struct platform_device *pdev) ...@@ -717,20 +717,20 @@ static int vf610_nfc_probe(struct platform_device *pdev)
if (mtd->writesize + mtd->oobsize > PAGE_2K + OOB_MAX - 8) { if (mtd->writesize + mtd->oobsize > PAGE_2K + OOB_MAX - 8) {
dev_err(nfc->dev, "Unsupported flash page size\n"); dev_err(nfc->dev, "Unsupported flash page size\n");
err = -ENXIO; err = -ENXIO;
goto error; goto err_clk;
} }
if (chip->ecc.mode == NAND_ECC_HW) { if (chip->ecc.mode == NAND_ECC_HW) {
if (mtd->writesize != PAGE_2K && mtd->oobsize < 64) { if (mtd->writesize != PAGE_2K && mtd->oobsize < 64) {
dev_err(nfc->dev, "Unsupported flash with hwecc\n"); dev_err(nfc->dev, "Unsupported flash with hwecc\n");
err = -ENXIO; err = -ENXIO;
goto error; goto err_clk;
} }
if (chip->ecc.size != mtd->writesize) { if (chip->ecc.size != mtd->writesize) {
dev_err(nfc->dev, "Step size needs to be page size\n"); dev_err(nfc->dev, "Step size needs to be page size\n");
err = -ENXIO; err = -ENXIO;
goto error; goto err_clk;
} }
/* Only 64 byte ECC layouts known */ /* Only 64 byte ECC layouts known */
...@@ -750,7 +750,7 @@ static int vf610_nfc_probe(struct platform_device *pdev) ...@@ -750,7 +750,7 @@ static int vf610_nfc_probe(struct platform_device *pdev)
} else { } else {
dev_err(nfc->dev, "Unsupported ECC strength\n"); dev_err(nfc->dev, "Unsupported ECC strength\n");
err = -ENXIO; err = -ENXIO;
goto error; goto err_clk;
} }
chip->ecc.read_page = vf610_nfc_read_page; chip->ecc.read_page = vf610_nfc_read_page;
...@@ -762,15 +762,13 @@ static int vf610_nfc_probe(struct platform_device *pdev) ...@@ -762,15 +762,13 @@ static int vf610_nfc_probe(struct platform_device *pdev)
/* second phase scan */ /* second phase scan */
err = nand_scan_tail(mtd); err = nand_scan_tail(mtd);
if (err) if (err)
goto error; goto err_clk;
platform_set_drvdata(pdev, mtd); platform_set_drvdata(pdev, mtd);
/* Register device in MTD */ /* Register device in MTD */
return mtd_device_register(mtd, NULL, 0); return mtd_device_register(mtd, NULL, 0);
error:
of_node_put(nand_get_flash_node(chip));
err_clk: err_clk:
clk_disable_unprepare(nfc->clk); clk_disable_unprepare(nfc->clk);
return err; return err;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册