[MTD] replace MTD_RAM with MTD_GENERIC_TYPE
Joern Engel [Tue, 30 May 2006 12:25:24 +0000 (14:25 +0200)]
Ram devices get the extra capability of MTD_NO_ERASE - not requiring
an explicit erase before writing to it.  Currently only mtdblock uses
this capability.  Rest of the patch is a simple text replacement.

Signed-off-by: Joern Engel <joern@wh.fh-wedel.de>

drivers/mtd/chips/map_ram.c
drivers/mtd/devices/block2mtd.c
drivers/mtd/devices/ms02-nv.c
drivers/mtd/devices/mtdram.c
drivers/mtd/devices/phram.c
drivers/mtd/devices/pmc551.c
drivers/mtd/devices/slram.c
drivers/mtd/mtdblock.c
include/mtd/mtd-abi.h

index 7639257..9b7c499 100644 (file)
@@ -64,7 +64,7 @@ static struct mtd_info *map_ram_probe(struct map_info *map)
        map->fldrv = &mapram_chipdrv;
        mtd->priv = map;
        mtd->name = map->name;
-       mtd->type = MTD_RAM;
+       mtd->type = MTD_GENERIC_TYPE;
        mtd->size = map->size;
        mtd->erase = mapram_erase;
        mtd->read = mapram_read;
index 0d98c22..1157182 100644 (file)
@@ -324,7 +324,7 @@ static struct block2mtd_dev *add_device(char *devname, int erase_size)
 
        dev->mtd.size = dev->blkdev->bd_inode->i_size & PAGE_MASK;
        dev->mtd.erasesize = erase_size;
-       dev->mtd.type = MTD_RAM;
+       dev->mtd.type = MTD_GENERIC_TYPE;
        dev->mtd.flags = MTD_CAP_RAM;
        dev->mtd.erase = block2mtd_erase;
        dev->mtd.write = block2mtd_write;
index 4ab7670..a6466f9 100644 (file)
@@ -218,7 +218,7 @@ static int __init ms02nv_init_one(ulong addr)
        fixsize = (size - (fixaddr - addr)) & ~(PAGE_SIZE - 1);
        mp->uaddr = phys_to_virt(fixaddr);
 
-       mtd->type = MTD_RAM;
+       mtd->type = MTD_GENERIC_TYPE;
        mtd->flags = MTD_CAP_RAM;
        mtd->size = fixsize;
        mtd->name = (char *)ms02nv_name;
index 1443117..f284c96 100644 (file)
@@ -103,7 +103,7 @@ int mtdram_init_device(struct mtd_info *mtd, void *mapped_address,
 
        /* Setup the MTD structure */
        mtd->name = name;
-       mtd->type = MTD_RAM;
+       mtd->type = MTD_GENERIC_TYPE;
        mtd->flags = MTD_CAP_RAM;
        mtd->size = size;
        mtd->erasesize = MTDRAM_ERASE_SIZE;
index e09e416..e6daa74 100644 (file)
@@ -149,7 +149,7 @@ static int register_device(char *name, unsigned long start, unsigned long len)
        new->mtd.read = phram_read;
        new->mtd.write = phram_write;
        new->mtd.owner = THIS_MODULE;
-       new->mtd.type = MTD_RAM;
+       new->mtd.type = MTD_GENERIC_TYPE;
        new->mtd.erasesize = PAGE_SIZE;
 
        ret = -EAGAIN;
index 666cce1..aa9f6c9 100644 (file)
@@ -775,7 +775,7 @@ static int __init init_pmc551(void)
                 mtd->write     = pmc551_write;
                 mtd->point     = pmc551_point;
                 mtd->unpoint   = pmc551_unpoint;
-                mtd->type      = MTD_RAM;
+                mtd->type      = MTD_GENERIC_TYPE;
                 mtd->name      = "PMC551 RAM board";
                 mtd->erasesize         = 0x10000;
                mtd->owner = THIS_MODULE;
index b3f665e..fdb7a78 100644 (file)
@@ -207,7 +207,7 @@ static int register_device(char *name, unsigned long start, unsigned long length
        (*curmtd)->mtdinfo->read = slram_read;
        (*curmtd)->mtdinfo->write = slram_write;
        (*curmtd)->mtdinfo->owner = THIS_MODULE;
-       (*curmtd)->mtdinfo->type = MTD_RAM;
+       (*curmtd)->mtdinfo->type = MTD_GENERIC_TYPE;
        (*curmtd)->mtdinfo->erasesize = SLRAM_BLK_SZ;
 
        if (add_mtd_device((*curmtd)->mtdinfo)) {
index 9b0bc20..e5c7846 100644 (file)
@@ -289,7 +289,7 @@ static int mtdblock_open(struct mtd_blktrans_dev *mbd)
 
        mutex_init(&mtdblk->cache_mutex);
        mtdblk->cache_state = STATE_EMPTY;
-       if (mtdblk->mtd->type != MTD_RAM && mtdblk->mtd->erasesize) {
+       if ( !(mtdblk->mtd->flags & MTD_NO_ERASE) && mtdblk->mtd->erasesize) {
                mtdblk->cache_size = mtdblk->mtd->erasesize;
                mtdblk->cache_data = NULL;
        }
index 1ce365b..7ccadb1 100644 (file)
@@ -24,7 +24,6 @@ struct mtd_oob_buf {
 };
 
 #define MTD_ABSENT             0
-#define MTD_RAM                        1
 #define MTD_NORFLASH           3
 #define MTD_NANDFLASH          4
 #define MTD_DATAFLASH          6
@@ -32,10 +31,11 @@ struct mtd_oob_buf {
 
 #define MTD_WRITEABLE          0x400   /* Device is writeable */
 #define MTD_BIT_WRITEABLE      0x800   /* Single bits can be flipped */
+#define MTD_NO_ERASE           0x1000  /* No erase necessary */
 
 // Some common devices / combinations of capabilities
 #define MTD_CAP_ROM            0
-#define MTD_CAP_RAM            (MTD_WRITEABLE | MTD_BIT_WRITEABLE)
+#define MTD_CAP_RAM            (MTD_WRITEABLE | MTD_BIT_WRITEABLE | MTD_NO_ERASE)
 #define MTD_CAP_NORFLASH       (MTD_WRITEABLE | MTD_BIT_WRITEABLE)
 #define MTD_CAP_NANDFLASH      (MTD_WRITEABLE)