Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 11 Oct 2008 13:41:22 +0100
From:      "Bruce M. Simpson" <bms@incunabulum.net>
To:        Stanislav Sedov <stas@FreeBSD.org>
Cc:        freebsd-embedded@freebsd.org
Subject:   Re: Problems with NSLU2 and U-Boot
Message-ID:  <48F09EF2.4060709@incunabulum.net>
In-Reply-To: <20081009025641.e6d015bb.stas@FreeBSD.org>
References:  <48EABE17.3010104@incunabulum.net> <20081009025641.e6d015bb.stas@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Stanislav Sedov wrote:
> Are you sure that u-boot loads your kernel to correct address. Have
> you tryed loading a plain ELF image (or binary) and jumping to entry
> point?
>   

I just tried booting kernel.bin on the NSLU2, as a raw memory image, via 
tftp, and got exactly the same result.

I repeated it with U-Boot. It appears as though it relocates the 
embedded ELF image to the correct address during load and execution, but 
I can't be sure because I don't have any OCD capability just now.

Again, the hang happens right after init_turnstile0() appears to have 
been called:
%%%
DHCP client bound to address 192.168.123.151
Using NPE0 device
TFTP from server 192.168.123.17; our IP address is 192.168.123.151
Filename 'kernel.nslu2.ub'.
Load address: 0x400000
Loading: #################################################################
         #################################################################
         #################################################################
         ###########
done
Bytes transferred = 3013309 (2dfabd hex)
=> bootm
## Booting kernel from Legacy Image at 00400000 ...
   Image Name:   kernel
   Image Type:   ARM Unknown OS Kernel Image (uncompressed)
   Data Size:    3013245 Bytes =  2.9 MB
   Load Address: 00200000
   Entry Point:  00200100
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...

GDB: no debug ports present
KDB: debugger backends: ddb
KDB: current backend: ddb
Copyright (c) 1992-2008 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 8.0-CURRENT #24: Sat Oct 11 13:13:24 BST 2008
    
root@anglepoise.lon.incunabulum.net:/home/obj/nanobsd.testusb/arm/home/bms/svn/head/sys/MY_NSLU
subsystem 900000
   0xc028127c(0)... done.
subsystem 1000000
   0xc0375120(0)... done.
   0xc0389700(0)... done.
subsystem 1800000
   0xc027ecd8(0)... done.
   0xc027f0d8(0xc041ca90)... done.
   0xc027f0d8(0xc041cc44)... done.
   0xc027f0d8(0xc0415c4c)... done.
   0xc027f0d8(0xc0416008)... done.
   0xc027f0d8(0xc041ce8c)... done.
   0xc027f0d8(0xc0416904)... done.
   0xc027f0d8(0xc041cfb8)... done.
   0xc027f0d8(0xc041d510)... done.
   0xc027f0d8(0xc041d96c)... done.
   0xc027f0d8(0xc04168c0)... done.
   0xc027f0d8(0xc041d6a0)... done.
   0xc027f0d8(0xc041d65c)... done.
   0xc027f0d8(0xc041d618)... done.
   0xc027f0d8(0xc041d5d4)... done.
   0xc027f0d8(0xc041d590)... done.
   0xc027f0d8(0xc041d9b0)... done.
   0xc027f0d8(0xc041687c)... done.
   0xc027f0d8(0xc041eb98)... done.
   0xc027f0d8(0xc0416dd4)... done.
   0xc027f0d8(0xc041ec24)... done.
   0xc027f0d8(0xc0416e18)... done.
   0xc027f0d8(0xc041f15c)... done.
   0xc027f0d8(0xc041f1a4)... done.
   0xc027f0d8(0xc041f118)... done.
   0xc027f0d8(0xc041f0d4)... done.
   0xc027f0d8(0xc041f728)... done.
   0xc027f0d8(0xc041f868)... done.
   0xc027f0d8(0xc041f8ac)... done.
   0xc027f0d8(0xc0416e5c)... done.
   0xc027f0d8(0xc04201ac)... done.
   0xc027f0d8(0xc04201f0)... done.
   0xc027f0d8(0xc0420234)... done.
   0xc027f0d8(0xc0420b2c)... done.
   0xc027f0d8(0xc0420c50)... done.
   0xc027f0d8(0xc0420ec8)... done.
   0xc027f0d8(0xc0421614)... done.
   0xc027f0d8(0xc0417018)... done.
   0xc027f0d8(0xc0421690)... done.
   0xc027f0d8(0xc04216d4)... done.
   0xc027f0d8(0xc0421964)... done.
   0xc027f0d8(0xc0421a68)... done.
   0xc027f0d8(0xc0421c48)... done.
   0xc027f0d8(0xc0421ea4)... done.
   0xc027f0d8(0xc04170ac)... done.
   0xc027f0d8(0xc04171c4)... done.
   0xc027f0d8(0xc04223e8)... done.
   0xc027f0d8(0xc04175d4)... done.
   0xc027f0d8(0xc0422590)... done.
   0xc027f0d8(0xc04176ec)... done.
   0xc027f0d8(0xc0410388)... done.
   0xc027f0d8(0xc04137c4)... done.
   0xc027f0d8(0xc04227e0)... done.
   0xc027f0d8(0xc0422844)... done.
   0xc027f0d8(0xc0422a58)... done.
   0xc027f0d8(0xc0422ae8)... done.
   0xc027f0d8(0xc0422b2c)... done.
   0xc027f0d8(0xc0422b70)... done.
   0xc027f0d8(0xc0422dc0)... done.
   0xc027f0d8(0xc0423298)... done.
   0xc027f0d8(0xc0423780)... done.
   0xc027f0d8(0xc0423c5c)... done.
   0xc027f0d8(0xc0423e58)... done.
   0xc027f0d8(0xc04240e4)... done.
   0xc027f0d8(0xc042437c)... done.
   0xc027f0d8(0xc042469c)... done.
   0xc027f0d8(0xc0424700)... done.
   0xc027f0d8(0xc0417cdc)... done.
   0xc027f0d8(0xc0424898)... done.
   0xc027f0d8(0xc0424854)... done.
   0xc027f0d8(0xc0424ed4)... done.
   0xc027f0d8(0xc04254a0)... done.
   0xc027f0d8(0xc0425aa4)... done.
   0xc027f0d8(0xc0425c38)... done.
   0xc027f0d8(0xc0425c9c)... done.
   0xc027f0d8(0xc0425d10)... done.
   0xc027f0d8(0xc0414728)... done.
   0xc027f0d8(0xc0425e1c)... done.
   0xc027f0d8(0xc0425dd8)... done.
   0xc027f0d8(0xc0414844)... done.
   0xc027f0d8(0xc04264dc)... done.
   0xc027f0d8(0xc04269e0)... done.
   0xc027f0d8(0xc0426c68)... done.
   0xc027f0d8(0xc0426c24)... done.
   0xc027f0d8(0xc0426be0)... done.
   0xc027f0d8(0xc0426e3c)... done.
   0xc027f0d8(0xc0426ea0)... done.
   0xc027f0d8(0xc0414888)... done.
   0xc027f0d8(0xc04101a4)... done.
   0xc027f0d8(0xc04103ec)... done.
   0xc027f0d8(0xc0427470)... done.
   0xc027f0d8(0xc0427848)... done.
   0xc027f0d8(0xc0427934)... done.
   0xc027f0d8(0xc0427a48)... done.
   0xc027f0d8(0xc0427a8c)... done.
   0xc027f0d8(0xc0427ad0)... done.
   0xc027f0d8(0xc042845c)... done.
   0xc027f0d8(0xc0428b50)... done.
   0xc027f0d8(0xc04102e4)... done.
   0xc027f0d8(0xc0429330)... done.
   0xc027f0d8(0xc04296f4)... done.
   0xc027f0d8(0xc042a174)... done.
   0xc027f0d8(0xc042a1b8)... done.
   0xc027f0d8(0xc042a1fc)... done.
   0xc027f0d8(0xc042a240)... done.
   0xc027f0d8(0xc042a284)... done.
   0xc027f0d8(0xc042a2c8)... done.
   0xc027f0d8(0xc042a30c)... done.
   0xc027f0d8(0xc042a350)... done.
   0xc027f0d8(0xc042a394)... done.
   0xc027f0d8(0xc042a3d8)... done.
   0xc027f0d8(0xc042a41c)... done.
   0xc027f0d8(0xc042a460)... done.
   0xc027f0d8(0xc042a4a4)... done.
   0xc027f0d8(0xc042a4e8)... done.
   0xc027f0d8(0xc042a52c)... done.
   0xc027f0d8(0xc042b1c0)... done.
   0xc027f0d8(0xc042b32c)... done.
   0xc027f0d8(0xc042b3c0)... done.
   0xc027f0d8(0xc042b800)... done.
   0xc027f0d8(0xc041c084)... done.
   0xc027f0d8(0xc04131dc)... done.
   0xc027f0d8(0xc04102a0)... done.
   0xc027f0d8(0xc042ca28)... done.
   0xc027f0d8(0xc041c338)... done.
   0xc027f0d8(0xc041c37c)... done.
   0xc027f0d8(0xc042d01c)... done.
   0xc027f0d8(0xc042d080)... done.
   0xc027f0d8(0xc042d1a0)... done.
   0xc027f0d8(0xc041c3c0)... done.
   0xc027f0d8(0xc041c634)... done.
   0xc027f0d8(0xc041c6bc)... done.
   0xc027f0d8(0xc041c8a4)... done.
   0xc027f0d8(0xc041c9bc)... done.
   0xc027f0d8(0xc041025c)... done.
   0xc029562c(0)... done.
   0xc026b04c(0)... done.
subsystem 1a00000
   0xc037aa30(0)... done.
subsystem 1ac0000
   0xc0281388(0)... done.
subsystem 1b00000
   0xc0266bdc(0)... done.
   0xc027cab4(0)... done.
   0xc02816e0(0xc042aa2c)... done.
   0xc02816e0(0xc0422adc)... done.
   0xc02816e0(0xc0421608)... done.
   0xc0293110(0xc0413964)... done.
   0xc02816e0(0xc0425f14)... done.
   0xc02816e0(0xc041745c)... done.
   0xc0293110(0xc0417468)... done.
   0xc0293110(0xc041bfe8)... done.
   0xc02816e0(0xc0417470)... done.
   0xc02816e0(0xc041c880)... done.
   0xc0293110(0xc0423e48)... done.
   0xc02816e0(0xc041c88c)... done.
   0xc02816e0(0xc0421d48)... done.
   0xc02816e0(0xc041f968)... done.
   0xc02816e0(0xc041eb74)... done.
   0xc02816e0(0xc0424458)... done.
   0xc02816e0(0xc0427284)... done.
   0xc02816e0(0xc0427398)... done.
   0xc02816e0(0xc04245e0)... done.
   0xc02816e0(0xc041eb80)... done.
   0xc02816e0(0xc04275ec)... done.
   0xc02816e0(0xc041c898)... done.
   0xc0293110(0xc04170a4)... done.
   0xc02816e0(0xc0427a3c)... done.
   0xc02816e0(0xc042ca04)... done.
   0xc02816e0(0xc0424a50)... done.
   0xc02816e0(0xc0427b94)... done.
   0xc02816e0(0xc0424a5c)... done.
   0xc02816e0(0xc042ccc8)... done.
   0xc02816e0(0xc04175c8)... done.
   0xc02816e0(0xc0420b0c)... done.
   0xc02816e0(0xc04284e0)... done.
   0xc02816e0(0xc04140b8)... done.
   0xc0282f2c(0)... done.
   0xc02816e0(0xc0425a90)... done.
   0xc02816e0(0xc0420d3c)... done.
   0xc02816e0(0xc041cc30)... done.
   0xc02816e0(0xc042a160)... done.
   0xc03897d0(0)... done.
   0xc02be458(0)...
%%%

It also looks as though the DDB symbol lookup isn't working. The dynamic 
symbol table is present in the ELF image. mkimage simply wraps the ELF 
image with a U-Boot header.

cheers
BMS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?48F09EF2.4060709>