[PATCH 00/12] drm/tegra: Support IOMMU-backed DMA API
Thierry Reding
thierry.reding at gmail.com
Mon Oct 28 12:37:06 UTC 2019
From: Thierry Reding <treding at nvidia.com>
This series is a continuation of the work to move host1x and Tegra DRM
towards being able to use the IOMMU-backed DMA API.
The first two patches are required to workaround the shortage of IOMMU
domains on older Tegra SoC generations. The remainder of the patches is
mostly preparatory work to smoothen the transition to the DMA API. With
all of these patches applied, it's possible for the drivers to either
use the IOMMU API explicitly, or, if already attached to an DMA IOMMU
domain, continue to use that existing mapping with the DMA API.
These patches apply on top of linux-next and the ->load()/->unload()
removal patch from here:
https://patchwork.freedesktop.org/patch/337896/
Thierry
Thierry Reding (12):
memory: tegra: Add gr2d and gr3d to DRM IOMMU group
drm/tegra: Simplify IOMMU group selection
gpu: host1x: Overhaul host1x_bo_{pin,unpin}() API
gpu: host1x: Clean up debugfs on removal
gpu: host1x: Add direction flags to relocations
gpu: host1x: Allocate gather copy for host1x
gpu: host1x: Support DMA mapping of buffers
gpu: host1x: Set DMA mask based on IOMMU setup
drm/tegra: Remove memory allocation from Falcon library
drm/tegra: falcon: Clarify address usage
drm/tegra: Support DMA API for display controllers
drm/tegra: Optionally attach clients to the IOMMU
drivers/gpu/drm/tegra/dc.c | 10 +-
drivers/gpu/drm/tegra/drm.c | 82 ++++++++----
drivers/gpu/drm/tegra/drm.h | 4 +-
drivers/gpu/drm/tegra/falcon.c | 64 ++-------
drivers/gpu/drm/tegra/falcon.h | 16 +--
drivers/gpu/drm/tegra/gem.c | 46 ++++++-
drivers/gpu/drm/tegra/gr2d.c | 2 +-
drivers/gpu/drm/tegra/gr3d.c | 2 +-
drivers/gpu/drm/tegra/hub.c | 6 +-
drivers/gpu/drm/tegra/plane.c | 104 +++++++++++++++
drivers/gpu/drm/tegra/plane.h | 8 ++
drivers/gpu/drm/tegra/vic.c | 91 ++++++++-----
drivers/gpu/host1x/dev.c | 223 +++++++++++++++++++-------------
drivers/gpu/host1x/dev.h | 1 +
drivers/gpu/host1x/job.c | 91 +++++++++++--
drivers/gpu/host1x/job.h | 4 +
drivers/memory/tegra/tegra114.c | 10 +-
drivers/memory/tegra/tegra124.c | 8 +-
drivers/memory/tegra/tegra30.c | 11 +-
include/linux/host1x.h | 21 ++-
20 files changed, 552 insertions(+), 252 deletions(-)
--
2.23.0
More information about the dri-devel
mailing list