-
Notifications
You must be signed in to change notification settings - Fork 804
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
using LittleFs on W25N01GV 1Gb NAND Flash with FreeRTOS #361
Comments
Hi, But when I started to test with the example like in the littlefs readme.md mount error and format error has returned and finally hangs at fileopen(the next instruction). I can paste the test code here and config here, if someone have a clue please respond..... I expects a solution from @geky @geky
}; ------------------------------Test code ------------------------- uint32_t FlashTest(void) {
} |
what's the returned error code? I suggest setting the read/prog/cache buffer size to 128/256 |
@eastmoutain . Hi thank you for the reply. My issues were solved, after correcting configuration and mapping correct FreeRTOS calls. I am able to write and read back using littleFs API's now. However I couldn't make it work with static buffers. I am using FreeRTOS port alloc functions for allocating read/write sizes. |
@visakh-png |
@visakh-png could you, please, share your configuration? I am having similar issues as you. |
@mershaywu77 Sorry for replying late. I have found issues for opening a large files(>300K). So i have stopped it a while and using my own memory management. But it will be very easier , if it is in place of memory management with hardcore addresses. If i check it some time i will post it here, the progress |
@visakh-png , thank you for reponse. I tried it on ZC702 evk and compared it to several commercial version of fail-safe file systems and a safeFAT, the littleFS has the least performance. It may not meet my expections for the fail safe file system. |
@mershaywu77 ohhh. That is something bad news. Do you only feel a performance glitch or any threat to the fail-safe behavior like that I have faced. Do you have any open source to suggest supports eMMC NAND flash. |
@visakh-png, no issue found for sail safe part, only cons is the read/write performance is as good as commercial one. Sorry I did not found any open source one which can have the similiar performance as commercial solutions. |
@mershaywu77 . Okay. Thanks for the information. :-) |
@gmomchilov , may I know some details of the system you are using. |
@visakh-png I am also using FreeRTOS and W25N01GV. I was wondering what your LittleFS lfs_config variable looks like. I am having issues using the ECC of the chip with LittleFS and thought I could have misconfigured LittleFS in some way. |
@gmomchilov
where page size is 2K.... |
@gmomchilov gmomchilov . ECC Error not making issues in bare write and with Little FS, i think for me |
@visakh-png thank you. Can you explain why your block size is equal to the page size? Don't you run into the problem that LittleFS erases the whole block (128K) deleting all of your data in your block even though you wanted to earse 2K only? And why do you use the lookahead size to 2K? |
@gmomchilov Hi I have observed that W25N01GV only erases 2KB from the page address. So if I am giving 128KB (0x20000) as the block size, then file system will assume that on a single erase 128KB(64 pages) will be erased, but in actual only 2KB get erase and it will result in a write failure of your trial after first 2KB from the page address. |
@visakh-png : If you are using freeRTOS, you should also map malloc and free functions provided by freeRTOS in lfs_utils.h. This might fix your problem. |
@ByteGalaxy I am using portalloc and vportfree of CMSIS Free RTOS instead of malloc and free. This is not current issue. For large files littlefs is not useful |
Could I know how do you choose BLOCK_CYCLES_TO_READ value on W25N01GV? |
You were probably checking at the wrong address if all pages are erased. I am also using W25N01GV and the block erase command deletes 128KB (all 64 pages). |
Hi all, I'm trying to use LittleFS with the W25N01Gbit like you ll are, and having various problems. Have any of you been able to resolve these issues? If not, which commercial file system did you go to? I appreciate any suggestions, I need to get a product out the door and this has been a substantial blocker. Thank you. |
@jimarcher , we finally go to HCC safeFAT, hope it can help. |
@jimarcher it works for me. Maybe here you will find some helpful informations #11 (comment) |
Thanks @Igor-Misic I'll check that out. |
@mershaywu77 Thank you, if I can't make Little FS work I'll check out safeFAT, but it does seem I should be able to make it work. |
Hi all, |
Sorry to hear that, I haven’t tried it on w25.
From: Simon Barotte ***@***.***>
Reply-To: littlefs-project/littlefs ***@***.***>
Date: Monday, September 9, 2024 at 15:03
To: littlefs-project/littlefs ***@***.***>
Cc: east moutain ***@***.***>, Mention ***@***.***>
Subject: Re: [littlefs-project/littlefs] using LittleFs on W25N01GV 1Gb NAND Flash with FreeRTOS (#361)
Hi all,
I'm trying to implement littlefs with an W25N01Gbut I'm stuck with format operation. Is there anyone who has succesfully configure w25 with littlefs ?
—
Reply to this email directly, view it on GitHub<#361 (comment)>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ABDP7CSVWSQ3RLHX6UYRQ23ZVVB3FAVCNFSM6AAAAABN33Q2M2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMZXGI4DSNBWHE>.
You are receiving this because you were mentioned.Message ID: ***@***.***>
|
Hi ,
I am using Winbond QSPI Nand flash with W25N01GV 1 G-bit(128 MB) memory with only block erase(128 KB). Is there any size limitation for using higher size/Block-size in LittleFs?.
For my flash memory (with a page read/program and block erase interface) , does it requires a flash translation layer?. In my first look and up on looking the configuration structures I felt like LittleFs is handling these translation.
If it not requires the translation layer, Can I use it straight in my program which runs in FreeRTOS*?. With minimal mapping, i.e. only configuring "lfs_config".
If anybody have experience in porting the same and you have a how to doc. please share, if it is for STM and for FreeRTOS, really wonderful :-) ....
Regards,
Visakh SV
The text was updated successfully, but these errors were encountered: