mtd: pxa: convert to mtd_device_register()
authorJamie Iles <jamie@jamieiles.com>
Mon, 23 May 2011 09:22:50 +0000 (10:22 +0100)
committerDavid Woodhouse <David.Woodhouse@intel.com>
Wed, 25 May 2011 01:20:48 +0000 (02:20 +0100)
Convert to mtd_device_register() and remove the CONFIG_MTD_PARTITIONS
preprocessor conditionals as partitioning is always available.

Cc: Cc: David Woodhouse <dwmw2@infradead.org>
Cc: Artem Bityutskiy <dedekind1@gmail.com>
Signed-off-by: Jamie Iles <jamie@jamieiles.com>
Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
arch/arm/mach-pxa/Kconfig
drivers/mtd/maps/Kconfig
drivers/mtd/maps/pxa2xx-flash.c
drivers/mtd/nand/pxa3xx_nand.c

index 2fc9f94..cd19309 100644 (file)
@@ -153,7 +153,6 @@ config MACH_XCEP
        bool "Iskratel Electronics XCEP"
        select PXA25x
        select MTD
-       select MTD_PARTITIONS
        select MTD_PHYSMAP
        select MTD_CFI_INTELEXT
        select MTD_CFI
index 44b1f46..34e72df 100644 (file)
@@ -161,7 +161,6 @@ config MTD_SBC_GXX
 config MTD_PXA2XX
        tristate "CFI Flash device mapped on Intel XScale PXA2xx based boards"
        depends on (PXA25x || PXA27x) && MTD_CFI_INTELEXT
-       select MTD_PARTITIONS
        help
          This provides a driver for the NOR flash attached to a PXA2xx chip.
 
index d8ae634..f59d62f 100644 (file)
@@ -104,23 +104,18 @@ static int __devinit pxa2xx_flash_probe(struct platform_device *pdev)
        }
        info->mtd->owner = THIS_MODULE;
 
-#ifdef CONFIG_MTD_PARTITIONS
        ret = parse_mtd_partitions(info->mtd, probes, &parts, 0);
 
        if (ret > 0) {
                info->nr_parts = ret;
                info->parts = parts;
        }
-#endif
 
-       if (info->nr_parts) {
-               add_mtd_partitions(info->mtd, info->parts,
-                                  info->nr_parts);
-       } else {
+       if (!info->nr_parts)
                printk("Registering %s as whole device\n",
                       info->map.name);
-               add_mtd_device(info->mtd);
-       }
+
+       mtd_device_register(info->mtd, info->parts, info->nr_parts);
 
        platform_set_drvdata(pdev, info);
        return 0;
@@ -132,12 +127,7 @@ static int __devexit pxa2xx_flash_remove(struct platform_device *dev)
 
        platform_set_drvdata(dev, NULL);
 
-#ifdef CONFIG_MTD_PARTITIONS
-       if (info->nr_parts)
-               del_mtd_partitions(info->mtd);
-       else
-#endif
-               del_mtd_device(info->mtd);
+       mtd_device_unregister(info->mtd);
 
        map_destroy(info->mtd);
        iounmap(info->map.virt);
index ff07012..1fb3b3a 100644 (file)
@@ -1119,10 +1119,7 @@ static int pxa3xx_nand_remove(struct platform_device *pdev)
        clk_put(info->clk);
 
        if (mtd) {
-               del_mtd_device(mtd);
-#ifdef CONFIG_MTD_PARTITIONS
-               del_mtd_partitions(mtd);
-#endif
+               mtd_device_unregister(mtd);
                kfree(mtd);
        }
        return 0;
@@ -1149,7 +1146,6 @@ static int pxa3xx_nand_probe(struct platform_device *pdev)
                return -ENODEV;
        }
 
-#ifdef CONFIG_MTD_PARTITIONS
        if (mtd_has_cmdlinepart()) {
                const char *probes[] = { "cmdlinepart", NULL };
                struct mtd_partition *parts;
@@ -1158,13 +1154,10 @@ static int pxa3xx_nand_probe(struct platform_device *pdev)
                nr_parts = parse_mtd_partitions(info->mtd, probes, &parts, 0);
 
                if (nr_parts)
-                       return add_mtd_partitions(info->mtd, parts, nr_parts);
+                       return mtd_device_register(info->mtd, parts, nr_parts);
        }
 
-       return add_mtd_partitions(info->mtd, pdata->parts, pdata->nr_parts);
-#else
-       return 0;
-#endif
+       return mtd_device_register(info->mtd, pdata->parts, pdata->nr_parts);
 }
 
 #ifdef CONFIG_PM