[U-Boot] Building U-Boot 1.3.4 SC520 based custom board

Graeme Russ graeme.russ at gmail.com
Mon Aug 25 01:38:57 CEST 2008


Hello everyone,

This is my first post here, so appoligies if I seem a bit naive about
what I'm asking...

I'm looking to port Linux to a SC250 based custom board and the first
thing I need to do is get a bootloader which will support booting
linux operational.

So far, U-Boot looks to be the closest match to my needs. I had a look
at RedBoot, but found the build documentation to be very lacking.

My build environment is as follows:
 - Ubuntu 8.04 (i86_32)
 - gcc (GCC) 4.2.3 (Ubuntu 4.2.3-2ubuntu7)
 - GNU Make 3.81
 - Eclipse Version: 3.2.2

It does not look to me that there is an EDLK supporting the i86
architecture, so I am trying to use the native build environment in
Ubuntu.

I downloaded U-Boot 1.3.4, copied u-boot-1.3.4/board/sc520_cdp/ and
u-boot-1.3.4/include/configs/sc520_cdp.h and edited Makefile and
MAKEALL

After performing  a make config and make all, quite a few errors were
reported by the compiler. A number of these seem to be a result of gcc
4.2.3 being very pedantic, while others seem to stem from the i86 arch
in U-Boot still being somewhat immature (which I am not taking
exception to at all as I realise i86 is not as common as the others in
the embedded world).

I had a look at the latest git snapshot (last change 22nd August 2008)
but it didn't seem to solve any of the build problems.

A few problems I have solved with the help of trawling through the
mailing lists. for example:

[U-Boot-Users]
  [PATCH] 82550_eeprom: Fix error: lvalue required as increment operand
    http://lists.denx.de/pipermail/u-boot/2008-May/034312.html
    http://lists.denx.de/pipermail/u-boot/2008-May/034313.html

   ** Is the suggestion posted in
http://lists.denx.de/pipermail/u-boot/2008-May/034392.html a better
solution? **

  [PATCH] fix for DECLARE_GLOBAL_DATA_PTR on i386
    http://lists.denx.de/pipermail/u-boot/2006-July/015766.html

  ** Is there an issue with this fix, being that it is so old? There
does not appear to be further discussion on this, but a later fix
(http://lists.denx.de/pipermail/u-boot/2008-May/034325.html) seemed to
raise some concerns **

[Local Changes]
  Removed __const__ from declarations in
u-boot-1.3.4/include/asm-i386/byteorder.h

I am more than willing to have a go at fixing the remaining issues,
but I would like to be sure that I am not replicating anyone elses
work, treading on anyones toes, or creating code that is incompatible
with the mainline tree.

A few quick questions:
 - Am I using a completely unsupported build environment ?
 - Should I be looking at using another version / snapshot (v2 does
not seem to have i86 support yet)?
 - Is there a custodian for the i86 acrchitecture that I should be talking to?
 - Has anyone collated a list of i86 build issues and fixes?
 - If nobody else has, should I have a go at getting 1.3.4 building in
my build environemt and feeding the changes back here?
 - If nobody else is actively maintaining i86, should I perhaps look
at getting a custodian repository?

Regards,

Graeme


More information about the U-Boot mailing list