mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-08-22 01:54:35 +03:00
on some platforms, erase suspend leads to data corruption and lockups when write ops collide with erase ops. this has been observed on the buffalo wzr-hp-g300nh. rather than play whack-a-mole with a hard to reproduce issue on a variety of devices, simply disable erase suspend, as it will usually not produce any useful gain on the small filesystems used on embedded hardware. git-svn-id: svn://svn.openwrt.org/openwrt/trunk@27984 3c298f89-4303-0410-b956-a3cf2f4a3e73
12 lines
432 B
Diff
12 lines
432 B
Diff
--- a/drivers/mtd/chips/cfi_cmdset_0002.c
|
|
+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
|
|
@@ -685,7 +685,7 @@ static int get_chip(struct map_info *map
|
|
return 0;
|
|
|
|
case FL_ERASING:
|
|
- if (!cfip || !(cfip->EraseSuspend & (0x1|0x2)) ||
|
|
+ if (1 /* no suspend */ || !cfip || !(cfip->EraseSuspend & (0x1|0x2)) ||
|
|
!(mode == FL_READY || mode == FL_POINT ||
|
|
(mode == FL_WRITING && (cfip->EraseSuspend & 0x2))))
|
|
goto sleep;
|