From: Sachin Kamat Date: Tue, 8 Oct 2013 10:01:46 +0000 (+0530) Subject: mtd: socrates_nand: Use devm_kzalloc X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=cf3a9b56a128ec8a1631c29aacb8cf19b55ea73d;p=linux-beck.git mtd: socrates_nand: 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/nand/socrates_nand.c b/drivers/mtd/nand/socrates_nand.c index f44c7c884a20..e77da7efa200 100644 --- a/drivers/mtd/nand/socrates_nand.c +++ b/drivers/mtd/nand/socrates_nand.c @@ -149,17 +149,13 @@ static int socrates_nand_probe(struct platform_device *ofdev) struct mtd_part_parser_data ppdata; /* Allocate memory for the device structure (and zero it) */ - host = kzalloc(sizeof(struct socrates_nand_host), GFP_KERNEL); - if (!host) { - printk(KERN_ERR - "socrates_nand: failed to allocate device structure.\n"); + host = devm_kzalloc(&ofdev->dev, sizeof(*host), GFP_KERNEL); + if (!host) return -ENOMEM; - } host->io_base = of_iomap(ofdev->dev.of_node, 0); if (host->io_base == NULL) { printk(KERN_ERR "socrates_nand: ioremap failed\n"); - kfree(host); return -EIO; } @@ -212,7 +208,6 @@ static int socrates_nand_probe(struct platform_device *ofdev) out: iounmap(host->io_base); - kfree(host); return res; } @@ -227,7 +222,6 @@ static int socrates_nand_remove(struct platform_device *ofdev) nand_release(mtd); iounmap(host->io_base); - kfree(host); return 0; }