Dear all,
I have 2 boards, one is the imx27ads boards and another is designed by ourselves, on our own board , when I program the image file into board's flash, get the error:
Can not execute RAM Kernel
I check the atk tool source, I find when execute the Bootstrap End Indication Operation, I got the error response(0x88888808), 0x88888888 is correct.
After that I compare the 2 boards log(listen to PC serial port write/read), got the log(refer to the attachment files), I find the first difference is when execute the download command, as below


from the imx27ads board I got:
| 04 04 A0 00 40 00 00 00 00 BC C0 00 00 00 00 00 |
from our board I got:
| 04 04 A0 00 40 00 00 00 00 2F 30 00 00 00 00 00 |
I have program the same image file
All is the same but the Number of byte to be written in Hex, I don't know why on our board the size is so small.
In code, the size is desided here:
gui_application/FlashToolDlg.cpp:
// open image file fp = fopen(m_strImageName, "rb"); if (!fp) { InsertLog(CString("Can not open image file:") + m_strImageName); return FALSE; } // get file size if (stat(m_strImageName, &fstat) != 0) { InsertLog(CString("Can not open image file:") + m_strImageName); fclose(fp); return FALSE; } size = fstat.st_size; buffer = new unsigned char[size]; // read image file data to buffer fread(buffer, 1, size, fp); fclose(fp);
Why I program the same image file but I got the different size of file?
Original Attachment has been moved to: IMX27开发板串口监控1.txt.zip
Original Attachment has been moved to: IMX27-0201.txt.zip