On Thu, Jul 01, 2010 at 03:00:17PM -0700, Zach Pfeffer wrote: > Additionally, the current IOMMU interface does not allow users to > associate one page table with multiple IOMMUs [...] Thats not true. Multiple IOMMUs are completly handled by the IOMMU drivers. In the case of the IOMMU-API backend drivers this also includes the ability to use page-tables on multiple IOMMUs. > Since the particular topology is run-time configurable all of these > use-cases and more can be expressed without pushing the topology into > the low-level IOMMU driver. The IOMMU driver has to know about the topology anyway because it needs to know which IOMMU it needs to program for a particular device. > Already, there are ~20 different IOMMU map implementations in the > kernel. Had the Linux kernel had the VCMM, many of those > implementations could have leveraged the mapping and topology > management of a VCMM, while focusing on a few key hardware specific > functions (map this physical address, program the page table base > register). I partially agree here. All the IOMMU implementations in the Linux kernel have a lot of functionality in common where code could be shared. Work to share code has been done in the past by Fujita Tomonori but there are more places to work on. I am just not sure if a new front-end API is the right way to do this. Joerg -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html