[U-Boot] Building u-boot for Walnut board (PPC 405GPr)

Hi, I'm currently working on updating the firmware on our custom board (based on IBM walnut board) and tried to build the latest released u-boot 2011.06 using ELDK4.2. Using the fresh source code extracted from u-boot-2011.06.tar.bz2, I did "make walnut_config" and then "make". But I get the following error.
ppc_4xx-ld:u-boot.lds:1: parse error make: *** [u-boot] Error 1
All of the code compiles. I think it's a linker error but I have no idea how to resolve the problem. Any help would be appreciated.
Brian

Hi,
On Fri, 23 Sep 2011 18:11:28 -0700 "Brian S. Park" brian.park@corelis.com wrote:
Hi, I'm currently working on updating the firmware on our custom board (based on IBM walnut board) and tried to build the latest released u-boot 2011.06 using ELDK4.2. Using the fresh source code extracted from u-boot-2011.06.tar.bz2, I did "make walnut_config" and then "make". But I get the following error.
ppc_4xx-ld:u-boot.lds:1: parse error make: *** [u-boot] Error 1
All of the code compiles. I think it's a linker error but I have no idea how to resolve the problem. Any help would be appreciated.
$ wget -c ftp://ftp.denx.de/pub/u-boot/u-boot-2011.06.tar.bz2 $ tar xf u-boot-2011.06.tar.bz2 $ cd u-boot-2011.06/ $ export CROSS_COMPILE=ppc_4xx- $ ./MAKEALL walnut Configuring for walnut board... text data bss dec hex filename 219550 19468 42544 281562 44bda ./u-boot
--------------------- SUMMARY ---------------------------- Boards compiled: 1 ----------------------------------------------------------
There is no such problem with walnut board in the v2011.06 release. Please double-check our source.
HTH, Anatolij

Thanks for the reply. I was in the process updating ELDK from 4.1 to 4.2 and must have had something screwed up. I tried again Today and it compiles without error.
Thanks for looking into this and helping a newbie.
Brian
On 9/24/2011 3:05 AM, Anatolij Gustschin wrote:
Hi,
On Fri, 23 Sep 2011 18:11:28 -0700 "Brian S. Park"brian.park@corelis.com wrote:
Hi, I'm currently working on updating the firmware on our custom board (based on IBM walnut board) and tried to build the latest released u-boot 2011.06 using ELDK4.2. Using the fresh source code extracted from u-boot-2011.06.tar.bz2, I did "make walnut_config" and then "make". But I get the following error.
ppc_4xx-ld:u-boot.lds:1: parse error make: *** [u-boot] Error 1
All of the code compiles. I think it's a linker error but I have no idea how to resolve the problem. Any help would be appreciated.
$ wget -c ftp://ftp.denx.de/pub/u-boot/u-boot-2011.06.tar.bz2 $ tar xf u-boot-2011.06.tar.bz2 $ cd u-boot-2011.06/ $ export CROSS_COMPILE=ppc_4xx- $ ./MAKEALL walnut Configuring for walnut board... text data bss dec hex filename 219550 19468 42544 281562 44bda ./u-boot
--------------------- SUMMARY ---------------------------- Boards compiled: 1
There is no such problem with walnut board in the v2011.06 release. Please double-check our source.
HTH, Anatolij

I found my problem.
My board, though based on walnut board, does not have real time clock. So, I have to disable RTC support in u-boot. However, as soon as I comment out
#define CONFIG_RTC_DS174x 1 /* use DS1743 RTC in Walnut */
in walnut.h, line 68, I get build error.
[root@new-linuxdev u-boot-2011.06]# ./MAKEALL walnut Configuring for walnut board... ppc_4xx-ld:u-boot.lds:1: ignoring invalid character `#' in expression ppc_4xx-ld:u-boot.lds:1: parse error make: *** [u-boot] Error 1 ppc_4xx-size: './u-boot': No such file
--------------------- SUMMARY ---------------------------- Boards compiled: 1 Boards with warnings or errors: 1 ( walnut ) ---------------------------------------------------------- [root@new-linuxdev u-boot-2011.06]#
I can figure my way out if it's a code problem. This, however, seems like a configuration issue and I'm still a newbie when it comes to u-boot configuration issue. It seems to have changed a lot since last time I looked at u-boot a few years ago.
I'd appreciate some guidance.
Thank you in advance for any help and thank you all for putting such wonderful software in public domain.
Brian
On 9/26/2011 9:20 AM, Brian S. Park wrote:
Thanks for the reply. I was in the process updating ELDK from 4.1 to 4.2 and must have had something screwed up. I tried again Today and it compiles without error.
Thanks for looking into this and helping a newbie.
Brian
On 9/24/2011 3:05 AM, Anatolij Gustschin wrote:
Hi,
On Fri, 23 Sep 2011 18:11:28 -0700 "Brian S. Park"brian.park@corelis.com wrote:
Hi, I'm currently working on updating the firmware on our custom board (based on IBM walnut board) and tried to build the latest released u-boot 2011.06 using ELDK4.2. Using the fresh source code extracted from u-boot-2011.06.tar.bz2, I did "make walnut_config" and then "make". But I get the following error.
ppc_4xx-ld:u-boot.lds:1: parse error make: *** [u-boot] Error 1
All of the code compiles. I think it's a linker error but I have no idea how to resolve the problem. Any help would be appreciated.
$ wget -c ftp://ftp.denx.de/pub/u-boot/u-boot-2011.06.tar.bz2 $ tar xf u-boot-2011.06.tar.bz2 $ cd u-boot-2011.06/ $ export CROSS_COMPILE=ppc_4xx- $ ./MAKEALL walnut Configuring for walnut board... text data bss dec hex filename 219550 19468 42544 281562 44bda ./u-boot
--------------------- SUMMARY ---------------------------- Boards compiled: 1
There is no such problem with walnut board in the v2011.06 release. Please double-check our source.
HTH, Anatolij
U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot

Sorry to keep relying to my self. It seems that the tool that generates u-boot.lds does not like // in the header file and putting it in the u-boot.lds file.
I started using /* */ instead and it compiles OK now.
Thanks.
Brian
On 9/26/2011 10:54 AM, Brian S. Park wrote:
I found my problem.
My board, though based on walnut board, does not have real time clock. So, I have to disable RTC support in u-boot. However, as soon as I comment out
#define CONFIG_RTC_DS174x 1 /* use DS1743 RTC in Walnut */
in walnut.h, line 68, I get build error.
[root@new-linuxdev u-boot-2011.06]# ./MAKEALL walnut Configuring for walnut board... ppc_4xx-ld:u-boot.lds:1: ignoring invalid character `#' in expression ppc_4xx-ld:u-boot.lds:1: parse error make: *** [u-boot] Error 1 ppc_4xx-size: './u-boot': No such file
--------------------- SUMMARY ---------------------------- Boards compiled: 1 Boards with warnings or errors: 1 ( walnut )
[root@new-linuxdev u-boot-2011.06]#
I can figure my way out if it's a code problem. This, however, seems like a configuration issue and I'm still a newbie when it comes to u-boot configuration issue. It seems to have changed a lot since last time I looked at u-boot a few years ago.
I'd appreciate some guidance.
Thank you in advance for any help and thank you all for putting such wonderful software in public domain.
Brian
On 9/26/2011 9:20 AM, Brian S. Park wrote:
Thanks for the reply. I was in the process updating ELDK from 4.1 to 4.2 and must have had something screwed up. I tried again Today and it compiles without error.
Thanks for looking into this and helping a newbie.
Brian
On 9/24/2011 3:05 AM, Anatolij Gustschin wrote:
Hi,
On Fri, 23 Sep 2011 18:11:28 -0700 "Brian S. Park"brian.park@corelis.com wrote:
Hi, I'm currently working on updating the firmware on our custom board (based on IBM walnut board) and tried to build the latest released u-boot 2011.06 using ELDK4.2. Using the fresh source code extracted from u-boot-2011.06.tar.bz2, I did "make walnut_config" and then "make". But I get the following error.
ppc_4xx-ld:u-boot.lds:1: parse error make: *** [u-boot] Error 1
All of the code compiles. I think it's a linker error but I have no idea how to resolve the problem. Any help would be appreciated.
$ wget -c ftp://ftp.denx.de/pub/u-boot/u-boot-2011.06.tar.bz2 $ tar xf u-boot-2011.06.tar.bz2 $ cd u-boot-2011.06/ $ export CROSS_COMPILE=ppc_4xx- $ ./MAKEALL walnut Configuring for walnut board... text data bss dec hex filename 219550 19468 42544 281562 44bda ./u-boot
--------------------- SUMMARY ---------------------------- Boards compiled: 1
There is no such problem with walnut board in the v2011.06 release. Please double-check our source.
HTH, Anatolij
U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot

Dear "Brian S. Park",
In message 4E80BF3D.8050801@corelis.com you wrote:
It seems that the tool that generates u-boot.lds does not like // in the header file and putting it in the u-boot.lds file.
The "tool that generates u-boot.lds" is the standard C preprocessor.
Best regards,
Wolfgang Denk

Thank you for the information. I'm just re-learning my way around u-boot. I appreciate your comments and pointers. Last time I used u-boot, it did not use the current method for configuration and I was able to us // to comment stuff out in the configuration header file.
Thank you and you guys rock!
Brian
On 9/26/2011 11:44 AM, Wolfgang Denk wrote:
Dear "Brian S. Park",
In message4E80BF3D.8050801@corelis.com you wrote:
It seems that the tool that generates u-boot.lds does not like // in the header file and putting it in the u-boot.lds file.
The "tool that generates u-boot.lds" is the standard C preprocessor.
Best regards,
Wolfgang Denk

Dear "Brian S. Park",
In message 4E80BC71.4000802@corelis.com you wrote:
I found my problem.
My board, though based on walnut board, does not have real time clock. So, I have to disable RTC support in u-boot. However, as soon as I comment out
#define CONFIG_RTC_DS174x 1 /* use DS1743 RTC in Walnut */
in walnut.h, line 68, I get build error.
[root@new-linuxdev u-boot-2011.06]# ./MAKEALL walnut Configuring for walnut board... ppc_4xx-ld:u-boot.lds:1: ignoring invalid character `#' in expression ppc_4xx-ld:u-boot.lds:1: parse error make: *** [u-boot] Error 1 ppc_4xx-size: './u-boot': No such file
Well, you fail to tell us how exactly you "comment out" this line, but apparently exactly this is your problem. If you just remove this line, like this:
index d10f748..e5a17a6 100644 --- a/include/configs/walnut.h +++ b/include/configs/walnut.h @@ -65,7 +65,6 @@ #define CONFIG_PHY_ADDR 1 /* PHY address */ #define CONFIG_HAS_ETH0 1
-#define CONFIG_RTC_DS174x 1 /* use DS1743 RTC in Walnut */
/* * Commands additional to the ones defined in amcc-common.h
you would get another type of build errors:
-> ./MAKEALL walnut Configuring for walnut board... common/libcommon.o: In function `do_date': /home/wd/git/u-boot/work/common/cmd_date.c:60: undefined reference to `rtc_reset' /home/wd/git/u-boot/work/common/cmd_date.c:63: undefined reference to `rtc_get' /home/wd/git/u-boot/work/common/cmd_date.c:72: undefined reference to `rtc_set' /home/wd/git/u-boot/work/common/cmd_date.c:81: undefined reference to `rtc_get' net/libnet.o: In function `SntpHandler': /home/wd/git/u-boot/work/net/sntp.c:70: undefined reference to `rtc_set' make: *** [u-boot] Error 1
...which are pretty much self-explanatory.
By also disabling the "date" and "sntp" commands you would get:
-> ./MAKEALL walnut Configuring for walnut board... text data bss dec hex filename 218714 17552 42532 278798 4410e ./u-boot
--------------------- SUMMARY ---------------------------- Boards compiled: 1 ----------------------------------------------------------
I can figure my way out if it's a code problem. This, however, seems like a configuration issue and I'm still a newbie when it comes to u-boot configuration issue. It seems to have changed a lot since last time I looked at u-boot a few years ago.
The problem must be with your own changes to the config file, especially with your way to "comment out" the #define.
Best regards,
Wolfgang Denk
participants (3)
-
Anatolij Gustschin
-
Brian S. Park
-
Wolfgang Denk