Lines Matching refs:erase
725 struct erase_info *erase; in mtdchar_ioctl() local
730 erase=kzalloc(sizeof(struct erase_info),GFP_KERNEL); in mtdchar_ioctl()
731 if (!erase) in mtdchar_ioctl()
744 kfree(erase); in mtdchar_ioctl()
747 erase->addr = einfo64.start; in mtdchar_ioctl()
748 erase->len = einfo64.length; in mtdchar_ioctl()
754 kfree(erase); in mtdchar_ioctl()
757 erase->addr = einfo32.start; in mtdchar_ioctl()
758 erase->len = einfo32.length; in mtdchar_ioctl()
760 erase->mtd = mtd; in mtdchar_ioctl()
761 erase->callback = mtdchar_erase_callback; in mtdchar_ioctl()
762 erase->priv = (unsigned long)&waitq; in mtdchar_ioctl()
773 ret = mtd_erase(mtd, erase); in mtdchar_ioctl()
777 if (erase->state != MTD_ERASE_DONE && in mtdchar_ioctl()
778 erase->state != MTD_ERASE_FAILED) in mtdchar_ioctl()
783 ret = (erase->state == MTD_ERASE_FAILED)?-EIO:0; in mtdchar_ioctl()
785 kfree(erase); in mtdchar_ioctl()