All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Shankar, Uma" <uma.shankar@intel.com>
To: "Nikula, Jani" <jani.nikula@intel.com>,
	"intel-gfx@lists.freedesktop.org"
	<intel-gfx@lists.freedesktop.org>
Cc: "Nikula, Jani" <jani.nikula@intel.com>
Subject: Re: [Intel-gfx] [PATCH RESEND 2/7] drm/i915/mst: abstract intel_dp_ack_sink_irq_esi()
Date: Thu, 20 Jan 2022 11:29:37 +0000	[thread overview]
Message-ID: <d25f760900cc40d09ae223701549dee7@intel.com> (raw)
In-Reply-To: <20220112110319.1172110-2-jani.nikula@intel.com>



> -----Original Message-----
> From: Intel-gfx <intel-gfx-bounces@lists.freedesktop.org> On Behalf Of Jani Nikula
> Sent: Wednesday, January 12, 2022 4:33 PM
> To: intel-gfx@lists.freedesktop.org
> Cc: Nikula, Jani <jani.nikula@intel.com>
> Subject: [Intel-gfx] [PATCH RESEND 2/7] drm/i915/mst: abstract
> intel_dp_ack_sink_irq_esi()
> 
> Smaller functions make the thing easier to read. Debug log failures to ack.
> 
> Note: Looks like we have the retry loop simply because of hysterical raisins, dating
> back to the original DP MST enabling. Keep it, though I have no idea why we have it.

Reviewed-by: Uma Shankar <uma.shankar@intel.com>

> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_dp.c | 25 +++++++++++++++----------
>  1 file changed, 15 insertions(+), 10 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/display/intel_dp.c
> b/drivers/gpu/drm/i915/display/intel_dp.c
> index e789ecbc69f3..a301220ce2ad 100644
> --- a/drivers/gpu/drm/i915/display/intel_dp.c
> +++ b/drivers/gpu/drm/i915/display/intel_dp.c
> @@ -2821,6 +2821,19 @@ intel_dp_get_sink_irq_esi(struct intel_dp *intel_dp, u8
> *sink_irq_vector)
>  		DP_DPRX_ESI_LEN;
>  }
> 
> +static bool intel_dp_ack_sink_irq_esi(struct intel_dp *intel_dp, u8
> +esi[4]) {
> +	int retry;
> +
> +	for (retry = 0; retry < 3; retry++) {
> +		if (drm_dp_dpcd_write(&intel_dp->aux, DP_SINK_COUNT_ESI + 1,
> +				      &esi[1], 3) == 3)
> +			return true;
> +	}
> +
> +	return false;
> +}
> +
>  bool
>  intel_dp_needs_vsc_sdp(const struct intel_crtc_state *crtc_state,
>  		       const struct drm_connector_state *conn_state) @@ -3661,7
> +3674,6 @@ intel_dp_check_mst_status(struct intel_dp *intel_dp)
>  		 */
>  		u8 esi[DP_DPRX_ESI_LEN+2] = {};
>  		bool handled;
> -		int retry;
> 
>  		if (!intel_dp_get_sink_irq_esi(intel_dp, esi)) {
>  			drm_dbg_kms(&i915->drm,
> @@ -3686,15 +3698,8 @@ intel_dp_check_mst_status(struct intel_dp *intel_dp)
>  		if (!handled)
>  			break;
> 
> -		for (retry = 0; retry < 3; retry++) {
> -			int wret;
> -
> -			wret = drm_dp_dpcd_write(&intel_dp->aux,
> -						 DP_SINK_COUNT_ESI+1,
> -						 &esi[1], 3);
> -			if (wret == 3)
> -				break;
> -		}
> +		if (!intel_dp_ack_sink_irq_esi(intel_dp, esi))
> +			drm_dbg_kms(&i915->drm, "Failed to ack ESI\n");
>  	}
> 
>  	return link_ok;
> --
> 2.30.2


  reply	other threads:[~2022-01-20 11:29 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-12 11:03 [Intel-gfx] [PATCH RESEND 1/7] drm/i915/mst: fix intel_dp_mst_hpd_irq() indentation Jani Nikula
2022-01-12 11:03 ` [Intel-gfx] [PATCH RESEND 2/7] drm/i915/mst: abstract intel_dp_ack_sink_irq_esi() Jani Nikula
2022-01-20 11:29   ` Shankar, Uma [this message]
2022-01-12 11:03 ` [Intel-gfx] [PATCH RESEND 3/7] drm/i915/mst: debug log 4 bytes of ESI right after reading Jani Nikula
2022-01-20 10:37   ` Shankar, Uma
2022-01-12 11:03 ` [Intel-gfx] [PATCH RESEND 4/7] drm/i915/mst: abstract handling of link status in DP MST Jani Nikula
2022-01-20 10:39   ` Shankar, Uma
2022-01-12 11:03 ` [Intel-gfx] [PATCH RESEND 5/7] drm/i915/mst: read link status only when requested by sink in ESI Jani Nikula
2022-01-20 10:41   ` Shankar, Uma
2022-01-12 11:03 ` [Intel-gfx] [PATCH RESEND 6/7] drm/i915/mst: ack sink irq ESI for link status changes Jani Nikula
2022-01-20 10:42   ` Shankar, Uma
2022-01-12 11:03 ` [Intel-gfx] [PATCH RESEND 7/7] drm/i915/mst: only ack the ESI we actually handled Jani Nikula
2022-01-20 10:43   ` Shankar, Uma
2022-01-20 11:01     ` Jani Nikula
2022-01-20 11:33       ` Shankar, Uma
2022-01-21 11:27         ` Jani Nikula
2022-01-20 11:01   ` [Intel-gfx] [PATCH v2] " Jani Nikula
2022-01-20 11:31     ` Shankar, Uma
2022-01-12 13:30 ` [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [RESEND,1/7] drm/i915/mst: fix intel_dp_mst_hpd_irq() indentation Patchwork
2022-01-12 17:27 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
2022-01-20 11:28 ` [Intel-gfx] [PATCH RESEND 1/7] " Shankar, Uma
2022-01-20 11:56 ` [Intel-gfx] ✓ Fi.CI.BAT: success for series starting with [RESEND,1/7] drm/i915/mst: fix intel_dp_mst_hpd_irq() indentation (rev2) Patchwork
2022-01-20 13:57 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d25f760900cc40d09ae223701549dee7@intel.com \
    --to=uma.shankar@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=jani.nikula@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.