Xen Zynq Distribution Support Forums

Full Version: DomU I/O and Communication
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

I'm very interested in knowing how to assign specific HW to each one of the running OS-s if I'm working with Xen hypervisor. Is it possible? Where do I need to specify this?

On the other hand, I also would like to know, how would the different OS-s running under Xen hypervisor communicate between them. I.e.: an application running over Linux (i.e.: Docker) and FreeRTOS.

Finally, it would be interesting for me too, to know how to debug the behavior of an OS running under Xen (i.e.: FreeRTOS) in the real MPSoC board.

Any answer would be helpful,

Hi Pello,

Not knowing the specifics behind which pieces of hardware you are considering, I would start by looking at the XZD manual in chapter 6, possibly section 6.4, and chapter 9. Communication between domains is typically done over a virtual network, xenbus/xenstore, libvchan, or a custom mechanism built on top of shared memory and/or event channels. See section 6.4 in our UM for an example using libvchan. http://dornerworks.com/wp-content/upload...Manual.pdf

You can also check out our blog for a virtual console http://dornerworks.com/blog/virtual-console-xen

For debugging, you can consider using gdb, xentrace, and/or xenalyze. Xilinx also provides some information regarding debugging at https://www.xilinx.com/html_docs/xilinx2...debug.html

Thanks for contributing to the XZD Forums. Don't forget to check us out at http://dornerworks.com/xen/xilinxxen for more information regarding XZD support.
Hello guys,

I have a question related to this topic as well.
Does DomU have the access to the FPGA part by default, for example using AXI to send some data in Zynq MPSoC board?
If not, can I configure it in real-time? Or must I configure it when I create the kernel of DomU?

Thank you, guys.
DomU does not have access to the PL by default.  To give DomU access to a PL device, the PL device and any supporting components must be passed through to the DomU.

If you need to share the device with other virtual machines then a paravirtual driver would be necessary.