Lines Matching refs:erase
369 struct erase_info *erase; in concat_erase() local
419 erase = kmalloc(sizeof (struct erase_info), GFP_KERNEL); in concat_erase()
421 if (!erase) in concat_erase()
424 *erase = *instr; in concat_erase()
433 if (subdev->size <= erase->addr) { in concat_erase()
434 erase->addr -= subdev->size; in concat_erase()
451 if (erase->addr + length > subdev->size) in concat_erase()
452 erase->len = subdev->size - erase->addr; in concat_erase()
454 erase->len = length; in concat_erase()
456 length -= erase->len; in concat_erase()
457 if ((err = mtd_erase(subdev, erase))) { in concat_erase()
461 if (erase->fail_addr != MTD_FAIL_ADDR_UNKNOWN) in concat_erase()
462 instr->fail_addr = erase->fail_addr + offset; in concat_erase()
473 erase->addr = 0; in concat_erase()
476 kfree(erase); in concat_erase()