Lines Matching refs:mtd
14 #include <linux/mtd/mtd.h>
57 static int ms02nv_read(struct mtd_info *mtd, loff_t from,
60 struct ms02nv_private *mp = (struct ms02nv_private *)mtd->priv;
62 if (from + len > mtd->size)
71 static int ms02nv_write(struct mtd_info *mtd, loff_t to,
74 struct ms02nv_private *mp = (struct ms02nv_private *)mtd->priv;
76 if (to + len > mtd->size)
118 struct mtd_info *mtd;
154 mtd = kmalloc(sizeof(*mtd), GFP_KERNEL);
155 if (!mtd)
157 memset(mtd, 0, sizeof(*mtd));
163 mtd->priv = mp;
219 mtd->type = MTD_RAM;
220 mtd->flags = MTD_CAP_RAM | MTD_XIP;
221 mtd->size = fixsize;
222 mtd->name = (char *)ms02nv_name;
223 mtd->module = THIS_MODULE;
224 mtd->read = ms02nv_read;
225 mtd->write = ms02nv_write;
228 if (add_mtd_device(mtd)) {
234 printk(KERN_INFO "mtd%d: %s at 0x%08lx, size %uMB.\n",
235 mtd->index, ms02nv_name, addr, size >> 20);
238 root_ms02nv_mtd = mtd;
255 kfree(mtd);
265 struct mtd_info *mtd = root_ms02nv_mtd;
266 struct ms02nv_private *mp = (struct ms02nv_private *)mtd->priv;
270 del_mtd_device(mtd);
281 kfree(mtd);