[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Running u-boot on qemu's emulation of arm integratorcp9
Re: [Qemu-devel] Running u-boot on qemu's emulation of arm integratorcp926?
Fri, 27 Oct 2006 15:30:58 +0000
On 27/10/06, Michael Opdenacker <address@hidden> wrote:
* In my embeded Linux training sessions, to practice with U-boot
without having to carry real boards, with their cables and power
supplies (which would definitely make customs officers frown and
think I'm importing commercial or even sensitive devices).
I've travelled with a full backpack of rare PC intestines and the
customs didn't mind but I guess it depends.
* For students and community members, to get familiar with U-boot
without having to get real hardware.
* To create qemu/U-boot demos, showing the capabilities of both tools.
Has anyone already experimented with this? I haven't found any useful
detail on the net yet.
Well, I've been running U-boot in qemu-system-arm but it was on the
old OMAP 310 board emulator, which is currently stalled. Never tried
the integrator version. All I can say is it worked like on the real
As I have no U-boot development knowledge yet, I started in a naive,
* Got U-boot 1.1.5 sources
* Configured U-boot for the arm integratorcp926 board:
make make cp926ejs_config
* Compiled U-boot with a gcc 3.4.x cross compiling toolchain for arm:
* Ran qemu:
qemu-system-arm -kernel ~/tmp/tmp/u-boot-1.1.5/u-boot.bin -nographic
(qemu) qemu: fatal: Board reset
R00=10000000 R01=00000008 R02=00000013 R03=00000000
R04=00000000 R05=00000000 R06=00000000 R07=00000000
R08=00000000 R09=00000000 R10=00000000 R11=00000000
R12=00010064 R13=00000000 R14=000100f4 R15=000103a0
Executing "info symbol 0x000103a0" or even "edit *0x000103a0" should
tell you where in the source u-boot tried to reboot, and maybe why.
You would run gdb this way:
arm-yourtoolchain-gnu-linux-gdb u-boot.elf # or similar
You could even do this and connect to qemu over the socket and then do:
(gdb) break *0x000103a0
and you would maybe get a backtrace.
PSR=800001d3 N--- A svc32 bff14784
s00=00000000(0.000000) s01=00000000(0.000000) d00=0000000000000000(0.000000)
s02=00000000(0.000000) s03=00000000(0.000000) d01=0000000000000000(0.000000)
s04=00000000(0.000000) s05=00000000(0.000000) d02=0000000000000000(0.000000)
s06=00000000(0.000000) s07=00000000(0.000000) d03=0000000000000000(0.000000)
s08=00000000(0.000000) s09=00000000(0.000000) d04=0000000000000000(0.000000)
s10=00000000(0.000000) s11=00000000(0.000000) d05=0000000000000000(0.000000)
s12=00000000(0.000000) s13=00000000(0.000000) d06=0000000000000000(0.000000)
s14=00000000(0.000000) s15=00000000(0.000000) d07=0000000000000000(0.000000)
s16=00000000(0.000000) s17=00000000(0.000000) d08=0000000000000000(0.000000)
s18=00000000(0.000000) s19=00000000(0.000000) d09=0000000000000000(0.000000)
s20=00000000(0.000000) s21=00000000(0.000000) d10=0000000000000000(0.000000)
s22=00000000(0.000000) s23=00000000(0.000000) d11=0000000000000000(0.000000)
s24=00000000(0.000000) s25=00000000(0.000000) d12=0000000000000000(0.000000)
s26=00000000(0.000000) s27=00000000(0.000000) d13=0000000000000000(0.000000)
s28=00000000(0.000000) s29=00000000(0.000000) d14=0000000000000000(0.000000)
s30=00000000(0.000000) s31=00000000(0.000000) d15=0000000000000000(0.000000)
Now, I know that as usual, I need time and patience to get more
familiar with the emulated board and with U-boot requirements.
However, if any of you has suggestions for doing that or experience to
share, your are most welcome!
I will keep you posted in the next days and weeks.
Michael Opdenacker, Free Electrons
Free Embedded Linux Training Materials
(More than 1000 pages!)
Qemu-devel mailing list
Hope this helps,