zepan, what flash chip are you soldering? exact chip id please. i would like to buy some, say, from ali and when my order of your products arrive, solder the flash chips. as my interest is completely practical, not theoretical, i would expect useful answer. thanx.
I have replied you on hackaday:
Normal Nor SPI Flash is fine. I have tried W25Q128BV, the 16MB spi nor flash.
8MB~32MB spi nor flash is ok.
GD5F1GQ4UAYIG, is a 128MB spi nand flash, i bought it but didn’t test yet.
If you have backed my indiegogo campaign, I can send some spi flash together for you.
Are you preparing run openwrt on it?
thanx. i will be buying lots of your stuff, still thinking, there are 20 something days left, so no hurry.
if you include some flash that would be awesome.
i used to hack openwrt, lede and u-boot professionally, so yes, openwrt is a good option, i like openwrt/lede. ultimately it depends on testing, whatever works best for a particular product
I will donate some flash for you, please tell me what’s your indiegogo account.
If you transplant openwrt successfully, I will return all you paid (if you didn’t bought too much…)
Is any news about SPI NAND flash ??
I am interested in it also. Nand flash is usually used in mass production.
Thank you… and I have one question!
GD5F1GQ4UAYIG can read minimum 16bytes from the cache memory at one go (moreover It should read from the main memory to the cache memory every maximum 2112bytes).
So, It is not random access memory because my system has 32-bit word.
I think that only a random access memory can XIP(execute in place).
So. Can I XIP with GD5F1GQ4UAYIG?
V3s do not provide option for XIP (execute in place) = directly from SPI Flash.
It would not be useful, because CPU work at ~1Ghz , but SPI can do in best ~25 Mb/s , so it would slow down CPU by 40 times. (In reality, SPI work ~3Mb/s , CPU is 32 bit and it give ~1200 times CPU slow down).
All code and data is copied to operational memory and executed then.
For everyone information:
V3s can boot from SPI NAND .
I have own experience and some days ago found another person report on youtube :
Could you teach me how to boot from SPI NAND?
I already bought GD5F1GQ4UAYIG NAND Flash Memory. But It is so hard to me.
I’m studying https://www.kancloud.cn/lichee/lpi0/331844.
It’s not easy.
And, I’m afraid GigaDevice SPI NAND is supported in code.
For Micron SPI NAND, support code is available from web page and in linux, but it still need be ported/adopted.
Working code parts are available in comments for given video.
You need to start with u-boot patching and compiling.
Than flashing U-Boot to SPI NAND from itself or with provided programs.
When you get booted to u-Boot , you can boot Linux from network / nfs.
Thank you for your kind reply.
I got 2 patch file and 1 folder containing *.cpp files from given video comments.
2 patch file : linux_spi_nand.patch, u-boot_spi_nand.patch
1 folder : nand_u-boot-write
So. I want to know the directory where I will patch and I will put *.cpp files.
Patches need be applied from the root directory of Linux kernel source and U-Boot loader source trees. One for Linux , another one for U-Boot.
About *.cpp files - I don’t know place or how to compile or use those, nor is those dedicated for Linux or U-Boot.
We are looking for solution for new project and we are intended to use V3s controller with GigaDevice SPI NAND Flash as boot.
What steps we have to perform to boot from nand?
As well I want to know is it good solution for mass production?
If you have good experience with V3s we would like to collaborate with you.
- 2 years pass since and I don’t know last status of SPI NAND support in mainline u-boot / kernel .
But hear some work were going in that direction.
So, what steps need be performed depend:
- If it’s already supported in mainline solution, then probably update device tree for your device.
- If it’s Non supported, then u-boot / kernel need to be patched. It’s working, but stability is under question.
- about “Is it good solution for mass production?” :
Short answer is No .
Long answer - It could be good solution, if at least next things are :
- u-boot get support for SPI NAND (may be already is)
- linux kernel get support for SPI NAND (may be already is)
- Linux kernel SPI get DMA support
There is some other minor improvements which affect speed.
Without those changes, SPI NAND is slow and slowing down CPU .
Is my experience good or not, depend on your needs.
Yes, I got all those steps done for company I worked before, but this solution was not given to linux community approve.
Later I found video on youtube (posted earlier here) with similar solution, but not approved as well.
About collaboration, I do not have much free time, may be some hours per week. So, there must be big involve from your side.