diff options
author | Sachin Kamat <sachin.kamat@linaro.org> | 2013-10-08 14:51:34 +0530 |
---|---|---|
committer | Brian Norris <computersforpeace@gmail.com> | 2013-11-06 23:32:48 -0800 |
commit | b38be288140c3d5317bf55439cd3d6fd6395a98e (patch) | |
tree | 6a469057e63610fdac70050b790054a952c88178 /drivers/mtd | |
parent | fcfd9f2dd786a79400e1e799713ff71e939b40b5 (diff) |
mtd: sst25l: Use devm_kzalloc
devm_kzalloc is device managed and makes code simpler.
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Diffstat (limited to 'drivers/mtd')
-rw-r--r-- | drivers/mtd/devices/sst25l.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/drivers/mtd/devices/sst25l.c b/drivers/mtd/devices/sst25l.c index 7cc70db97e5..687bf27ec85 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 = { |