[U-Boot] No prompt on mx25pdk boot
Hugo Holgersson
hugoh at student.chalmers.se
Thu Oct 20 18:04:59 CEST 2011
Dear readers,
I have problems running U-Boot on my i.MX 25 PDK board.
I have tried two methods:
(A)
git clone git://www.denx.de/git/u-boot-imx.git master
nano board/freescale/mx25pdk/imximage.cfg # change to BOOT_FROM nand
make CROSS_COMPILE=arm-none-linux-gnueabi- mx25pdk_config
make CROSS_COMPILE=arm-none-linux-gnueabi- u-boot.imx
The u-boot.imx is flashed using FreeScale AVK to address 0x400 in NAND. This image does not work (no UART output).
My question is obviously if the my image is found and executed at all and first of all if all headers are set up correctly. By comparing the 2009.08 u-boot.bin from FreeScale's LTIB (that runs and gives me a prompt) with the new u-boot.imx, I found out that the old u-boot.bin puts a branch to the "reset"-routine...
00000000 <.data>:
0: ea00016a b 0x5b0
...
400: 83f005b0
404: 000000b1
408: 00000000
40c: 83f00414
410: 00000000
414: 83f0041c
... at top of NAND. Whereas the new u-boot.imx image does not:
00000000 <.data>:
0: 81200000
4: 000000b1
8: 00000000
c: 811ffc14
10: 00000000
14: 811ffc1c
This is the main difference I can found while comparing the old working, 2009.08 u-boot.bin to the one generated with "make u-boot.imx".
Note 1: The flash header starts at 0x400 in both cases, since the .imx is flashed to 0x400 and the .bin is flashed to 0x0 in NAND.
Note 2: The addresses pointed out are different because TEXT_BASE was set up differently. RAM is 0x8......
(B)
I tried to manually add the headers used in u-boot 2009.08, directly to the new u-boot.bin, instead of using the imximage tool, by modifying linkage:
I added dcdheader.S to arch/arm/cpu/arm926ejs/mx25/dcdheader.S
and the information about dcdheader.o to:
- arch/arm/cpu/arm926ejs/u-boot.lds
- arch/arm/cpu/arm926ejs/mx25/Makefile
(patch available)
These modifications gave a u-boot.bin with headers having the same layout as those in 2009.08 u-boot.bin (the branch to reset at address 0x00000000 also included). No luck.
For now the only way of debugging is the board's UART log since I haven’t managed to hook up my Segger J-Link... Any ideas are welcome!
Best regards,
Hugo Holgersson
More information about the U-Boot
mailing list