diff options
author | Miquel Raynal <miquel.raynal@bootlin.com> | 2020-05-19 15:00:22 +0200 |
---|---|---|
committer | Miquel Raynal <miquel.raynal@bootlin.com> | 2020-05-31 10:53:36 +0200 |
commit | 35a37f9198e5ee594750f4331b29de34acf8c84c (patch) | |
tree | 88bca25848275fe91af27e92ca1263dd2deb94fd /drivers/mtd/nand/raw/sharpsl.c | |
parent | mtd: rawnand: sharpsl: Fix the probe error path (diff) | |
download | linux-35a37f9198e5ee594750f4331b29de34acf8c84c.tar.xz linux-35a37f9198e5ee594750f4331b29de34acf8c84c.zip |
mtd: rawnand: sharpsl: Stop using nand_release()
This helper is not very useful and very often people get confused:
they use nand_release() instead of nand_cleanup().
Let's stop using nand_release() by calling mtd_device_unregister() and
nand_cleanup() directly.
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://lore.kernel.org/linux-mtd/20200519130035.1883-50-miquel.raynal@bootlin.com
Diffstat (limited to 'drivers/mtd/nand/raw/sharpsl.c')
-rw-r--r-- | drivers/mtd/nand/raw/sharpsl.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/drivers/mtd/nand/raw/sharpsl.c b/drivers/mtd/nand/raw/sharpsl.c index d8c52a016080..51286f7acf54 100644 --- a/drivers/mtd/nand/raw/sharpsl.c +++ b/drivers/mtd/nand/raw/sharpsl.c @@ -199,13 +199,19 @@ err_get_res: static int sharpsl_nand_remove(struct platform_device *pdev) { struct sharpsl_nand *sharpsl = platform_get_drvdata(pdev); + struct nand_chip *chip = &sharpsl->chip; + int ret; - /* Release resources, unregister device */ - nand_release(&sharpsl->chip); + /* Unregister device */ + ret = mtd_device_unregister(nand_to_mtd(chip)); + WARN_ON(ret); + + /* Release resources */ + nand_cleanup(chip); iounmap(sharpsl->io); - /* Free the MTD device structure */ + /* Free the driver's structure */ kfree(sharpsl); return 0; |