Lines Matching full:flash
70 #define ONENAND_CORE(flash) (flash->data) argument
71 #define ONENAND_CORE_SPARE(flash, this, offset) \ argument
72 ((flash->data) + (this->chipsize) + (offset >> 5))
111 struct onenand_flash flash; member
264 struct onenand_flash *flash = this->priv; in onenand_data_handle() local
295 src = ONENAND_CORE(flash) + offset; in onenand_data_handle()
305 src = ONENAND_CORE_SPARE(flash, this, offset); in onenand_data_handle()
312 dest = ONENAND_CORE(flash) + offset; in onenand_data_handle()
335 dest = ONENAND_CORE_SPARE(flash, this, offset); in onenand_data_handle()
353 memset(ONENAND_CORE(flash) + offset, 0xff, erasesize); in onenand_data_handle()
354 memset(ONENAND_CORE_SPARE(flash, this, offset), 0xff, in onenand_data_handle()
443 * @flash: OneNAND simulator data strucutres
447 static int __init flash_init(struct onenand_flash *flash) in flash_init() argument
452 flash->base = kzalloc(131072, GFP_KERNEL); in flash_init()
453 if (!flash->base) { in flash_init()
462 ONENAND_CORE(flash) = vmalloc(size + (size >> 5)); in flash_init()
463 if (!ONENAND_CORE(flash)) { in flash_init()
465 kfree(flash->base); in flash_init()
469 memset(ONENAND_CORE(flash), 0xff, size + (size >> 5)); in flash_init()
472 writew(manuf_id, flash->base + ONENAND_REG_MANUFACTURER_ID); in flash_init()
473 writew(device_id, flash->base + ONENAND_REG_DEVICE_ID); in flash_init()
474 writew(version_id, flash->base + ONENAND_REG_VERSION_ID); in flash_init()
475 writew(technology_id, flash->base + ONENAND_REG_TECHNOLOGY); in flash_init()
481 writew(buffer_size, flash->base + ONENAND_REG_DATA_BUFFER_SIZE); in flash_init()
488 * @flash: OneNAND simulator data structures
492 static void flash_exit(struct onenand_flash *flash) in flash_exit() argument
494 vfree(ONENAND_CORE(flash)); in flash_exit()
495 kfree(flash->base); in flash_exit()
519 if (flash_init(&info->flash)) { in onenand_sim_init()
520 printk(KERN_ERR "Unable to allocate flash.\n"); in onenand_sim_init()
528 info->onenand.base = info->flash.base; in onenand_sim_init()
529 info->onenand.priv = &info->flash; in onenand_sim_init()
536 flash_exit(&info->flash); in onenand_sim_init()
551 struct onenand_flash *flash = this->priv; in onenand_sim_exit() local
554 flash_exit(flash); in onenand_sim_exit()
563 MODULE_DESCRIPTION("The OneNAND flash simulator");