Hi !
I would like to connect iMX35 to a NAND flash from Micron MT29F4G08ABAEA(writesize=4K, oobsize=224, erasesize=64*4K)
The problem is that NFC from iMX35 support just 218 bytes spare size while the flash use 224.
What should I use for oobsize in nand_device_info.c in a try to allow ATK1.71 to support this flash ? Should I use 218 or 224 ?
Best regards,
Gabriel
Hi Gabriel,
I have got an answer from Freescale support (thank's Igor!). He has pointed out that the iMX35 has problems to boot when the busy time after the first RESET command is >100us. With my flash this is the case after powerup! My work-around is to repeat the reset to the iMX35, after he has send the first RESET command to the FLASH (fortunately I have a Supervisor CPU on my HW to do this). Like this my platform seems to boot stable.
Hope you can do the same.
Best regards,
Martin
Hi Gabriel, Jorge,
I have a very similar problem:
I try to use the MT29F8G08ABABA Flash (page size 4K+224, 128 pages/block). I have ATK V1.71 running for this Flash. I can read the Bootloader (XLDR.nb0 for use with Windows CE 6.0) back without any problem. But the Code gets never executed if i try to boot from the NAND (I have added a GPIO Pin toggling). We have changed Flash because of EOL of MT29F8G08AA (page size 4K+218, 64 pages/block). The original Flash was booting without any problem (even with the image build for the new FLASH!). Unfortunately I don't have the possibility to used a JTAG debugger on my HW. I will open a ticket (but in my experience they will only tell me that my FLASH is not supported!). Any help is more then welcome!
Best regards,
Martin
Hi Gabriel,
As far as I know, this HW mentioned in AN3996 is not exactly ROM. I've sent an e-mail to the experts to see what is it so we can debug the problem. I get back to you with the answer.
About the support, you can enter a ticket by going to www.freescale.com -> Support -> Technical service request.
Hope this helps!
Best regards.
Jorge.
Hi Jorge !
According to AN3996 there is a status diagram on page 8 which states that for an external NAND boot the hardware(I suppose the internal firmware) has the responsibility to copy the first 4kB from flash to NFC buffer and to jump to NFC buffer. Correct me if I am wrong.
ECC errors are not generated, I looked at ECC_STATUS_RESULT1 & ECC_STATUS_RESULT2 registers. Just the jump to NFC buffer is not done
I use my own image, in that case barebox. I don't know about Freescale's image. Where I can found it ?
Also where I can ask for SW support ?
Maybe I will try also to use internal boot.
Best regards,
Gabriel
Hi Gabriel,
My problem was different, I was using internal boot. It is my understanding that, if you are booting externally, the internal ROM code of the i.MX is not executed and the jump instruction has to be executed from external code. Unfortunately I'm mainly focused on HW, so may I suggest you to ask for SW support? Maybe someone in FSL can check your image. They will need to know:
- Are you using your own image? U-boot? Redboot?
- If so, are you able to boot with Freescale's image?
- Does the problem happen in all memories? If not, what's the yield?
Another possibility is that an ECC error is being generated and the execution of the code is being aborted. This can be checked in the internal i.MX35 NFC registers.
Best regards.
Jorge.
Hi Jorge !
Thanks for your help !
It is better now, but I have other problem. I try to use external boot mode so that I boot directly from flash. The internal boot code from Freescale copy the first 4k of bootloader from flash to internal NFC buffer memory and jump to first location of this memory. The problem is that in my case the jump is not done. The 4k data is copied without any errors. If I jump manually with a JTAG debugger I can boot without any problems.
Did you have also this problem ? (The support from Freescale was unsatisfactory: they told me that I can not use with iMX35 a flash with 224 bytes spare)
Best regards,
Gabriel
Hi Gabriel,
I had the same question and received this from Micron: You should use 218. It shouldn't be a problem as long as the configured spare size is smaller than the one of the NAND.
Best regards.
Jorge.