Single Android- ICS
The below tutorial outlines how to run single instance of virtualized Android on TI OMAP4 dual core Cortex-A9 panda board, using the pre-built binaries as well as the sources.
- The following demo is for RevC release of panda boards, having OMAP 4430 processors.
- We will run single instance of virtualized Android kernel over the Codezero hypervisor.
- Android will boot using the filesystem present on the SD card.
- Android kernel as well as the filesystem are based on
android_4.0.3-r1/ICSAOSP release by Google.
- RevC panda board.
- 4GB SDHC memory card.
- HDMI display.
- USB mouse/keyboard, preferably a wireless USB dongle over which both keyboard and mouse can work together.
- Serial to USB converter.
- Mini-USB to USB converter.
Downloading the pre-built binaries
Download binaries from here. It contains the following files
Image– ELF file containing Codezero, and Android kernels and
system.img– Android filesystem’s system binary image
userdata.img– Android filesystem’s userdata binary image
ramdisk.img– Android filesystem’s system ramdisk image
Setting up the demo
Install AOSP tools and configure fastboot device access by following the Installing AOSP host tools and Configuring USB Access sections of the Initializing the Host Environment page.
Format the SD card using
$ sudo ./tools/panda-formatsd.sh /dev/sdX; here `sdX` is the block device corresponding to the SD card.
This will create a FAT partition named
boot and an EXT3 partition named
rootfs on the SD card.
Eject and re-plug the card on the host.
u-boot.bin in the
boot partition of the SD card.
Eject the card and plug it into the panda board.
Connect the board to the host machine via Mini-USB to USB converter.
Plug the HDMI display and USB keyboard/mouse to the panda board.
Connect the serial port of panda board to the host using serial to usb converter. And attach minicom to the serial converter device to get the panda boot logs and serial console
$ minicom -D /dev/ttyUSBn; here /dev/ttyUSBn is the usb to serial converter device.
Configure Minicom’s serial port for following settings
Baud Rate: 115200n8 Hardware flow control: OFF Software flow control: OFF
Power on the board with Switch S2 key pressed, making the board go into the fastboot mode.
Flash the kernel and the filesystem on the SD card and boot
$ fastboot oem format $ fastboot flash xloader MLO $ fastboot flash bootloader u-boot.bin $ fastboot erase cache $ fastboot flash system system.img $ fastboot flash userdata userdata.img $ mkbootimg --kernel Image --ramdisk ramdisk.img -o paravirt-boot.img --base 0x80000000 \ --kernel_addr 0xbe800000 $ fastboot flash boot paravirt-boot.img $ fastboot reboot
Building from sources
Check the Building from Source for Panda page for instructions on building Codezero and Android kernels from the sources.