uImage built with pre-built linaro toolchain failed to start

Michael Hope michael.hope at linaro.org
Wed Jan 11 01:16:04 UTC 2012


On Tue, Jan 10, 2012 at 11:58 PM, Lv Terry-R65388 <r65388 at freescale.com> wrote:
> Hi,
>
>        I use pre-built version of linaro toolchain (got from http://people.linaro.org/~michaelh/incoming/binaries/) to build a uImage.
>        The build succeeded, but the uImage couldn't start.
>        The console hangs at:
>
> Using FEC0 device
> TFTP from server 10.193.100.158; our IP address is 10.193.102.233
> Filename 'uImage_linaro'.
> Load address: 0x70800000
> Loading: #################################################################
>         #################################################################
>         #################################################################
>         #######################
> done
> Bytes transferred = 3193292 (30b9cc hex)
> ## Booting kernel from Legacy Image at 70800000 ...
>   Image Name:   Linux-2.6.38-01026-gc9c8ead
>   Image Type:   ARM Linux Kernel Image (uncompressed)
>   Data Size:    3193228 Bytes =  3 MB
>   Load Address: 10008000
>   Entry Point:  10008000
>   Verifying Checksum ... OK
>   Loading Kernel Image ... OK
> OK
>
> Starting kernel ...
>
> Uncompressing Linux... done, booting the kernel.
>
>        Does anyone meet this before?
>
>        How can I fix it?
>
>        Thanks~~

Hi Terry.  Andy's covered the most likely causes.  One thing to watch
for is that Linaro GCC 2011.11 added unaligned access support for
armv6k and later.  This is fine for userspace but the kernel runs with
the hardware unaligned access fault turned and this might cause the
crash.

Try adding -mno-unaligned-access to your CFLAGS and see if that helps.  See:
 http://lists.linaro.org/pipermail/linaro-android/2011-December/000030.html

and:
 http://comments.gmane.org/gmane.linux.ports.arm.kernel/138900

for more.

-- Michael



More information about the linaro-toolchain mailing list