[MTD] [NAND] at91_nand: Make mtdparts option can override board info
authorAtsushi Nemoto <anemo@mba.ocn.ne.jp>
Tue, 29 Jan 2008 13:28:22 +0000 (22:28 +0900)
committerDavid Woodhouse <dwmw2@infradead.org>
Sun, 3 Feb 2008 07:21:01 +0000 (18:21 +1100)
Call parse_mtd_partitions before checking board's partition_info, so
that "mtdparts=" option can override board's default setting.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
drivers/mtd/nand/at91_nand.c

index b2a5672df6e0a15a2c1b2f2183087883c1a9f35e..c9fb2acf4056b3baab4ccb1ab1e980b2af08d026 100644 (file)
@@ -156,14 +156,14 @@ static int __init at91_nand_probe(struct platform_device *pdev)
        }
 
 #ifdef CONFIG_MTD_PARTITIONS
-       if (host->board->partition_info)
-               partitions = host->board->partition_info(mtd->size, &num_partitions);
 #ifdef CONFIG_MTD_CMDLINE_PARTS
-       else {
-               mtd->name = "at91_nand";
-               num_partitions = parse_mtd_partitions(mtd, part_probes, &partitions, 0);
-       }
+       mtd->name = "at91_nand";
+       num_partitions = parse_mtd_partitions(mtd, part_probes,
+                                             &partitions, 0);
 #endif
+       if (num_partitions <= 0 && host->board->partition_info)
+               partitions = host->board->partition_info(mtd->size,
+                                                        &num_partitions);
 
        if ((!partitions) || (num_partitions == 0)) {
                printk(KERN_ERR "at91_nand: No parititions defined, or unsupported device.\n");