
Chris Fester wrote:
Hi all,
I recently have been attempting to get u-boot working on my MPC8641HPCN evaulation board (AKA the Argo Navis platform). I faced a problem compiling the latest git source with the ELDK 4.0 and getting it to work on the board. The processor would run off into the weeds when doing the command table relocation step in lib_ppc/board.c:633. After debugging with a BDI, some head scratching, and a few google searches, it came down to an issue with the linker, which seems to have been a common problem in the past for this mail list. Please see the thread at: http://sourceware.org/ml/binutils/2005-08/msg00412.html.
I answered the same issue for someone else this week. This issue is fixed by the patch that went in Aug 31, 2005. As far as I can see, the change was for all boards in the public tree back then.
http://www.denx.de/cgi-bin/gitweb.cgi?p=u-boot.git;a=commit;h=807d5d7319330e...
- Fix to linker script for mpc8641hpcn platform to enable a correct symbol table with ELDK 4.0 linker.
diff --git a/board/mpc8641hpcn/u-boot.lds b/board/mpc8641hpcn/u-boot.lds index b34de8e..c2f6727 100644 --- a/board/mpc8641hpcn/u-boot.lds +++ b/board/mpc8641hpcn/u-boot.lds @@ -120,7 +120,7 @@ SECTIONS _edata = .; PROVIDE (edata = .);
- __u_boot_cmd_start = .;
- __u_boot_cmd_start = ADDR(.u_boot_cmd); .u_boot_cmd : { *(.u_boot_cmd) } __u_boot_cmd_end = .;
Please that a look at the fix done for other boards (say mpc8560ads). They add two lines of ". = ." which fixes this and a similar issue with __start___ex_table symbol. I think it would be better if the issue is fixed in the same way. (I am not saying your solution is wrong, but this is more consistent)
Tolunay
PS: Wolfgang, perhaps this should be a FAQ?