|
@@ -812,12 +812,9 @@ static int chip_ready (struct map_info *map, struct flchip *chip, unsigned long
|
|
|
break;
|
|
|
|
|
|
if (time_after(jiffies, timeo)) {
|
|
|
- /* Urgh. Resume and pretend we weren't here. */
|
|
|
- map_write(map, CMD(0xd0), adr);
|
|
|
- /* Make sure we're in 'read status' mode if it had finished */
|
|
|
- map_write(map, CMD(0x70), adr);
|
|
|
- chip->state = FL_ERASING;
|
|
|
- chip->oldstate = FL_READY;
|
|
|
+ /* Urgh. Resume and pretend we weren't here.
|
|
|
+ * Make sure we're in 'read status' mode if it had finished */
|
|
|
+ put_chip(map, chip, adr);
|
|
|
printk(KERN_ERR "%s: Chip not ready after erase "
|
|
|
"suspended: status = 0x%lx\n", map->name, status.x[0]);
|
|
|
return -EIO;
|