Commit b04bafca authored by Masahiro Yamada's avatar Masahiro Yamada Committed by Boris Brezillon

mtd: nand: lpc32xx: return error code of nand_scan_ident/tail() on error

The nand_scan_ident/tail() returns an appropriate error value when
it fails.  Use it instead of the fixed error code -ENXIO.
Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
Reviewed-by: default avatarMarek Vasut <marek.vasut@gmail.com>
Acked-by: default avatarVladimir Zapolskiy <vz@mleia.com>
Signed-off-by: default avatarBoris Brezillon <boris.brezillon@free-electrons.com>
parent ad5678ec
...@@ -747,10 +747,9 @@ static int lpc32xx_nand_probe(struct platform_device *pdev) ...@@ -747,10 +747,9 @@ static int lpc32xx_nand_probe(struct platform_device *pdev)
* Scan to find existance of the device and * Scan to find existance of the device and
* Get the type of NAND device SMALL block or LARGE block * Get the type of NAND device SMALL block or LARGE block
*/ */
if (nand_scan_ident(mtd, 1, NULL)) { res = nand_scan_ident(mtd, 1, NULL);
res = -ENXIO; if (res)
goto err_exit3; goto err_exit3;
}
host->dma_buf = devm_kzalloc(&pdev->dev, mtd->writesize, GFP_KERNEL); host->dma_buf = devm_kzalloc(&pdev->dev, mtd->writesize, GFP_KERNEL);
if (!host->dma_buf) { if (!host->dma_buf) {
...@@ -793,10 +792,9 @@ static int lpc32xx_nand_probe(struct platform_device *pdev) ...@@ -793,10 +792,9 @@ static int lpc32xx_nand_probe(struct platform_device *pdev)
* Fills out all the uninitialized function pointers with the defaults * Fills out all the uninitialized function pointers with the defaults
* And scans for a bad block table if appropriate. * And scans for a bad block table if appropriate.
*/ */
if (nand_scan_tail(mtd)) { res = nand_scan_tail(mtd);
res = -ENXIO; if (res)
goto err_exit4; goto err_exit4;
}
mtd->name = DRV_NAME; mtd->name = DRV_NAME;
......
...@@ -894,10 +894,9 @@ static int lpc32xx_nand_probe(struct platform_device *pdev) ...@@ -894,10 +894,9 @@ static int lpc32xx_nand_probe(struct platform_device *pdev)
} }
/* Find NAND device */ /* Find NAND device */
if (nand_scan_ident(mtd, 1, NULL)) { res = nand_scan_ident(mtd, 1, NULL);
res = -ENXIO; if (res)
goto err_exit3; goto err_exit3;
}
/* OOB and ECC CPU and DMA work areas */ /* OOB and ECC CPU and DMA work areas */
host->ecc_buf = (uint32_t *)(host->data_buf + LPC32XX_DMA_DATA_SIZE); host->ecc_buf = (uint32_t *)(host->data_buf + LPC32XX_DMA_DATA_SIZE);
...@@ -929,10 +928,9 @@ static int lpc32xx_nand_probe(struct platform_device *pdev) ...@@ -929,10 +928,9 @@ static int lpc32xx_nand_probe(struct platform_device *pdev)
/* /*
* Fills out all the uninitialized function pointers with the defaults * Fills out all the uninitialized function pointers with the defaults
*/ */
if (nand_scan_tail(mtd)) { res = nand_scan_tail(mtd);
res = -ENXIO; if (res)
goto err_exit3; goto err_exit3;
}
mtd->name = "nxp_lpc3220_slc"; mtd->name = "nxp_lpc3220_slc";
res = mtd_device_register(mtd, host->ncfg->parts, res = mtd_device_register(mtd, host->ncfg->parts,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment