I read previous post "AM3517 NAND booting" but was not sure which step from
http://processors.wiki.ti.com/index.php/WinCE-BSP_ARM-A8_User_Guide#Flashing_the_board_through_SD_card actually does the flashing XLDRNAND.bin and EBOOTND.bin from SD to NAND. Please clarify.
2. Enable flashing by select following option from Eboot menu:
[Flash Management] -> Enable flashing NK.bin
Is this "enabling flashing NK.bin" step does the flashing of all three files: NK.bin, EBOOTND.bin and XLDRNAND.bin to NAND reserved blocks?
3. Change the SDcard settings for image name to ebootnd.bin/xldrnand.bin/nk.bin from following EbootMenu:[SDCard Settings] -> [Enter Filename]
I don't understand this step description. From the SD boot menu, under SDCard Settings->Show Current Settings, I have the file name is "nk.bin". Why do I have to change SDCard settings? I just want to boot from NAND. I have difficult to understand the descriptions from this step. In this step, what do I need to enter "ebootnd.bin" or "xldrnand.bin" or "nk.bin" or "ebootnd.bin/xldrnand.bin/nk.bin". Please clarify.
I made sure the NAND ECC mode is 0 (hamming 1 bit ECC) but I could not boot from NAND for some reason.
See answers inline.
<Tao> The name of the binary that needs to be flashed in NAND. Eboot will read the file again and then flash it in NAND.
I am still missing something here and here are my steps:
1. My SD card has: MLO, EBOOTND.bin, EBOOTND.nb0, EBOOTSD.bin, EBOOTSD.nb0, NK.bin, XLDRNAND.bin and XLDRNAND.nb0. I have no problem to power up and memory booting from SD with sys_boot[5:0] = 0b0011111 (NAND first, SD fourth).
[Flash Management] -> Enable flashing NK.bin
[Flash Management] -> Set ECC mode -> 0 (hamming 1 bit ECC)
3. Repeat this step for flashing ebootnd.bin,xldrnand.bin,nk.bin to NAND:[SDCard Settings] -> [Enter Filename]
4. Power off my device and remove SD.
5. Power on to boot from NAND with the same sys_boot[5:0] = 0b0011111 (NAND first, SD fourth). I can't boot.
Please comment. Thanks.
Correction: 0b001111 instead of 0b0011111 in both places. Thanks.
Before power off the device, did you see messages that indicates XLDR/Eboot is flashed at certain NAND location?
The selected binary will be loaded first and then flashed in NAND. Did you observe these steps in your log?
My NAND has bad block 5 and I hope WinCE knows to skip that block. I didn't see any activity indicated flashing data to NAND location. I attached UART3 trace.
I saw a couples issues in your log:
1.Flashing is disabled
14:27:50.522> Selection: 814:27:50.522> 14:27:52.893> Disable Flashing NK.bin [y/-]: y14:27:52.893> 14:27:52.893> Flashing NK.bin is disabled14:27:52.893>
2. if you want to flash ebootnd.bin, then just enter ebootnd.bin. One at a time. It will always take the file name entered the last.
14:29:16.447> Selection: 214:29:16.447> 14:29:16.447> 14:29:16.447> 14:29:21.127> Type new filename (8.3 format) :nk.bin14:29:21.127>
3.You should seletc boot from "SD" card, since ebootnd.bin is in SD card. Your trace shows you are set "Boot device set to NK from NAND"
Hope this helps.
Thanks for the comments. I didn't pay attention to the flashing option is a toggle and now I know better. From your comment #2, do I have to reboot my device everytime I flash a file to NAND reserved blocks? My understanding is I have to flash ebootnd.bin, xldrnand.bin and nk.bin to NAND reserved blocks. Is that correct? I had error in OEMLaunch in the attached file error.log, please let me know what's that means. Thanks,
For XLDR and Eboot , you do need to reboot every time. To boot from NAND, you have to flash at least ebootnd.bin and xldrnand.bin. If nk.bin is not available in NAND, you can use other boot devices, such as "Ethernet interface".
After Nk.bin is written in NAND, Eboot will load nk.bin from NAND into RAM, and then start running.
Regarding the error message, Eboot can not launch Eboot nor XLDR, this is expected. You can reboot the device.
I was able to program ebootnd.bin and xldrnand.bin to NAND. After I reboot my device, NAND X-Loader started the booting. This is great. The NAND X-loader menu option is slightly different than MLO. There is no "SDCard Settings" for me to program NK.bin which is expected. Is there a way fo rme to program NK.bin from SD to NAND at this state.
Thanks a lot for your helps, Tao.
"Flash NK.bin in NAND from SD" is only supported when booting from SD card. You need to change the DIP switch settings to boot from SD card, then flash NK.bin.
Thanks for the helps, Tao.
You have a great day.
You might want to use "SDCard Setting" to change the file name to be programmed to NAND. At the end of the programming, you will have to reboot for the next file. I included the complete trace and I think it would help.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.