DOC Write Support and the TODO list
David Woodhouse
dwmw2 at infradead.org
Fri May 5 05:38:25 EDT 2000
Sorry for the delay - it's taking me a while to catch up.
trevw at zentropix.com said:
> To business, I think I've fallen foul of some of the missing write
> functionality:
> When I rebooted my DOC system yesterday it stopped after
> 'Uncompressing Linux...' with the error message:
> crc error
> -- System halted
> When I rebooted into my standard hdd-based system, the NFTL
> initialisation routine complained:
> EUN 317: Erasemark not 0x3c69 (0x3461 0x3461 instead)
> EUN 356: dittto
Odd. I can understand a few bits going south - but the _same_ bits in four
different places? Sounds more like hardware to me - the high bit was tied
low, perhaps during the write of the Erasemark.
> I was able to mount the device, etc but it would not boot (and it's
> been mothballed for weeks).
Can you check the data in the most recently changed files - see if the high
bits are all zeroed? That would probably explain a CRC error during
uncompress :)
> The plot thickens:- I then altered the device to boot a kernel using
> the M-Systems driver, which worked and then....I went back to my MTD
> driver kernel and that worked fine too!
> So, what do you think?
I'd have thought that's fairly unlikely to be bad blocks of flash - the
chances of 8 bits going bad, all coincidentally being the high bit of a
byte, are quite low. I'm more inclined to blame it on the system bus or
DiskOnChip ASIC rather than the flash chips themselves.
> Is this an example of a block going bad, being
> ignored by the nftl code but found and fixed by the M-Systems driver?
There's nothing the M-Systems driver can do to make us stop attempting to
use those blocks. If the MTD driver is working now, then those blocks are
(now) fine.
--
dwmw2
To unsubscribe, send "unsubscribe mtd" to majordomo at infradead.org
More information about the linux-mtd
mailing list