Hi,
Found a trouble recently. The EVK can't boot by LTIB and Yocto build.
Anyone have idea to fix it?
LTIB build SD
Yocto Build error.
Solved! Go to Solution.
It looks something is wrong after change the cpu frequency. In the file ltib/rpm/BUILD/imx-bootlets-src-2.6.35.3-1.1.0/boot_prep/init-mx28.c, would you please define "MEMORY_TEST" and rebuild the boot stream to see if the memory test can pass?
Have You tried demo images from the Web ?
No, already download it. How to use it?
The i.MX28 demo image is available at http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=IMX28_SW.
After extraction, you should see several .SB and rootfs images. Please follow the instruction in MX28_EVK_Linux_User_Guide.pdf section 5.1.3 to prepare the MMC to boot. This document is also available at the above link.
Please notice that you need to program imx28_ivt_linux.sb instead of imx28_linux.sb since EVK has HAB enabled by default.
Copy imx28_ivt_linux.sb and imx28_ivt_uboot.sb into ./rootfs/boot
Still get error below
*************************************
$sudo ./mk_mx28_sd /dev/sdb
**************************************
HTLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLFLC
PowerPrep start initialize power...
Battery Voltage = 4.24V
boot from battery. 5v input not detected
LLLCJan 30 201317:34:07
FRAC 0x92925552
memory type is DDR2
Wait for ddr ready 1power 0x00820710
Frac 0x92925552
start change cpu freq
hbus 0x00000003
cpu 0x00010001
LLLLLLLFLCLLJ
*************************************
$sudo ./mk_mx28_sd -u /dev/sdb
************************************
PowerPrep start initialize power...
Battery Voltage = 4.24V
boot from battery. 5v input not detected
Jan 30 201317:34:07
FRAC 0x92925552
memory type is DDR2
Wait for ddr ready 1power 0x00820710
Frac 0x92925552
start change cpu freq
hbus 0x00000003
cpu 0x00010001
It looks something is wrong after change the cpu frequency. In the file ltib/rpm/BUILD/imx-bootlets-src-2.6.35.3-1.1.0/boot_prep/init-mx28.c, would you please define "MEMORY_TEST" and rebuild the boot stream to see if the memory test can pass?
In bottom of code, I found
*****
/*Test Memory;*/
printf("start test memory accress\r\n");
printf("ddr2 0x%x\r\n", pTest);
for (i = 0; i < 1000; i++)
*pTest++ = i;
pTest = (volatile int *)0x40000000;
for (i = 0; i < 1000; i++) {
if (*pTest != (i)) {
printf("0x%x error value 0x%x\r\n", i, *pTest);
}
pTest++;
}
printf("finish simple test\r\n");
return 0;
***********
That mean Test Memory is not ok?
Yes, I meant to enable this piece of code in boot stream and see if messages "start test memory accress" and "finish simple test" can be shown. Otherwise, your board may have hardware problem.
Only know LTIB build method. If possible to inform me the way to modify?
Run this command to get the boot stream source code.
$ ./ltib -p boot_stream.spec -m prep
Edit the file ltib/rpm/BUILD/imx-bootlets-src-2.6.35.3-1.1.0/boot_prep/init-mx28.c and add the line "#define MEMORY_TEST".
Run this command to build the boot stream.
$ ./ltib -p boot_stream.spec -f
The imx28_(ivt)_linux.sb and imx28_(ivt)_uboot.sb will be updated.
Dear all,
Thanks, root cause found. EMI_VREF =0V!!
So, check R29 tie to ground in both end. Resolder R29 and the system can bootup now.
Thanks all of your help.
Hello Thomas,
How many EVKs have you found to have this problem? Have you tried the prebuilt image?
I only have one EVK,
I use 3 kinds pribuild images original Linux image, LTIB prebuild by Ubuntu and Yocto fsl-test image. Test all of them fail.
The pics are fail shown in debug message.