bao-hypervisor
bao-hypervisor copied to clipboard
feat(riscv/iommu): update support for RISC-V IOMMU Device Directory Table
This PR introduces multiple updates to RISC-V IOMMU support regarding the Device Directory Table.
Changes:
- Add support for IOMMU implementations without MSI translation, where each DC is 32-bytes wide;
- Add support for multi-level device directory tables;
- Add mechanism for dynamic selection of IOMMU mode based on the IDs of the devices embedded in the platform.
Validation
- Tested on CVA6-based SoC w/IOMMU and x4 DMA devices with different ID widths
- Linux v6.3
- OpenSBI v1.0
Thanks for this @malejo97 ! To fix the failing checks, can you please apply the formatter (just run make format
), and shorten the commit messages?
Thanks for this @malejo97 ! To fix the failing checks, can you please apply the formatter (just run
make format
), and shorten the commit messages?
Done. I've merged all commits into a single one with the checks fixed