On 17/11/17 18:52, Jean-Philippe Brucker wrote: > To describe the virtual topology in relation to a virtio-iommu device, > ACPI-based systems use a "paravirtualized IOMMU" IORT node. Add support > for it. > > This is a RFC because the IORT specification doesn't describe the > paravirtualized node at the moment, it is only provided as an example in > the virtio-iommu spec. What we need to do first is confirm that x86 > kernels are able to use the IORT driver with the virtio-iommu. There isn't > anything specific to arm64 in the driver but there might be other blockers > we're not aware of (I know for example that x86 also requires custom DMA > ops rather than iommu-dma ones, but it's unrelated) so this needs to be > tested on the x86 prototype. I tested IORT with an x86 guest, putting a virtio-iommu on the PCI bus and it worked fine :) x86 still requires additional code [1] for using the IOMMU DMA ops, and I'm not comfortable enough with x86 to write the patch, but for instantiating virtio-iommus and for enumerating endpoints/buses connected to them, IORT should suffice. Thanks, Jean [1] http://www.linux-arm.org/git?p=linux-jpb.git;a=patch;h=e910e224b58712151dda06df595a53ff07edef63;hp=e7f9475480c24c5f973711984b30cf6746ff3ec8