Re: RE : JFFS2 for NAND flash file system

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]


Sorry if my questions could seem a bit lacking but I am new here and I
am quite curious.

For the moment the differences between JFFS2 NAND flash support and
eCos NAND support is not clear in my head.
I understand that NAND flash devices have some drawbacks that must be
taken in account, like :
- wear-levelling for increasing the life time of the device
- ECC (error code correction) to manage bit-flipping
- Bad blocks management

I may be wrong but in my head all these functionality should be
present in the eCos NAND flash support.
For me this layer will use the below layer, the hardware specific NAND
driver, to perform simple read/write.
It will implement WL, ECC and BBM, and provide an API for upper layers
like file systems. Am I wrong?

Here is a drawing of layers as i see it :
|                                 |   API for app/user
|           FILE IO           |
|                                 |   API for upper layer
|               FS              |  Manage the file system
|___________________|  Use the eCos NAND support interface to perform read/write
|                                 |           API for upper layer
|  eCos NAND support  |           Implement NAND drawbacks management
|___________________|           Uses HW NAND driver to perform simple
R/W operations
|                                 |                     API to access the HW
|   HW NAND Driver      |                    Manage R/W operations
|___________________|                    Reach the hardware

For me it is clear that the FS has nothing to do with all the NAND
drawbacks, it's the job of the NAND support layer, isn't it?

Finally, what are the functionality that make the FS compliant to NAND
devices as it will use a NAND support layer which already take in
account drawbacks from NAND device?

Here is how things are disposed in my head, does it has to be rectified?

PS : Is the Linux mtd layer (or a part of it) the equivalent of the
eCos NAND support?

Thanks for your time,
Best regards,

Before posting, please read the FAQ:
and search the list archive:

[Index of Archives]     [Linux Embedded]     [U-Boot V2]     [Linux Kernel]     [Linux MIPS]     [Linux ARM]     [Linux for the Blind]     [Linux Resources]     [Photo]     [Yosemite]     [ISDN Cause Codes]     [eCos Home]

  Powered by Linux