[GIT PULL] drm/tegra: Changes for v5.17-rc1
Thierry Reding
thierry.reding at gmail.com
Fri Dec 17 14:29:12 UTC 2021
Hi Dave, Daniel,
The following changes since commit 136057256686de39cc3a07c2e39ef6bc43003ff6:
Linux 5.16-rc2 (2021-11-21 13:47:39 -0800)
are available in the Git repository at:
https://gitlab.freedesktop.org/drm/tegra.git tags/drm/tegra/for-5.17-rc1
for you to fetch changes up to d210919dbdc8a82c676cc3e3c370b1802be63124:
drm/tegra: Add back arm_iommu_detach_device() (2021-12-16 14:30:45 +0100)
This is unusually big because it contains essentially two cycles' worth
of work. I'm still not sure what happened for v5.16-rc1, but the PR was
never merged.
Fingers crossed that it will work better this time.
As mentioned last time already, the userspace for the new NVDEC driver
can be found here:
https://github.com/cyndis/vaapi-tegra-driver
Thanks,
Thierry
----------------------------------------------------------------
drm/tegra: Changes for v5.17-rc1
This contains a fairly large rework that makes the buffer objects behave
more according to what the DMA-BUF infrastructure expects. A buffer
object cache is implemented on top of that to make certain operations
such as page-flipping more efficient by avoiding needless map/unmap
operations. This in turn is useful to implement asynchronous commits to
support legacy cursor updates.
Another fairly big addition is the NVDEC driver. This uses the updated
UABI introduced in v5.15-rc1 to provide access to the video decode
engines found on Tegra210 and later.
This also includes some power management improvements that are useful on
older devices in particular because they, together with a bunch of other
changes across the kernel, allow the system to scale down frequency and
voltages when mostly idle and prevent these devices from becoming
excessively hot.
The remainder of these changes is an assortment of cleanups and minor
fixes.
----------------------------------------------------------------
Arnd Bergmann (3):
gpu: host1x: select CONFIG_DMA_SHARED_BUFFER
drm/tegra: Mark nvdec_writel() as inline
drm/tegra: Mark nvdec PM functions as __maybe_unused
Dmitry Osipenko (19):
soc/tegra: Enable runtime PM during OPP state-syncing
soc/tegra: Add devm_tegra_core_dev_init_opp_table_common()
drm/tegra: dc: rgb: Move PCLK shifter programming to CRTC
drm/tegra: dc: rgb: Allow changing PLLD rate on Tegra30+
drm/tegra: hdmi: Unwind tegra_hdmi_init() errors
drm/tegra: hdmi: Register audio CODEC on Tegra20
gpu: host1x: Add initial runtime PM and OPP support
gpu: host1x: Add host1x_channel_stop()
drm/tegra: submit: Add missing pm_runtime_mark_last_busy()
drm/tegra: dc: Support OPP and SoC core voltage scaling
drm/tegra: hdmi: Add OPP support
drm/tegra: gr2d: Support generic power domain and runtime PM
drm/tegra: gr3d: Support generic power domain and runtime PM
drm/tegra: vic: Stop channel on suspend
drm/tegra: nvdec: Stop channel on suspend
drm/tegra: submit: Remove pm_runtime_enabled() checks
drm/tegra: Consolidate runtime PM management of older UAPI codepath
gpu: host1x: Add back arm_iommu_detach_device()
drm/tegra: Add back arm_iommu_detach_device()
Mikko Perttunen (3):
drm/tegra: Add NVDEC driver
drm/tegra: Bump VIC/NVDEC clock rates to Fmax
drm/tegra: vic: Use autosuspend
Randy Dunlap (1):
gpu: host1x: Drop excess kernel-doc entry @key
Robin Murphy (2):
drm/tegra: vic: Fix DMA API misuse
gpu: host1x: Add missing DMA API include
Thierry Reding (8):
Merge branch 'tegra-for-5.17-soc-opp' of git://git.kernel.org/pub/scm/linux/kernel/git/tegra/linux into drm/tegra/for-next
drm/tegra: Implement correct DMA-BUF semantics
drm/tegra: Implement buffer object cache
drm/tegra: Do not reference tegra_plane_funcs directly
drm/tegra: Propagate errors from drm_gem_plane_helper_prepare_fb()
drm/tegra: Support asynchronous commits for cursor
drm/tegra: gr2d: Explicitly control module reset
drm/tegra: vic: Handle tegra_drm_alloc() failure
Wan Jiabing (1):
drm/tegra: Remove duplicate struct declaration
drivers/gpu/drm/tegra/Kconfig | 3 +
drivers/gpu/drm/tegra/Makefile | 3 +-
drivers/gpu/drm/tegra/dc.c | 194 +++++++++++++--
drivers/gpu/drm/tegra/dc.h | 3 +
drivers/gpu/drm/tegra/drm.c | 30 ++-
drivers/gpu/drm/tegra/drm.h | 1 +
drivers/gpu/drm/tegra/gem.c | 171 +++++++++-----
drivers/gpu/drm/tegra/gr2d.c | 151 +++++++++++-
drivers/gpu/drm/tegra/gr3d.c | 353 +++++++++++++++++++++++-----
drivers/gpu/drm/tegra/hdmi.c | 183 +++++++++++++--
drivers/gpu/drm/tegra/hub.h | 1 -
drivers/gpu/drm/tegra/nvdec.c | 466 +++++++++++++++++++++++++++++++++++++
drivers/gpu/drm/tegra/plane.c | 65 ++----
drivers/gpu/drm/tegra/plane.h | 2 +-
drivers/gpu/drm/tegra/rgb.c | 53 ++++-
drivers/gpu/drm/tegra/submit.c | 77 ++++--
drivers/gpu/drm/tegra/uapi.c | 68 ++----
drivers/gpu/drm/tegra/uapi.h | 5 +-
drivers/gpu/drm/tegra/vic.c | 61 +++--
drivers/gpu/host1x/Kconfig | 1 +
drivers/gpu/host1x/bus.c | 80 ++++++-
drivers/gpu/host1x/channel.c | 8 +
drivers/gpu/host1x/debug.c | 15 ++
drivers/gpu/host1x/dev.c | 185 ++++++++++++---
drivers/gpu/host1x/dev.h | 5 +-
drivers/gpu/host1x/hw/channel_hw.c | 44 ++--
drivers/gpu/host1x/intr.c | 3 -
drivers/gpu/host1x/job.c | 160 +++++--------
drivers/gpu/host1x/job.h | 6 +-
drivers/gpu/host1x/syncpt.c | 5 +-
drivers/soc/tegra/common.c | 25 ++
include/linux/host1x.h | 76 ++++--
include/soc/tegra/common.h | 15 ++
33 files changed, 2020 insertions(+), 498 deletions(-)
create mode 100644 drivers/gpu/drm/tegra/nvdec.c
More information about the dri-devel
mailing list