mtd: s3c nand: parsing command-line partitions prior to set->partitions
Conke Hu [Tue, 13 Jul 2010 04:56:30 +0000 (12:56 +0800)]
Current driver prevents command-line partitions from being parsed when built-in
partitions are defined in s3c2410_nand_set object, but it is not desirable in some
cases. This patch tries to parse commad-line partitions prior to the built-in.

Signed-off-by: Conke Hu <conke@maxwit.com>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>

drivers/mtd/nand/s3c2410.c

index 239aadf..33d832d 100644 (file)
@@ -727,15 +727,12 @@ static int s3c2410_nand_add_partition(struct s3c2410_nand_info *info,
        if (set == NULL)
                return add_mtd_device(&mtd->mtd);
 
-       if (set->nr_partitions == 0) {
-               mtd->mtd.name = set->name;
-               nr_part = parse_mtd_partitions(&mtd->mtd, part_probes,
-                                               &part_info, 0);
-       } else {
-               if (set->nr_partitions > 0 && set->partitions != NULL) {
-                       nr_part = set->nr_partitions;
-                       part_info = set->partitions;
-               }
+       mtd->mtd.name = set->name;
+       nr_part = parse_mtd_partitions(&mtd->mtd, part_probes, &part_info, 0);
+
+       if (nr_part <= 0 && set->nr_partitions > 0) {
+               nr_part = set->nr_partitions;
+               part_info = set->partitions;
        }
 
        if (nr_part > 0 && part_info)