This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

RL-FlashFS (RL-ARM) and NAND Flash

Hi,

Could I use RL-FlashFS and a NAND Flash Chip? (especially MT29F2G08AADWPD chip from Micron) and if yes what about "Bad blocks management"? Is it handle by the library?

I found that I have to provide :

fs_EraseSector
fs_ProgramPage
fs_Init

but what about fs_EraseSector? because on why NAND flash I only found an erase bloc opcode. So what is a sector on my chip? is it a bloc or a group of bloc?

Another thing I don't understand is why we don't provide a read function?

Last question, I have to make the FS_FlashDev.h file but the documentation speek about "sector" but again is it block in my case?

#define SPI_FLASH_DEVICE                              \ 
   DSB(0x10000, 0x000000),     /* Sector Size 64kB */ \ 
   DSB(0x10000, 0x010000),     /* Sector Size 64kB */ \ 
…
#define SF_NSECT    32

How do I make my FS_FlashDev.h with my NAND flash wich is made of 2048 blocks of 64 pages (each page is 2048 + 64 bytes).

Jonathan BERNARD

  • You don't have any idea??

    I think that sector and block are the same thing.

    But my real problem now is as we don't provide any read function how my Flash Nand will work??

  • I also tried to use flashFS with a NANDFlash.
    In principle you have the problem to read from the flash, because flashFS just supports memory mapped flash read access.
    I was able to work around it, by just defining my NANDFlash as a SPI flash, which needs a separate read function. You have to take care, that you can only read/write blocks, so the implementation of the read/write functions have to care about what to read/write.

    BUT: I just got an email from Keil, that says flashFS does not have any bad block management.
    Thus I do not go any further and have to think about my alternatives...

  • Stefan, Jonathan,

    This is very disappointing. It means that FlashFS will only support devices that are directly addressable via memory mapping. Give me a break Keil, why do I have to reinvent the wheel if I want to store a 20 MB worth of website data on a NAND flash and make it available via USB? Value for money?! Sorry for this, but I am (yet again) highly annoyed with FlashFS (I guess people here already heard me nagging about it 10 times, but I had to write my own (modest) FAT12 file system that resides completely in external RAM because FlashFS's RAM drive is not FAT compatible so cannot be brought outside using USB. Ho that made me angry - nearly missed a deadline because of that!).
    Disappointed.