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

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>
drivers/mtd/maps/edb7312.c

index be9e90b44587a45c7fce5be7659de52f7613dca9..fe42a212bb3ebfdc170dcdb5cee1e14f384849dd 100644 (file)
 #include <asm/io.h>
 #include <linux/mtd/mtd.h>
 #include <linux/mtd/map.h>
-
-#ifdef CONFIG_MTD_PARTITIONS
 #include <linux/mtd/partitions.h>
-#endif
 
 #define WINDOW_ADDR 0x00000000      /* physical properties of flash */
 #define WINDOW_SIZE 0x01000000
@@ -40,8 +37,6 @@ struct map_info edb7312nor_map = {
        .phys = WINDOW_ADDR,
 };
 
-#ifdef CONFIG_MTD_PARTITIONS
-
 /*
  * MTD partitioning stuff
  */
@@ -66,8 +61,6 @@ static struct mtd_partition static_partitions[3] =
 
 static const char *probes[] = { "RedBoot", "cmdlinepart", NULL };
 
-#endif
-
 static int                   mtd_parts_nb = 0;
 static struct mtd_partition *mtd_parts    = 0;
 
@@ -96,27 +89,24 @@ static int __init init_edb7312nor(void)
        if (mymtd) {
                mymtd->owner = THIS_MODULE;
 
-#ifdef CONFIG_MTD_PARTITIONS
                mtd_parts_nb = parse_mtd_partitions(mymtd, probes, &mtd_parts, MTDID);
                if (mtd_parts_nb > 0)
-                 part_type = "detected";
+                       part_type = "detected";
 
-               if (mtd_parts_nb == 0)
-               {
+               if (mtd_parts_nb == 0) {
                        mtd_parts = static_partitions;
                        mtd_parts_nb = ARRAY_SIZE(static_partitions);
                        part_type = "static";
                }
-#endif
-               add_mtd_device(mymtd);
+
                if (mtd_parts_nb == 0)
-                 printk(KERN_NOTICE MSG_PREFIX "no partition info available\n");
+                       printk(KERN_NOTICE MSG_PREFIX "no partition info available\n");
                else
-               {
                        printk(KERN_NOTICE MSG_PREFIX
                               "using %s partition definition\n", part_type);
-                       add_mtd_partitions(mymtd, mtd_parts, mtd_parts_nb);
-               }
+               /* Register the whole device first. */
+               mtd_device_register(mymtd, NULL, 0);
+               mtd_device_register(mymtd, mtd_parts, mtd_parts_nb);
                return 0;
        }
 
@@ -127,7 +117,7 @@ static int __init init_edb7312nor(void)
 static void __exit cleanup_edb7312nor(void)
 {
        if (mymtd) {
-               del_mtd_device(mymtd);
+               mtd_device_unregister(mymtd);
                map_destroy(mymtd);
        }
        if (edb7312nor_map.virt) {