Xen ARM with Virtualization Extensions/OdroidXU

From Xen
Jump to navigationJump to search
Icon todo.png To Do:

Add page


Preparing the board

The bootloader provided with the OdroidXU does not let Xen boot in hypervisor mode. In the Odroid forums for the XU, one is likely to see many U-Boot blobs (bl1/bl2/tzsw/u-boot) which could possibly be used to let Xen boot in hypervisor mode. To avoid multiple sources, currently a single source is provided which can be accessed from [1]

The sd_fusing.sh script found therein can be used to fuse the SD card or eMMC card with the required BL1/BL2/TZSW and U-Boot.

 sd_fusing.sh /dev/mmcblk0

This will let XEN boot in hypervisor mode as well as set CNTFRQ through the trustzone. This is required for domUs to get the correct timer frequency. (dom0's optionally can pick it up from the device tree)

Building XEN

Follow Build Xen on ARM to build XEN. For more verbose debug messages from XEN, it is worthwhile to compile XEN as below:

 make dist-xen XEN_TARGET_ARCH=arm32 debug=y CONFIG_EARLY_PRINTK=exynos5250

For the moment, xen doesn't build uImage for U-Boot. You can create the image with:

 mkimage -A arm -T kernel -a 0x80200000 -e 0x80200000 -C none -d "$xen_src/xen/xen" xen4.5-uImage

where $xen_src is the root directory of your xen git.

Resources

  • Information about the OdroidXU board: [2]
  • Odroid XU forum: [3]