Hi all, this series adds support for the new MMU version 2, found on newer Vivante cores. The new MMU provides full isolation, with no way for the GPU to bypass it. This may enable optimizations like skipping commandstream validation later on. For now we stick with a single address space for all clients, making the initial implementation a lot simpler. With the support for the new MMU in place it is trivial to add support for the new Vivante cores, found on the i.MX6 QuadPlus. I've only really tested this series with the 2D core yet, as the 3D userspace needs some changes to work properly on top of the GC3000 cores. Those are still in the works and will be published in coming days. Regards, Lucas Lucas Stach (18): drm/etnaviv: reset GPU when coming back from suspend drm/etnaviv: only try to use the linear window on MMUv1 drm/etnaviv: only check if the cmdbuf is inside the linear window on MMUv1 drm/etnaviv: rename etnaviv_iommu_domain_restore to etnaviv_iommuv1_restore drm/etnaviv: move linear window setup into etnaviv_iommuv1_restore drm/etnaviv: indirect IOMMU restore through etnaviv MMU drm/etnaviv: move IOMMU domain allocation into etnaviv MMU drm/etnaviv: remove unused iommu_v2 header drm/etnaviv: move gpu_va() to etnaviv mmu drm/etnaviv: split out wait for gpu idle drm/etnaviv: split out FE start drm/etnaviv: split out iova search and MMU reaping logic drm/etnaviv: map cmdbuf through MMU on version 2 drm/etnaviv: add function to construct MMUv2 init buffer drm/etnaviv: add flushing logic for MMUv2 drm/etnaviv: handle MMU exception in IRQ handler drm/etnaviv: implement IOMMUv2 translation drm/etnaviv: fix up model and revision for GC2000+ drivers/gpu/drm/etnaviv/etnaviv_buffer.c | 81 +++++++-- drivers/gpu/drm/etnaviv/etnaviv_drv.h | 1 + drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 137 +++++++-------- drivers/gpu/drm/etnaviv/etnaviv_gpu.h | 4 + drivers/gpu/drm/etnaviv/etnaviv_iommu.c | 15 +- drivers/gpu/drm/etnaviv/etnaviv_iommu.h | 10 +- drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.c | 257 ++++++++++++++++++++++++++++- drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.h | 25 --- drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 144 ++++++++++++---- drivers/gpu/drm/etnaviv/etnaviv_mmu.h | 9 +- drivers/gpu/drm/etnaviv/state_hi.xml.h | 9 +- 11 files changed, 532 insertions(+), 160 deletions(-) delete mode 100644 drivers/gpu/drm/etnaviv/etnaviv_iommu_v2.h -- 2.8.1 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel