On Thu, 15 Aug 2013, Ian Campbell wrote: > On Thu, 2013-08-15 at 12:10 +0100, Stefano Stabellini wrote: > > At the moment always rely on swiotlb-xen, but when Xen starts supporting > > hardware IOMMUs we'll be able to avoid it conditionally on the presence > > of an IOMMU on the platform. > > Do we have any idea how we are going to do this? > > It's extra complicated if you consider that on some systems on some of > the devices are behind an IOMMU :-/ > > I wonder if we can enumerate which devices have an IOMMU at boot time > and force a ludicrous dma mask (such as 0) if one isn't present in order > to force us to always take the exchange_and_pin path?
We don't need to worry about how to specify which devices need to go via the swiotlb internally, because we have our own arm specific dma_map_ops. At the moment they are just implemented using the swiotlb-xen functions, but we could easily provide wrappers that check our own internal whitelist/blacklist and go via swiotlb-xen only in those cases. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/