128MB DOC2000 with 2.4.X kernel
Brendan Simon
BrendanSimon at fastmail.fm
Tue Aug 10 21:11:26 EDT 2004
Dear MTD gurus.
Thanks for your feedback Dan.
Summary regarding the 128MB DOC2000:
1) Cannot use NTFL. I *must* use INFTL
2) 128MB DOC2000 is more like a MilleniumPlus device than a DOC2000
device.
3) Recommend using 2.6 kernel and latest MTD tree.
Is the 96MB DOC2000 more like the 64MB model or the 128MB model?
i.e. can I use a 96MB DOC2000 with my existing 2.4.18 kernel or will I
have the same problems as the 128MB DOC.
Many thanks,
Brendan Simon.
Dan Brown wrote:
>----- Original Message -----
>From: "Brendan J Simon" <BrendanSimon at fastmail.fm>
>Sent: Wednesday, August 04, 2004 11:51 PM
>
>
>
>
>>I've just been reading the archives about 128MB DOCs looking like a
>>Millenium device and the soltion being to do 4 reads, etc.
>>
>>
>
>Just to be absolutely clear: The reason it looks like a Millennium device
>is that it is (in almost every respect) a Millennium device, from a hardware
>access perspective. The "solution" you describe allows you to properly
>detect the fact that it is a larger DOC2000, rather than a true Millennium,
>but you still have to talk to it as if it were a Millennium.
>
>
>
>>If I modify docprobe.c to detect the 128MB DOC2000 correctly, will the
>>rest of the MTD code work correctly with it ???
>>
>>
>
>Depends on your definition of "correctly". You may be able to get the stock
>2.4.18 MTD code to read and write your device with the modification you
>describe (or you may not -- I haven't tried it). However, you'll be missing
>a lot of critical functionality that has been added to the 2.6.8-rc2 kernel
>(and the MTD CVS repository, which is even more up-to-date).
>
>In particular, you won't get proper bad block handling, because your device
>uses INFTL (rather than NFTL), and the 2.4 series do not properly parse
>INFTL bad block tables. Bad block detection becomes particularly critical
>for larger devices.
>
>
>
>>I hope so as this would be a quick fix, however I do recall seeing
>>something about 3 and 4 byte addresses. Is this relevant to getting
>>128MB DOC working with 2.4.X kernels ?
>>
>>
>
>Not sure. I doubt the 128MB DOC is big enough to require 4-byte addresses.
>(It depends on whether it's organized as one very large flash chip or
>several -- does anyone know?)
>
>
>
>>I'm looking for the quickest solution. Any ideas, comments or
>>suggestions would be greatly appreciated.
>>
>>
>
>I strongly suggest you put in the effort to switch to the latest kernel
>(2.6.8-rc2 or later). I'm not certain that your quick fix to 2.4.18 will
>work. You will certainly not have full functionality -- in addition to
>proper bad block handling, the new DOC drivers under the NAND subsystem
>allow you to use jffs2 cleanly on DOC devices, which you may be interested
>in.
>
>Perhaps most importantly, you'll find people on this list to be much more
>supportive and helpful to someone who is using the latest code. There's not
>a whole lot of interest in helping people deal with problems that have
>already been fixed in the newer code.
>
>Your best bet may be to grab the latest 2.6 kernel and patch it with the
>latest MTD snapshot; others may disagree.
>
>
>
>>Is INTFL needed for the 128MB DOC2000 or can I use the NFTL code that I
>>am currently using on the 64MB doc?
>>
>>
>
>You can't use NFTL. If you want to use an arbitrary filesystem (such as
>ext2) on your device, you'll have to use INFTL. Another (better, in my
>opinion) option is to switch to a filesystem that runs directly over the
>flash device, such as JFFS2. The latest DOC drivers (the NAND subsytem
>reimplementation, not the original stand-alone drivers) finally support this
>cleanly.
>
>Good luck!
>
> -Dan Brown
>
>
>
More information about the linux-mtd
mailing list