Saturday, March 15, 2014

Porting XEN (3.X) on zedboard

Recently i started working in a new project: porting of an old version of XEN (3.x) with a 2.8.29 linux kernel on the ZedBoard. There are two problems: first only new kernels are able to run in the board (3.4 or newer) and they are provided from Xilinx with modifications. The second problem is that the newest kernels have support for newer XEN version, that requires ARM virtualization. No matter we choose we have to port XEN. This means we have to rewrite some basic support for the architecture. The TEGRA port can be really helpful in this case.

Someone can port the XEN on zedboard with two ways:

1. Using a Samsung PV port for the Tegra board: this requires the porting of the PV kernel in terms of network/terminal drivers. We need to backport the latest Xilinx drivers from 3.8 kernel to 2.8.29. On the good side, we don't need to xenize the linux kernel and it saves a lot of time in terms of debugging XEN.

2. The second choice was to use the latest Xilinx kernel with the old XEN. This approach one problem: the kernel supports XEN but only the latest version. Thus, we have to backport the XEN support for the XEN 3.x version. On the good side, we don't need to spend time for backporting the drivers.

Anyway, I choosed the first option and things seems to go well, but slow. I 'm able to use the terminal, but having issues with the network driver. I also having some issues with the second core, but at least it is a small step to the goal of running. When the project finishes we are going to release the code.