提交 92cbfdcc 编写于 作者: J Joern Engel

[MTD] replace MTD_RAM with MTD_GENERIC_TYPE

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: NJoern Engel <joern@wh.fh-wedel.de>
上级 e369d62e
......@@ -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;
......
......@@ -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;
......
......@@ -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;
......
......@@ -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;
......
......@@ -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;
......
......@@ -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;
......
......@@ -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)) {
......
......@@ -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;
}
......
......@@ -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)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册