Forum Discussion
Agilex 5E HPS and Linux
Hi FPGABear
No, that is not what it means — a single DDR is fine. "Static partitioning" here refers to address-space partitioning, not physically separate memory devices. Bao carves the one physical DRAM into non-overlapping regions, one per VM, and each guest only ever sees its own region. Isolation is enforced by the stage-2 MMU for CPU accesses, and by the SMMU for DMA-capable masters assigned to a VM. So your two Linux instances run out of the same DDR at different physical base addresses.
What "no device sharing / para-virtualization" refers to is the peripheral level. Because Bao has no privileged or backend domain, every peripheral is assigned exclusively to exactly one VM in passthrough — there is no netback/netfront-style split driver to multiplex a single controller between two guests. For your Ethernet question specifically:
- Two EMACs, one per VM: clean passthrough, no software in the datapath. This is the recommended option under Bao.
- If sharing one physical port through the virtualization layer is a hard requirement, traditional Xen with a bridge in Dom0 is the better option.
On GitHub: we have recently upstreamed Agilex 5 platform support to the Bao Hypervisor, and there is an ongoing effort to add examples for Linux + FreeRTOS configurations on Agilex 5. The distinction I was drawing is that current upstream support is not the same as an Altera-tested release — 26.3 is where you will get the validated example design and documentation.