[PATCH 05/14] drm/i915/dsb: Shuffle code around
Manna, Animesh
animesh.manna at intel.com
Wed Jul 3 05:49:58 UTC 2024
> -----Original Message-----
> From: Intel-gfx <intel-gfx-bounces at lists.freedesktop.org> On Behalf Of Ville
> Syrjala
> Sent: Tuesday, June 25, 2024 12:40 AM
> To: intel-gfx at lists.freedesktop.org
> Subject: [PATCH 05/14] drm/i915/dsb: Shuffle code around
>
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> Relocate intel_dsb_dewake_scanline() and dsb_chicken() upwards in the file.
> I need to reuse these while emitting DSB commands, and I'd like to keep the
> DSB command emission stuff more or less grouped together in the file.
>
> Also drop the intel_ prefix from intel_dsb_dewake_scanline() since it's all
> internal stuff and thus doesn't need so much namespacing.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
LGTM.
Reviewed-by: Animesh manna <animesh.manna at intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_dsb.c | 56 ++++++++++++------------
> 1 file changed, 28 insertions(+), 28 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dsb.c
> b/drivers/gpu/drm/i915/display/intel_dsb.c
> index cee33c66a26b..d3e5e5263603 100644
> --- a/drivers/gpu/drm/i915/display/intel_dsb.c
> +++ b/drivers/gpu/drm/i915/display/intel_dsb.c
> @@ -83,6 +83,33 @@ struct intel_dsb {
> #define DSB_OPCODE_POLL 0xA
> /* see DSB_REG_VALUE_MASK */
>
> +static int dsb_dewake_scanline(const struct intel_crtc_state
> +*crtc_state) {
> + struct drm_i915_private *i915 = to_i915(crtc_state->uapi.crtc->dev);
> + const struct drm_display_mode *adjusted_mode = &crtc_state-
> >hw.adjusted_mode;
> + unsigned int latency = skl_watermark_max_latency(i915, 0);
> + int vblank_start;
> +
> + if (crtc_state->vrr.enable)
> + vblank_start = intel_vrr_vmin_vblank_start(crtc_state);
> + else
> + vblank_start = intel_mode_vblank_start(adjusted_mode);
> +
> + return max(0, vblank_start -
> intel_usecs_to_scanlines(adjusted_mode,
> +latency)); }
> +
> +static u32 dsb_chicken(struct intel_crtc *crtc) {
> + if (crtc->mode_flags & I915_MODE_FLAG_VRR)
> + return DSB_SKIP_WAITS_EN |
> + DSB_CTRL_WAIT_SAFE_WINDOW |
> + DSB_CTRL_NO_WAIT_VBLANK |
> + DSB_INST_WAIT_SAFE_WINDOW |
> + DSB_INST_NO_WAIT_VBLANK;
> + else
> + return DSB_SKIP_WAITS_EN;
> +}
> +
> static bool assert_dsb_has_room(struct intel_dsb *dsb) {
> struct intel_crtc *crtc = dsb->crtc;
> @@ -313,33 +340,6 @@ void intel_dsb_finish(struct intel_dsb *dsb)
> intel_dsb_buffer_flush_map(&dsb->dsb_buf);
> }
>
> -static int intel_dsb_dewake_scanline(const struct intel_crtc_state
> *crtc_state) -{
> - struct drm_i915_private *i915 = to_i915(crtc_state->uapi.crtc->dev);
> - const struct drm_display_mode *adjusted_mode = &crtc_state-
> >hw.adjusted_mode;
> - unsigned int latency = skl_watermark_max_latency(i915, 0);
> - int vblank_start;
> -
> - if (crtc_state->vrr.enable)
> - vblank_start = intel_vrr_vmin_vblank_start(crtc_state);
> - else
> - vblank_start = intel_mode_vblank_start(adjusted_mode);
> -
> - return max(0, vblank_start -
> intel_usecs_to_scanlines(adjusted_mode, latency));
> -}
> -
> -static u32 dsb_chicken(struct intel_crtc *crtc) -{
> - if (crtc->mode_flags & I915_MODE_FLAG_VRR)
> - return DSB_SKIP_WAITS_EN |
> - DSB_CTRL_WAIT_SAFE_WINDOW |
> - DSB_CTRL_NO_WAIT_VBLANK |
> - DSB_INST_WAIT_SAFE_WINDOW |
> - DSB_INST_NO_WAIT_VBLANK;
> - else
> - return DSB_SKIP_WAITS_EN;
> -}
> -
> static u32 dsb_error_int_status(struct intel_display *display) {
> struct drm_i915_private *i915 = to_i915(display->drm); @@ -532,7
> +532,7 @@ struct intel_dsb *intel_dsb_prepare(struct intel_atomic_state
> *state,
> dsb->ins_start_offset = 0;
>
> dsb->hw_dewake_scanline =
> - intel_crtc_scanline_to_hw(crtc_state,
> intel_dsb_dewake_scanline(crtc_state));
> + intel_crtc_scanline_to_hw(crtc_state,
> +dsb_dewake_scanline(crtc_state));
>
> return dsb;
>
> --
> 2.44.2
More information about the Intel-gfx
mailing list