Lines Matching refs:bcmsflash
68 static struct bcmsflash_mtd bcmsflash;
219 memset(&bcmsflash, 0, sizeof(struct bcmsflash_mtd));
222 if (!(bcmsflash.sih = si_kattach(SI_OSH))) {
223 printk(KERN_ERR "bcmsflash: error attaching to backplane\n");
229 if (!(info = hndsflash_init(bcmsflash.sih))) {
230 printk(KERN_ERR "bcmsflash: found no supported devices\n");
240 bcmsflash.sfl = info;
243 bcmsflash.region.offset = 0;
244 bcmsflash.region.erasesize = info->blocksize;
245 bcmsflash.region.numblocks = info->numblocks;
246 if (bcmsflash.region.erasesize > bcmsflash.mtd.erasesize)
247 bcmsflash.mtd.erasesize = bcmsflash.region.erasesize;
248 bcmsflash.mtd.size = info->size;
249 bcmsflash.mtd.numeraseregions = 1;
252 bcmsflash.mtd.name = "bcmsflash";
253 bcmsflash.mtd.type = MTD_NORFLASH;
254 bcmsflash.mtd.flags = MTD_CAP_NORFLASH;
255 bcmsflash.mtd.eraseregions = &bcmsflash.region;
256 bcmsflash.mtd.erase = bcmsflash_mtd_erase;
257 bcmsflash.mtd.read = bcmsflash_mtd_read;
258 bcmsflash.mtd.write = bcmsflash_mtd_write;
259 bcmsflash.mtd.writesize = 1;
260 bcmsflash.mtd.priv = &bcmsflash;
261 bcmsflash.mtd.owner = THIS_MODULE;
262 bcmsflash.mtd.mlock = partitions_lock_init();
263 if (!bcmsflash.mtd.mlock)
267 parts = init_mtd_partitions(info, &bcmsflash.mtd, bcmsflash.mtd.size);
270 ret = add_mtd_partitions(&bcmsflash.mtd, parts, i);
272 printk(KERN_ERR "bcmsflash: add_mtd failed\n");
288 del_mtd_partitions(&bcmsflash.mtd);
290 del_mtd_device(&bcmsflash.mtd);