[U-Boot] Building for ARMv5 - uint64_t alignment issues

Peter Howard pjh at northern-ridge.com.au
Fri Sep 21 03:45:08 UTC 2018


Dear all,

Most of my u-boot work is on one of two ARMv5 platforms.  When u-boot
changed to requiring a later gcc, I switched from my old-faithful
arago-2011.09 compiler to a newer Linaro release:

gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi

And for my work on the da850 this seems to be fine.  However I've been
doing some work creating a nand driver for an older chip (which I
really wish I didn't have to care about, and is never going to see the
light of upstream).  Short form: inexplicable errors, which I
eventually chased down to issues around uint64_t.  Some googling turned
up this bug (and patch): 

http://lists.openembedded.org/pipermail/openembedded-core/2017-November/144043.html

So I upgraded to the next Linaro release:

gcc-linaro-7.3.1-2018.05-x86_64_arm-linux-gnueabi

This fixed the problem in what I'll call "general" uint64_t usage, but
still left the same problem in structs.  Specifically size in struct
mdt_info.  Which I fixed by kludging 
-mstructure-size-boundary=64 into the build (which AFAIK I shouldn't
have to do).

I would hope I'm not the only person who can trigger this . . . which
means I'm hoping that no-one else has hit this (as far as I can tell
from the u-boot list) is that anyone building for ARMv5 is using a
different toolchain.  So . . . can those of you out there building for
any of the v5 boards tell me what toolchain you're currently using? 
And if you hit/fixed/worked around strd issues?

Thanks



-- 
Peter Howard <pjh at northern-ridge.com.au>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: This is a digitally signed message part
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20180921/870d7bba/attachment.sig>


More information about the U-Boot mailing list