On Sun, Feb 16, 2020 at 04:50:33AM -0500, Michael S. Tsirkin wrote: > On Fri, Feb 14, 2020 at 04:57:11PM +0000, Robin Murphy wrote: > > On 14/02/2020 4:04 pm, Jean-Philippe Brucker wrote: > > > With the built-in topology description in place, x86 platforms can now > > > use the virtio-iommu. > > > > > > Signed-off-by: Jean-Philippe Brucker <jean-philippe@xxxxxxxxxx> > > > --- > > > drivers/iommu/Kconfig | 3 ++- > > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > > > diff --git a/drivers/iommu/Kconfig b/drivers/iommu/Kconfig > > > index 068d4e0e3541..adcbda44d473 100644 > > > --- a/drivers/iommu/Kconfig > > > +++ b/drivers/iommu/Kconfig > > > @@ -508,8 +508,9 @@ config HYPERV_IOMMU > > > config VIRTIO_IOMMU > > > bool "Virtio IOMMU driver" > > > depends on VIRTIO=y > > > - depends on ARM64 > > > + depends on (ARM64 || X86) > > > select IOMMU_API > > > + select IOMMU_DMA > > > > Can that have an "if X86" for clarity? AIUI it's not necessary for > > virtio-iommu itself (and really shouldn't be), but is merely to satisfy the > > x86 arch code's expectation that IOMMU drivers bring their own DMA ops, > > right? > > > > Robin. > > In fact does not this work on any platform now? There is ongoing work to use the generic IOMMU_DMA ops on X86. AMD IOMMU has been converted recently [1] but VT-d still implements its own DMA ops (conversion patches are on the list [2]). On Arm the arch Kconfig selects IOMMU_DMA, and I assume we'll have the same on X86 once Tom's work is complete. Until then I can add a "if X86" here for clarity. Thanks, Jean [1] https://lore.kernel.org/linux-iommu/20190613223901.9523-1-murphyt7@xxxxxx/ [2] https://lore.kernel.org/linux-iommu/20191221150402.13868-1-murphyt7@xxxxxx/