Skip to content

Commit

Permalink
mtd: atmel_nand.c: use mtd_device_parse_register
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Dmitry Eremin-Solenikov authored and Artem Bityutskiy committed Sep 11, 2011
1 parent e062e2f commit ef5d79f
Showing 1 changed file with 2 additions and 17 deletions.
19 changes: 2 additions & 17 deletions drivers/mtd/nand/atmel_nand.c
Original file line number Diff line number Diff line change
Expand Up @@ -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) {
Expand Down Expand Up @@ -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:
Expand Down

0 comments on commit ef5d79f

Please sign in to comment.