mirror of https://gitee.com/openkylin/linux.git
[MTD] Fix default timeouts for Intel NOR flash
In commit c172471b78
Nico switched to using
common code for polling for command completion. Unfortunately he also used
a common default timeout for both write and erase commands, despite the
fact that erases can take a _whole_ lot longer. Use a more sensible
default for erase timeout.
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
This commit is contained in:
parent
c1f1625860
commit
2a5bd59672
|
@ -397,9 +397,23 @@ struct mtd_info *cfi_cmdset_0001(struct map_info *map, int primary)
|
|||
cfi_fixup(mtd, fixup_table);
|
||||
|
||||
for (i=0; i< cfi->numchips; i++) {
|
||||
cfi->chips[i].word_write_time = 1<<cfi->cfiq->WordWriteTimeoutTyp;
|
||||
cfi->chips[i].buffer_write_time = 1<<cfi->cfiq->BufWriteTimeoutTyp;
|
||||
cfi->chips[i].erase_time = 1000<<cfi->cfiq->BlockEraseTimeoutTyp;
|
||||
if (cfi->cfiq->WordWriteTimeoutTyp)
|
||||
cfi->chips[i].word_write_time =
|
||||
1<<cfi->cfiq->WordWriteTimeoutTyp;
|
||||
else
|
||||
cfi->chips[i].word_write_time = 50000;
|
||||
|
||||
if (cfi->cfiq->BufWriteTimeoutTyp)
|
||||
cfi->chips[i].buffer_write_time =
|
||||
1<<cfi->cfiq->BufWriteTimeoutTyp;
|
||||
/* No default; if it isn't specified, we won't use it */
|
||||
|
||||
if (cfi->cfiq->BlockEraseTimeoutTyp)
|
||||
cfi->chips[i].erase_time =
|
||||
1000<<cfi->cfiq->BlockEraseTimeoutTyp;
|
||||
else
|
||||
cfi->chips[i].erase_time = 2000000;
|
||||
|
||||
cfi->chips[i].ref_point_counter = 0;
|
||||
init_waitqueue_head(&(cfi->chips[i].wq));
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue