Difference between revisions of "Overo emulation in qemu"

From Gumstix User Wiki
Jump to: navigation, search
m (Undo revision 5707, '$' indicates commands which can be performed with regular privileges, '#' requires elevated privileges)
(update to include general purpose qemu image generating script)
Line 37: Line 37:
 
::<code>$ export PATH=$OVEROTOP/local/bin:$PATH</code>
 
::<code>$ export PATH=$OVEROTOP/local/bin:$PATH</code>
  
* use [[Overo_qemu_script|Ash's supplied script]] to generate a qemu image:
+
* there are numerous ways to generate the qemu image file:
 
::<code># export OEDONE=$OETMP/deploy/glibc/images/overo</code>
 
::<code># export OEDONE=$OETMP/deploy/glibc/images/overo</code>
 +
** Ash Charles [[Overo_qemu_script|wrote a script]] specifically for generating Overo qemu images:
 
::<code># 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</code>
 
::<code># 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</code>
 +
** or using a more [https://github.com/twoerner/qemu-image-builder general-purpose script] for generating qemu images which includes support for Overo:
 +
::<code># 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:
 
* 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</code>
 
::<code># qemu-system-arm -M overo -m 256 -sd $OVEROTOP/overo.img -clock unix -serial stdio -net user -device usb-kbd -device usb-mouse</code>

Revision as of 10:06, 22 November 2011

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