All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@linux.intel.com>
To: Manasi Navare <manasi.d.navare@intel.com>,
	intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 0/5] Handle link training failure during modeset
Date: Thu, 17 Nov 2016 14:29:30 +0200	[thread overview]
Message-ID: <87k2c2z3v9.fsf@intel.com> (raw)
In-Reply-To: <1479179603-28476-1-git-send-email-manasi.d.navare@intel.com>

On Tue, 15 Nov 2016, Manasi Navare <manasi.d.navare@intel.com> wrote:
> Submitting new series that adds proper commit messages/cover letter
> and kernel documentation. It also moved the set_link_status function
> to drm core so other kernel drivers can make use of it.
>
> The idea presented in these patches is to address link training failure
> in a way that:
> a) changes the current happy day scenario as little as possible, to avoid
> regressions, b) can be implemented the same way by all drm drivers, c)
> is still opt-in for the drivers and userspace, and opting out doesn't
> regress the user experience, d) doesn't prevent drivers from
> implementing better or alternate approaches, possibly without userspace
> involvement. And, of course, handles all the issues presented.
>
> The solution is to add a "link status" connector property. In the usual
> happy day scenario, this is always "good". If something fails during or
> after a mode set, the kernel driver can set the link status to "bad",
> prune the mode list based on new information as necessary, and send a
> hotplug uevent for userspace to have it re-check the valid modes through
> getconnector, and try again. If the theoretical capabilities of the link
> can't be reached, the mode list is trimmed based on that.
>
> If the userspace is not aware of the property, the user experience is
> the same as it currently is. If the userspace is aware of the property,
> it has a chance to improve user experience. If a drm driver does not
> modify the property (it stays "good"), the user experience is the same
> as it currently is. A drm driver can also choose to try to handle more
> of the failures in kernel, hardware not limiting, or it can choose to
> involve userspace more. Up to the drivers.
>
> The reason for adding the property is to handle link training failures,
> but it is not limited to DP or link training. For example, if we
> implement asynchronous setcrtc, we can use this to report any failures
> in that.
>
> Finally, while DP CTS compliance is advertized (which is great, and
> could be made to work similarly for all drm drivers), this can be used
> for the more important goal of improving user experience on link
> training failures, by avoiding black screens.

Since I went through the trouble of writing this, you might as well add
it to patch 1/5 commit message so it benefits the posterity.

> Acked-by: Tony Cheng <tony.cheng@amd.com>
> Acked-by: Harry Wentland <Harry.wentland@amd.com>

These must go to patch 1/5 commit message.

BR,
Jani.



>
> Manasi Navare (5):
>   drm: Add a new connector property for link status
>   drm: Set DRM connector link status property
>   drm/i915: Update CRTC state if connector link status property changed
>   drm/i915: Find fallback link rate/lane count
>   drm/i915: Implement Link Rate fallback on Link training failure
>
>  drivers/gpu/drm/drm_atomic_helper.c           |   7 ++
>  drivers/gpu/drm/drm_connector.c               |  55 ++++++++++
>  drivers/gpu/drm/i915/intel_ddi.c              |  21 +++-
>  drivers/gpu/drm/i915/intel_dp.c               | 144 +++++++++++++++++++++++++-
>  drivers/gpu/drm/i915/intel_dp_link_training.c |  12 ++-
>  drivers/gpu/drm/i915/intel_drv.h              |  10 +-
>  include/drm/drm_connector.h                   |   9 +-
>  include/drm/drm_crtc.h                        |   5 +
>  include/uapi/drm/drm_mode.h                   |   4 +
>  9 files changed, 257 insertions(+), 10 deletions(-)

-- 
Jani Nikula, Intel Open Source Technology Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  parent reply	other threads:[~2016-11-17 12:29 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-15  3:13 [PATCH 0/5] Handle link training failure during modeset Manasi Navare
2016-11-15  3:13 ` [PATCH 1/5] drm: Add a new connector property for link status Manasi Navare
2016-11-15  3:13 ` [PATCH 2/5] drm: Set DRM connector link status property Manasi Navare
2016-11-15  3:23   ` Manasi Navare
2016-11-15  7:50     ` Daniel Vetter
2016-11-15  7:49   ` [Intel-gfx] " Daniel Vetter
2016-11-15 23:56     ` Manasi Navare
2016-11-16  7:35       ` [Intel-gfx] " Daniel Vetter
2016-11-15  7:53   ` Daniel Vetter
2016-11-16  1:13     ` Manasi Navare
2016-11-16  7:29       ` Daniel Vetter
2016-11-16  1:58   ` [PATCH v2 " Manasi Navare
2016-11-15  3:13 ` [PATCH 3/5] drm/i915: Update CRTC state if connector link status property changed Manasi Navare
2016-11-15  3:13 ` [PATCH 4/5] drm/i915: Find fallback link rate/lane count Manasi Navare
2016-11-16 17:32   ` Manasi Navare
2016-11-17 12:58   ` Jani Nikula
2016-11-17 19:44     ` Manasi Navare
2016-11-15  3:13 ` [PATCH 5/5] drm/i915: Implement Link Rate fallback on Link training failure Manasi Navare
2016-11-16 17:34   ` Manasi Navare
2016-11-17 12:49   ` Jani Nikula
2016-11-17 19:55     ` Manasi Navare
2016-11-15  4:24 ` ✓ Fi.CI.BAT: success for Handle Link Training Failure during modeset (rev2) Patchwork
2016-11-17 12:29 ` Jani Nikula [this message]
2016-11-17 19:48   ` [PATCH 0/5] Handle link training failure during modeset Manasi Navare
  -- strict thread matches above, loose matches on Subject: below --
2016-11-10  4:42 [PATCH 0/5] Handle Link Training Failure " Manasi Navare
2016-11-10 18:19 ` Jani Nikula
2016-11-10 18:42   ` [Intel-gfx] " Deucher, Alexander
2016-11-10 18:51     ` Cheng, Tony
2016-11-11 14:05       ` Ville Syrjälä
2016-11-11 16:21         ` Cheng, Tony
2016-11-11 16:43           ` Ville Syrjälä
2016-11-11 19:42             ` Cheng, Tony
2016-11-14  7:43               ` Manasi Navare
2016-11-14  8:04                 ` Daniel Vetter
2016-11-14 14:45                   ` Cheng, Tony
2016-11-14 17:51                     ` [Intel-gfx] " Manasi Navare
2016-11-14 20:13                       ` Cheng, Tony
2016-11-15  1:07 ` Harry Wentland
2016-11-15  1:14   ` Manasi Navare

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=87k2c2z3v9.fsf@intel.com \
    --to=jani.nikula@linux.intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=manasi.d.navare@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.