mtd: atmel_nand.c: use mtd_device_parse_register
authorDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Thu, 2 Jun 2011 14:00:23 +0000 (18:00 +0400)
committerArtem Bityutskiy <artem.bityutskiy@intel.com>
Sun, 11 Sep 2011 12:02:08 +0000 (15:02 +0300)
Replace custom invocations of parse_mtd_partitions and mtd_device_register
with common mtd_device_parse_register call. This would bring: standard
handling of all errors, fallback to default partitions, etc.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
drivers/mtd/nand/atmel_nand.c

index 47ece8e..b138143 100644 (file)
@@ -492,8 +492,6 @@ static int __init atmel_nand_probe(struct platform_device *pdev)
        struct resource *regs;
        struct resource *mem;
        int res;
-       struct mtd_partition *partitions = NULL;
-       int num_partitions = 0;
 
        mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
        if (!mem) {
@@ -652,24 +650,11 @@ static int __init atmel_nand_probe(struct platform_device *pdev)
        }
 
        mtd->name = "atmel_nand";
-       num_partitions = parse_mtd_partitions(mtd, NULL, &partitions, 0);
-       if (num_partitions <= 0 && host->board->parts) {
-               partitions = host->board->parts;
-               num_partitions = host->board->num_parts;
-       }
-
-       if ((!partitions) || (num_partitions == 0)) {
-               printk(KERN_ERR "atmel_nand: No partitions defined, or unsupported device.\n");
-               res = -ENXIO;
-               goto err_no_partitions;
-       }
-
-       res = mtd_device_register(mtd, partitions, num_partitions);
+       res = mtd_device_parse_register(mtd, NULL, 0,
+                       host->board->parts, host->board->num_parts);
        if (!res)
                return res;
 
-err_no_partitions:
-       nand_release(mtd);
 err_scan_tail:
 err_scan_ident:
 err_no_card: