pviommu: Add pviommu_iova_to_phys
Add iova_to_phys IOMMU ops. As the hypervisor has a collapsed mapping
this has to be maintianed in the EL1 driver.
For this we use rbtree holding interval of mappings which is per-domain.
The tree can hold overlapping intervals which valid for page tables.
It can handle different sizes to save memory instead of saving an entry
for each page.
However, this can be further improved by merging intervals on
insertion.
Signed-off-by: Mostafa Saleh <smostafa@google.com>
1 file changed