diff options
Diffstat (limited to 'drivers/mtd/nand/diskonchip.c')
-rw-r--r-- | drivers/mtd/nand/diskonchip.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/mtd/nand/diskonchip.c b/drivers/mtd/nand/diskonchip.c index d5927674f283..a9b1da40ad32 100644 --- a/drivers/mtd/nand/diskonchip.c +++ b/drivers/mtd/nand/diskonchip.c | |||
@@ -16,7 +16,7 @@ | |||
16 | * | 16 | * |
17 | * Interface to generic NAND code for M-Systems DiskOnChip devices | 17 | * Interface to generic NAND code for M-Systems DiskOnChip devices |
18 | * | 18 | * |
19 | * $Id: diskonchip.c,v 1.48 2005/01/31 22:22:21 gleixner Exp $ | 19 | * $Id: diskonchip.c,v 1.49 2005/02/22 21:48:21 gleixner Exp $ |
20 | */ | 20 | */ |
21 | 21 | ||
22 | #include <linux/kernel.h> | 22 | #include <linux/kernel.h> |
@@ -410,7 +410,12 @@ static uint16_t __init doc200x_ident_chip(struct mtd_info *mtd, int nr) | |||
410 | doc200x_hwcontrol(mtd, NAND_CTL_SETALE); | 410 | doc200x_hwcontrol(mtd, NAND_CTL_SETALE); |
411 | this->write_byte(mtd, 0); | 411 | this->write_byte(mtd, 0); |
412 | doc200x_hwcontrol(mtd, NAND_CTL_CLRALE); | 412 | doc200x_hwcontrol(mtd, NAND_CTL_CLRALE); |
413 | 413 | ||
414 | /* We cant' use dev_ready here, but at least we wait for the | ||
415 | * command to complete | ||
416 | */ | ||
417 | udelay(50); | ||
418 | |||
414 | ret = this->read_byte(mtd) << 8; | 419 | ret = this->read_byte(mtd) << 8; |
415 | ret |= this->read_byte(mtd); | 420 | ret |= this->read_byte(mtd); |
416 | 421 | ||
@@ -429,6 +434,8 @@ static uint16_t __init doc200x_ident_chip(struct mtd_info *mtd, int nr) | |||
429 | doc2000_write_byte(mtd, 0); | 434 | doc2000_write_byte(mtd, 0); |
430 | doc200x_hwcontrol(mtd, NAND_CTL_CLRALE); | 435 | doc200x_hwcontrol(mtd, NAND_CTL_CLRALE); |
431 | 436 | ||
437 | udelay(50); | ||
438 | |||
432 | ident.dword = readl(docptr + DoC_2k_CDSN_IO); | 439 | ident.dword = readl(docptr + DoC_2k_CDSN_IO); |
433 | if (((ident.byte[0] << 8) | ident.byte[1]) == ret) { | 440 | if (((ident.byte[0] << 8) | ident.byte[1]) == ret) { |
434 | printk(KERN_INFO "DiskOnChip 2000 responds to DWORD access\n"); | 441 | printk(KERN_INFO "DiskOnChip 2000 responds to DWORD access\n"); |