[PATCH 0/6] drm: Consolidate the wait timeout conversion helpers
Maíra Canal <[email protected]>
| Newsgroups | gmane.comp.freedesktop.amd-gfx,gmane.comp.video.dri.devel,gmane.comp.freedesktop.xorg.drivers.intel |
|---|---|
| Message-ID | <[email protected]> |
DRM wait ioctls express their timeout in one of two ways: as an absolute
deadline in ns, or as a duration in ns. The core has a helper for the first
form, drm_timeout_abs_to_jiffies(), which panfrost, lima, tegra, xe and
some accel drivers use. However, there is no equivalent for the second
form, so the drivers that take a duration convert it themselves.
For example, i915 has a local helper to handle the relative timeout case,
and v3d carries a copy of it. This series moves that conversion into a DRM
helper called drm_timeout_rel_to_jiffies(), next to the absolute variant,
and converts the drivers that were open-coding either form.
This series becomes particularly relevant as the new helper will be used
in the next version of the series "drm/vc4: Switch to DRM GPU scheduler"
[1]. With this series, we avoid another duplication of the
nsecs_to_jiffies_timeout() function (and thanks Tvrtko for the suggestion).
PATCH 1 moves drm_timeout_abs_to_jiffies() out of drm_syncobj.c and into a
file of its own, so that both helpers live together. PATCH 2 adds a helper
for the relative variant. Patches 3 to 6 convert amdgpu, v3d, i915 and vc4.
Let me know your thoughts about it.
[1] https://lore.kernel.org/dri-devel/20260712-vc4-drm-scheduler-v3-0-ed6dc4defa53-wEGTBA9jqPzQT0dZR+AlfA@public.gmane.org/T/
Best regards,
- Maíra
---
Maíra Canal (6):
drm: Move drm_timeout_abs_to_jiffies() to drm_timeout.c
drm: Add drm_timeout_rel_to_jiffies()
drm/amdgpu: Use drm_timeout_abs_to_jiffies()
drm/v3d: Use drm_timeout_rel_to_jiffies()
drm/i915: Use drm_timeout_rel_to_jiffies()
drm/vc4: Use drm_timeout_rel_to_jiffies()
drivers/gpu/drm/Makefile | 1 +
drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 16 +------
drivers/gpu/drm/drm_syncobj.c | 33 --------------
drivers/gpu/drm/drm_timeout.c | 76 ++++++++++++++++++++++++++++++++
drivers/gpu/drm/i915/gem/i915_gem_wait.c | 17 ++-----
drivers/gpu/drm/v3d/v3d_bo.c | 3 +-
drivers/gpu/drm/v3d/v3d_drv.h | 10 -----
drivers/gpu/drm/vc4/vc4_gem.c | 3 +-
include/drm/drm_utils.h | 1 +
9 files changed, 87 insertions(+), 73 deletions(-)
---
base-commit: dc2f9f7fed1a8ea5290f9f60c6310d497e85e666
change-id: 20260809-drm-timeout-helpers-55473e4879d1