All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@linux.intel.com>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 1/4] drm/i915: read dpcd 0 - 12 & link_status always
Date: Thu, 03 Sep 2015 15:25:04 +0300	[thread overview]
Message-ID: <87a8t31yhr.fsf@intel.com> (raw)
In-Reply-To: <20150902090444.GK1367@phenom.ffwll.local>

On Wed, 02 Sep 2015, Daniel Vetter <daniel@ffwll.ch> wrote:
> On Tue, Sep 01, 2015 at 01:16:49PM +0300, Jani Nikula wrote:
>> On Thu, 27 Aug 2015, Sivakumar Thulasimani <sivakumar.thulasimani@intel.com> wrote:
>> > From: "Thulasimani,Sivakumar" <sivakumar.thulasimani@intel.com>
>> >
>> > Compliance requires the driver to read dpcd register 0 to 12 and
>> > registers 0x200 to 0x205 to be read always.
>> > Current code performs dpcd read for short pulse interrupts only
>> > if the sink is enabled. This patch forces read for link status
>> > and registers 0 to 12.
>> 
>> While this seems a bit silly from the driver perspective, I don't see it
>> doing much harm either.
>
> I don't think this is silly, but fixing it like this might be - currently
> we don't do _any_ detection of sink ports, so if you have a hub with two
> outputs and then plug in another one and plug out the first userspace
> won't reprobe. So probably what we should be doing is not just read the
> dpcd, but actually look at it, figure out whether something has changed
> and make sure we send out the uevent even if the hpd line stays unchanged
> on short pulses to make userspace aware of the changes.
>
> Punting on this for now since I suspect there's a bigger story to be had
> here ...

Well, I'll bet this would be a preliminary step for that anyway.

BR,
Jani.


> -Daniel
>
>> 
>> Note that We do read dpcd 0 to 14 no matter what the spec says.
>> 
>> Reviewed-by: Jani Nikula <jani.nikula@intel.com>
>> 
>> >
>> > Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com>
>> > ---
>> >  drivers/gpu/drm/i915/intel_dp.c |   12 ++++++------
>> >  1 file changed, 6 insertions(+), 6 deletions(-)
>> >
>> > diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
>> > index 8a66a44..76561e0 100644
>> > --- a/drivers/gpu/drm/i915/intel_dp.c
>> > +++ b/drivers/gpu/drm/i915/intel_dp.c
>> > @@ -4374,12 +4374,6 @@ intel_dp_check_link_status(struct intel_dp *intel_dp)
>> >  
>> >  	WARN_ON(!drm_modeset_is_locked(&dev->mode_config.connection_mutex));
>> >  
>> > -	if (!intel_encoder->base.crtc)
>> > -		return;
>> > -
>> > -	if (!to_intel_crtc(intel_encoder->base.crtc)->active)
>> > -		return;
>> > -
>> >  	/* Try to read receiver status if the link appears to be up */
>> >  	if (!intel_dp_get_link_status(intel_dp, link_status)) {
>> >  		return;
>> > @@ -4390,6 +4384,12 @@ intel_dp_check_link_status(struct intel_dp *intel_dp)
>> >  		return;
>> >  	}
>> >  
>> > +	if (!intel_encoder->base.crtc)
>> > +		return;
>> > +
>> > +	if (!to_intel_crtc(intel_encoder->base.crtc)->active)
>> > +		return;
>> > +
>> >  	/* Try to read the source of the interrupt */
>> >  	if (intel_dp->dpcd[DP_DPCD_REV] >= 0x11 &&
>> >  	    intel_dp_get_sink_irq(intel_dp, &sink_irq_vector)) {
>> > -- 
>> > 1.7.9.5
>> >
>> 
>> -- 
>> Jani Nikula, Intel Open Source Technology Center
>> _______________________________________________
>> Intel-gfx mailing list
>> Intel-gfx@lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
> -- 
> Daniel Vetter
> Software Engineer, Intel Corporation
> http://blog.ffwll.ch

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

  reply	other threads:[~2015-09-03 12:21 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-27  8:48 [PATCH 0/4] Detect DP displays based on sink count change Sivakumar Thulasimani
2015-08-27  8:48 ` [PATCH 1/4] drm/i915: read dpcd 0 - 12 & link_status always Sivakumar Thulasimani
2015-09-01 10:16   ` Jani Nikula
2015-09-02  9:04     ` Daniel Vetter
2015-09-03 12:25       ` Jani Nikula [this message]
2015-09-04  7:46         ` Daniel Vetter
2015-08-27  8:48 ` [PATCH 2/4] drm/i915: read sink_count dpcd always Sivakumar Thulasimani
2015-09-01 10:29   ` Jani Nikula
2015-09-01 11:54     ` Sivakumar Thulasimani
2015-09-01 13:15       ` Jani Nikula
2015-09-01 14:24         ` Sivakumar Thulasimani
2015-08-27  8:48 ` [PATCH 3/4] drm/i915: Save sink_count for tracking changes to it Sivakumar Thulasimani
2015-09-01 10:43   ` Jani Nikula
2015-08-27  8:48 ` [PATCH 4/4] drm/i915: force full detect on sink count change Sivakumar Thulasimani
2015-09-01 10:42   ` Jani Nikula
2015-09-01 11:39     ` Sivakumar Thulasimani
2015-09-01 13:04       ` Jani Nikula
2015-09-02  9:13   ` Daniel Vetter
2015-09-03  8:24     ` Sivakumar Thulasimani

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=87a8t31yhr.fsf@intel.com \
    --to=jani.nikula@linux.intel.com \
    --cc=daniel@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    /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.