summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/display/intel_dsb.c
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2024-09-30 20:04:09 +0300
committerVille Syrjälä <ville.syrjala@linux.intel.com>2024-10-04 00:33:13 +0300
commitd6dfbc6f81c3f86497b0d2e4e4f32ea6642aa5df (patch)
tree737fd190c93d6c85439041b000b0a4d55e5bbde9 /drivers/gpu/drm/i915/display/intel_dsb.c
parentde968532fd562af00cd630b5bb7f42e36dbbe755 (diff)
drm/i915/dsb: Introduce intel_dsb_wait_vblanks()
Add a function to emit a DSB wait for vblank instruction. This just waits until the specified number of vblanks. Note that this triggers on the transcoder's undelayed vblank, as opposed to the pipe's delayed vblank. Reviewed-by: Animesh Manna <animesh.manna@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20240930170415.23841-8-ville.syrjala@linux.intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/display/intel_dsb.c')
-rw-r--r--drivers/gpu/drm/i915/display/intel_dsb.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/display/intel_dsb.c b/drivers/gpu/drm/i915/display/intel_dsb.c
index 3aaed94c7e65..373e815a7639 100644
--- a/drivers/gpu/drm/i915/display/intel_dsb.c
+++ b/drivers/gpu/drm/i915/display/intel_dsb.c
@@ -399,6 +399,12 @@ void intel_dsb_wait_usec(struct intel_dsb *dsb, int count)
DSB_OPCODE_WAIT_USEC << DSB_OPCODE_SHIFT);
}
+void intel_dsb_wait_vblanks(struct intel_dsb *dsb, int count)
+{
+ intel_dsb_emit(dsb, count,
+ DSB_OPCODE_WAIT_VBLANKS << DSB_OPCODE_SHIFT);
+}
+
static void intel_dsb_emit_wait_dsl(struct intel_dsb *dsb,
u32 opcode, int lower, int upper)
{