Linux is running on qemu-omap3
Update: 2010-02-20
I am too busy to do omap3 emulation these days. The guy at maemo has made great improvement in qemu omap3 emulation. Go to this page to get the latest qemu-omap3. But the latest version of qemu-omap3 does NOT have the script to create the nandflash. So use the script from the original one. Thanks.
Hi everyone, a good news for you. Linux in running successfully on qemu-omap3. Following is the screenshot.
However, MMC/USB/audio/LCD display/keyboard emulation are not ok . I will work on it.
In the following I will give you some informations of how to run qemu-omap3.
1. checkout qemu-omap3 from svn. Tag v0.01 is working.
svn checkout http://qemu-omap3.googlecode.com/svn/tags/v0.01 qemu-omap3
Or you can download it from http://qemu-omap3.googlecode.com/files/qemu-omap3-v0.01.tar.bz2 .
2. make qemu-omap3
cd qemu-omap3 ./configure --target-list=arm-softmmu make
qemu-system-arm will be generated in directory qemu-omap3/arm-softmmu.
3. download the x-loader/u-boot/kernel image.
cd qemu-omap3/arm-softmmu wget http://qemu-omap3.googlecode.com/files/image-v0.01.tar.bz2 tar jxvf image-v0.01.tar.bz2
4. download the rootfs from beagle board site.
wget http://beagleboard.googlecode.com/files/rd-ext2-8M.bin
5. make nand flash image
cd qemu-omap3/arm-softmmu cp ../bb_nandflash.sh . cp ../bb_nandflash_ecc . ./bb_nandflash.sh x-load.bin.ift beagle-nand.bin x-loader ./bb_nandflash.sh u-boot.bin beagle-nand.bin u-boot ./bb_nandflash.sh uImage beagle-nand.bin kernel ./bb_nandflash.sh rd-ext2-8M.bin beagle-nand.bin rootfs ./bb_nandflash_ecc beagle-nand.bin 0x0 0xe80000
6. run qemu-omap3
./qemu-system-arm -M beagle -mtdblock beagle-nand.bin
7. During the graphical emulation, you can use the following keys:
Ctrl-Alt-f Toggle full screen Ctrl-Alt-n Switch to virtual console 'n'. Standard console mappings are: 1 Target system display 2 Monitor 3 Serial port Ctrl-Alt Toggle mouse and keyboard grab.
Using Ctrl-Alt-3 to switch to beagle board serial port. You can see x-loader and u-boot booting message. When u-boot command line appears, type the following commands.
OMAP3 beagleboard.org # nand read 0x80000000 0x280000 0x400000 NAND read: device 0 offset 0x280000, size 0x400000 4194304 bytes read: OK OMAP3 beagleboard.org # nand read 0x81600000 0x680000 0x800000 NAND read: device 0 offset 0x680000, size 0x800000 8388608 bytes read: OK OMAP3 beagleboard.org # setenv bootargs 'console=ttyS2,115200n8 ramdisk_size=8192 root=/dev/ram0 rw rootfstype=ext2 initrd=0x81600000,8M nohz=0ff' OMAP3 beagleboard.org # bootm 0x80000000
Linux will boot with some debug information of qemu-omap3. Enjoy it.
2008/12/15(YYYY/MM/DD) Category:QEMU,Linux Tag: QEMU, OMAP3, beagle-board