Overo emulation in qemu

From Gumstix User Wiki
Revision as of 10:06, 22 November 2011 by Trevor Woerner (Talk | contribs) (update to include general purpose qemu image generating script)

Jump to: navigation, search

Ash Charles has been working with Riku from the Qemu-linaro team to get support for the Overo hardware working in Qemu!

Pre-Compiled Images

Here are Ash's steps for working with pre-compiled images:

  • binary executable for qemu available here (for x86_64):
http://dl.dropbox.com/u/211887/qemu-system-arm
MD5:c375b7d0338e3e8cd7009e69f3aaae74
  • overo angstrom image with a kernel, MLO, u-boot packed:
http://dl.dropbox.com/u/211887/overo.img.gz
MD5:3545dbd2e7ffac3d352a7bc9e92373bf
  • download, gunzip the overo.img.gz and run with:
# ./qemu-system-arm -M overo -m 256 -sd ./overo.img -clock unix -serial stdio
(mouse & keyboard don't work currently but the console session is usable)

From Sources

  • build your overo image using bitbake/OE as usual:
$ cd $OVEROTOP
$ bitbake omap3-console-image
  • build the MLO program:
$ bitbake x-load
  • get the sources for and build qemu with overo support:
$ cd $OVEROTOP
$ git clone git://git.linaro.org/qemu/qemu-linaro.git
$ cd qemu
$ ./configure --prefix=$OVEROTOP/local --target-list=arm-softmmu
$ make install
$ export PATH=$OVEROTOP/local/bin:$PATH
  • there are numerous ways to generate the qemu image file:
# export OEDONE=$OETMP/deploy/glibc/images/overo
    • Ash Charles wrote a script specifically for generating Overo qemu images:
# assemble-image.sh $OVEROTOP/overo.img $OEDONE/MLO-overo $OEDONE/u-boot-overo.bin $OEDONE/uImage-overo.bin $OEDONE/omap3-console-image-overo.tar.bz2
# mkqemuimg.sh --partpercents 5 --format ",mkfs.ext3" --bootarm "$OEDONE/MLO-overo,$OEDONE/u-boot-overo.bin,$OEDONE/uImage-overo.bin" 1073741824 $OVEROTOP/overo.img ",$OEDONE/omap3-console-image-overo.tar.bz2"
  • then run the image under qemu:
<code># qemu-system-arm -M overo -m 256 -sd $OVEROTOP/overo.img -clock unix -serial stdio -net user -device usb-kbd -device usb-mouse