From: Sachin Kamat Date: Tue, 8 Oct 2013 09:21:34 +0000 (+0530) Subject: mtd: sst25l: Use devm_kzalloc X-Git-Tag: v3.13-rc1~98^2~54 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=b38be288140c3d5317bf55439cd3d6fd6395a98e;p=karo-tx-linux.git mtd: sst25l: Use devm_kzalloc devm_kzalloc is device managed and makes code simpler. Signed-off-by: Sachin Kamat Signed-off-by: Brian Norris --- diff --git a/drivers/mtd/devices/sst25l.c b/drivers/mtd/devices/sst25l.c index 7cc70db97e59..687bf27ec850 100644 --- a/drivers/mtd/devices/sst25l.c +++ b/drivers/mtd/devices/sst25l.c @@ -364,7 +364,7 @@ static int sst25l_probe(struct spi_device *spi) if (!flash_info) return -ENODEV; - flash = kzalloc(sizeof(struct sst25l_flash), GFP_KERNEL); + flash = devm_kzalloc(&spi->dev, sizeof(*flash), GFP_KERNEL); if (!flash) return -ENOMEM; @@ -402,10 +402,8 @@ static int sst25l_probe(struct spi_device *spi) ret = mtd_device_parse_register(&flash->mtd, NULL, NULL, data ? data->parts : NULL, data ? data->nr_parts : 0); - if (ret) { - kfree(flash); + if (ret) return -ENODEV; - } return 0; } @@ -413,12 +411,8 @@ static int sst25l_probe(struct spi_device *spi) static int sst25l_remove(struct spi_device *spi) { struct sst25l_flash *flash = spi_get_drvdata(spi); - int ret; - ret = mtd_device_unregister(&flash->mtd); - if (ret == 0) - kfree(flash); - return ret; + return mtd_device_unregister(&flash->mtd); } static struct spi_driver sst25l_driver = {