[PATCH 0/6] Fixes and improvements to syncobj handling in TegraDRM submit path

Mikko Perttunen <[email protected]> Thu, 30 Jul 2026 13:44:40 +0900
Newsgroups org.kernel.vger.linux-tegra,org.freedesktop.lists.dri-devel,org.kernel.vger.linux-kernel,org.kernel.vger.linux-media
Message-ID <[email protected]>
The syncobj code in the TegraDRM submit path has been quite broken for a 
while. Let's get it in (better) shape for unstaging.

The first part of the series, patches 1-4 are fixes and and a cosmetic 
improvement. They fix the syncobj handling, though it remains unoptimal 
- CPU waited.

Patch 5 adds host1x_fence_extract, necessary to allow other drivers to 
see inside syncpoint fences and program hardware to do direct waits.

Patch 6 adds support to the TegraDRM submit path for waiting such fences 
directly using Host1x channel commands.

Tested on Tegra234.

Best regards
Mikko

Signed-off-by: Mikko Perttunen <[email protected]>
---
Mikko Perttunen (6):
      drm/tegra: Fix syncobj_in wait return value check
      drm/tegra: Don't pass an ERR_PTR to drm_syncobj_replace_fence()
      drm/tegra: Drop reference on postfence
      drm/tegra: Remove unused includes from submit.c
      gpu: host1x: Add host1x_fence_extract()
      drm/tegra: Wait for syncpoint syncobj_in fences in hardware

 drivers/gpu/drm/tegra/submit.c | 109 +++++++++++++++++++++++++++++++++++------
 drivers/gpu/host1x/fence.c     |  43 ++++++++++++++++
 include/linux/host1x.h         |   2 +
 include/uapi/drm/tegra_drm.h   |   4 +-
 4 files changed, 140 insertions(+), 18 deletions(-)
---
base-commit: a13c140cc289c0b7b3770bce5b3ad42ab35074aa
change-id: 20260727-b4-host1x-syncobj-wait-84284ac2838c