[Intel-gfx] [PATCH] drm/i915/dsb: modified to drm_info in dsb_prepare()
Das, Nirmoy
nirmoy.das at linux.intel.com
Fri Mar 25 14:58:11 UTC 2022
On 3/25/2022 3:28 PM, Animesh Manna wrote:
> The request to aqquire gem resources is failing for DSB in rare
> scenario where it is busy and the register programming will be done
> through mmio fallback path.
>
> DSB has extra advantage of faster register programming which may
> go away through mmio path. Adding wait for gem resource also may
> not be right as anyways losing time.
>
> To make the CI execution happy replaced drm_err() to drm_info()
> for printing debug info during dsb buffer preparation.
>
> v1: Initial version.
> v2: Added print for mmio fallback at out label. [Nirmoy]
>
> Cc: Nirmoy Das <nirmoy.das at linux.intel.com>
> Signed-off-by: Animesh Manna <animesh.manna at intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_dsb.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_dsb.c b/drivers/gpu/drm/i915/display/intel_dsb.c
> index b34a67309976..86c0cf5a03b5 100644
> --- a/drivers/gpu/drm/i915/display/intel_dsb.c
> +++ b/drivers/gpu/drm/i915/display/intel_dsb.c
> @@ -283,14 +283,12 @@ void intel_dsb_prepare(struct intel_crtc_state *crtc_state)
>
> obj = i915_gem_object_create_internal(i915, DSB_BUF_SIZE);
> if (IS_ERR(obj)) {
> - drm_err(&i915->drm, "Gem object creation failed\n");
> kfree(dsb);
> goto out;
> }
>
> vma = i915_gem_object_ggtt_pin(obj, NULL, 0, 0, 0);
> if (IS_ERR(vma)) {
> - drm_err(&i915->drm, "Vma creation failed\n");
> i915_gem_object_put(obj);
> kfree(dsb);
> goto out;
> @@ -298,7 +296,6 @@ void intel_dsb_prepare(struct intel_crtc_state *crtc_state)
>
> buf = i915_gem_object_pin_map_unlocked(vma->obj, I915_MAP_WC);
> if (IS_ERR(buf)) {
> - drm_err(&i915->drm, "Command buffer creation failed\n");
> i915_vma_unpin_and_release(&vma, I915_VMA_RELEASE_MAP);
> kfree(dsb);
> goto out;
> @@ -311,6 +308,9 @@ void intel_dsb_prepare(struct intel_crtc_state *crtc_state)
> dsb->ins_start_offset = 0;
> crtc_state->dsb = dsb;
> out:
> + if (!crtc_state->dsb)
> + drm_info(&i915->drm, "Fallback to mmio for register programming\n");
From the info message, it is hard to know what happened: Something like:
"DSB queue setup failed, will fallback to MMIO for display HW
programming" should be more understandable.
With such change, this is: Reviewed-by: Nirmoy Das <nirmoy.das at intel.com>
Nirmoy
> +
> intel_runtime_pm_put(&i915->runtime_pm, wakeref);
> }
>
More information about the Intel-gfx
mailing list