diff mbox

Broken DPMS with DisplayPort on CHV (also BYT?)

Message ID s5hr33rmh6k.wl-tiwai@suse.de (mailing list archive)
State New, archived
Headers show

Commit Message

Takashi Iwai Jan. 25, 2017, 12:56 p.m. UTC
Hi,

we've got a bug report about the blank monitor on Cherry Trail
machines.  And, Intel team (Cc'ed) spotted out that this seems
triggered by DPMS transition.  A patch like below actually fixes the
problem.

Of course it doesn't look like a right "fix".  Do you guys have any
hint for further debugging?

Some more (not alt-) facts:

- The machine we've tested is a Cherry Trail based box with two
  DisplayPorts.  Intel team mentioned that there are other machines
  suffering from the same problem.

- With some monitors, the screen remains blank during boot and on X.
  This can be cured after "xset dpms force off" and resume, or
  reconfiguring via xrandr.

- The issue seems specific to DP connections.  When two (identical)
  monitors are connected, only one monitor goes blank.

- The issue happens only with some monitor models (Dell E-series).
  Other Dell monitors (e.g. U-series) or other vendors seem working as
  far as we've tested.

- Intel team mentioned that a similar issue was seen on a Baytrail
  machine.

- The register value seems passed correctly.  The read back after the
  register write showed the expected value.
  Also, spinning more times in DPMS_ON loop didn't help, too.

- The issue is reproduced with the recent kernels (at least 4.9.x)


Any comments / suggestions appreciated.

thanks,

Takashi

Comments

Ville Syrjälä Jan. 26, 2017, 1:58 p.m. UTC | #1
On Wed, Jan 25, 2017 at 01:56:35PM +0100, Takashi Iwai wrote:
> Hi,
> 
> we've got a bug report about the blank monitor on Cherry Trail
> machines.  And, Intel team (Cc'ed) spotted out that this seems
> triggered by DPMS transition.  A patch like below actually fixes the
> problem.
> 
> Of course it doesn't look like a right "fix".  Do you guys have any
> hint for further debugging?

Is it some kind of new fangled MST capable monitor? I've noticed that
those tend to be super easy to mess up.

> 
> Some more (not alt-) facts:
> 
> - The machine we've tested is a Cherry Trail based box with two
>   DisplayPorts.  Intel team mentioned that there are other machines
>   suffering from the same problem.

Is it really somehow tied to the machine? I would imagine it should
behave exactly the same way no matter what machine you have.

> 
> - With some monitors, the screen remains blank during boot and on X.
>   This can be cured after "xset dpms force off" and resume, or
>   reconfiguring via xrandr.
> 
> - The issue seems specific to DP connections.  When two (identical)
>   monitors are connected, only one monitor goes blank.

Hmm. Have you tried 9f2bdb006a7e ("drm/i915: Prevent PPS stealing
from a normal DP port on VLV/CHV") ?

> 
> - The issue happens only with some monitor models (Dell E-series).
>   Other Dell monitors (e.g. U-series) or other vendors seem working as
>   far as we've tested.
> 
> - Intel team mentioned that a similar issue was seen on a Baytrail
>   machine.
> 
> - The register value seems passed correctly.  The read back after the
>   register write showed the expected value.
>   Also, spinning more times in DPMS_ON loop didn't help, too.
> 
> - The issue is reproduced with the recent kernels (at least 4.9.x)
> 
> 
> Any comments / suggestions appreciated.
> 
> thanks,
> 
> Takashi
> 
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -2205,8 +2205,12 @@ void intel_dp_sink_dpms(struct intel_dp
>  		return;
>  
>  	if (mode != DRM_MODE_DPMS_ON) {
> +#if 0
>  		ret = drm_dp_dpcd_writeb(&intel_dp->aux, DP_SET_POWER,
>  					 DP_SET_POWER_D3);
> +#else
> +		ret = 1;
> +#endif
>  	} else {
>  		/*
>  		 * When turning on, we need to retry for 1ms to give the sink
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
Takashi Iwai Jan. 26, 2017, 2:19 p.m. UTC | #2
On Thu, 26 Jan 2017 14:58:55 +0100,
Ville Syrjälä wrote:
> 
> On Wed, Jan 25, 2017 at 01:56:35PM +0100, Takashi Iwai wrote:
> > Hi,
> > 
> > we've got a bug report about the blank monitor on Cherry Trail
> > machines.  And, Intel team (Cc'ed) spotted out that this seems
> > triggered by DPMS transition.  A patch like below actually fixes the
> > problem.
> > 
> > Of course it doesn't look like a right "fix".  Do you guys have any
> > hint for further debugging?
> 
> Is it some kind of new fangled MST capable monitor? I've noticed that
> those tend to be super easy to mess up.

The monitors are in Dell team.  Sridhara, could you give details about
the problematic monitors?


> > Some more (not alt-) facts:
> > 
> > - The machine we've tested is a Cherry Trail based box with two
> >   DisplayPorts.  Intel team mentioned that there are other machines
> >   suffering from the same problem.
> 
> Is it really somehow tied to the machine? I would imagine it should
> behave exactly the same way no matter what machine you have.

A good question.  Again the question is delegated to Sridhara :)


> > - With some monitors, the screen remains blank during boot and on X.
> >   This can be cured after "xset dpms force off" and resume, or
> >   reconfiguring via xrandr.
> > 
> > - The issue seems specific to DP connections.  When two (identical)
> >   monitors are connected, only one monitor goes blank.
> 
> Hmm. Have you tried 9f2bdb006a7e ("drm/i915: Prevent PPS stealing
> from a normal DP port on VLV/CHV") ?

No, it's not tested.  I'll prepare a test kernel with it.

Thanks!


Takashi
Sridhara.Venkatanara@dell.com Jan. 27, 2017, 7:13 a.m. UTC | #3
Please find My replay.



Thanks

Sridhar



-----Original Message-----
From: Takashi Iwai [mailto:tiwai@suse.de]

Sent: Thursday, January 26, 2017 7:50 PM
To: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: intel-gfx <intel-gfx@lists.freedesktop.org>; Michal Marek <mmarek@suse.cz>; Chen, Angus <angus.chen@intel.com>; Jeffrey Cheung <jcheung@suse.com>; Hsu, Ray <ray.hsu@intel.com>; Venkatanara, Sridhara <Sridhara_Venkatanara@DELL.com>
Subject: Re: [Intel-gfx] Broken DPMS with DisplayPort on CHV (also BYT?)



On Thu, 26 Jan 2017 14:58:55 +0100,

Ville Syrjälä wrote:

>


> On Wed, Jan 25, 2017 at 01:56:35PM +0100, Takashi Iwai wrote:


> > Hi,


> >


> > we've got a bug report about the blank monitor on Cherry Trail


> > machines.  And, Intel team (Cc'ed) spotted out that this seems


> > triggered by DPMS transition.  A patch like below actually fixes the


> > problem.


> >


> > Of course it doesn't look like a right "fix".  Do you guys have any


> > hint for further debugging?


>


> Is it some kind of new fangled MST capable monitor? I've noticed that


> those tend to be super easy to mess up.




The monitors are in Dell team.  Sridhara, could you give details about the problematic monitors?



[Sridhar] Monitor types  E2316H, E2216H

http://www.dell.com/ed/business/p/dell-e2316h-monitor/pd



> > Some more (not alt-) facts:


> >


> > - The machine we've tested is a Cherry Trail based box with two


> >   DisplayPorts.  Intel team mentioned that there are other machines


> >   suffering from the same problem.


>


> Is it really somehow tied to the machine? I would imagine it should


> behave exactly the same way no matter what machine you have.




A good question.  Again the question is delegated to Sridhara :)



[Sridhar] It is tied to the Cherry Trail based box. Not observed with Bay Trail machines.



> > - With some monitors, the screen remains blank during boot and on X.


> >   This can be cured after "xset dpms force off" and resume, or


> >   reconfiguring via xrandr.


> >


> > - The issue seems specific to DP connections.  When two (identical)


> >   monitors are connected, only one monitor goes blank.


>


> Hmm. Have you tried 9f2bdb006a7e ("drm/i915: Prevent PPS stealing from


> a normal DP port on VLV/CHV") ?




No, it's not tested.  I'll prepare a test kernel with it.



Thanks!





Takashi
Takashi Iwai Jan. 27, 2017, 10:29 a.m. UTC | #4
On Thu, 26 Jan 2017 15:19:44 +0100,
Takashi Iwai wrote:
> 
> On Thu, 26 Jan 2017 14:58:55 +0100,
> Ville Syrjälä wrote:
> > 
> > Hmm. Have you tried 9f2bdb006a7e ("drm/i915: Prevent PPS stealing
> > from a normal DP port on VLV/CHV") ?
> 
> No, it's not tested.  I'll prepare a test kernel with it.

Sridhara reported that my backport didn't help, unfortunately.

But it was a backport, so I might have missed something.
To be sure, I'll try to build a kernel from drm-intel-nightly, and let
them test again.


thanks,

Takashi
Jeffrey Cheung Jan. 31, 2017, 2:34 a.m. UTC | #5
Hi Takashi

How is the test kernel ?  Just wonder when Sridhara team can test again. 

Regards

Jeffrey

>>> Takashi Iwai <tiwai@suse.de> 2017/1/27 下午 18:29 >>>On Thu, 26 Jan 2017 15:19:44 +0100,
Takashi Iwai wrote:
> 
> On Thu, 26 Jan 2017 14:58:55 +0100,
> Ville Syrjälä wrote:
> > 
> > Hmm. Have you tried 9f2bdb006a7e ("drm/i915: Prevent PPS stealing
> > from a normal DP port on VLV/CHV") ?
> 
> No, it's not tested.  I'll prepare a test kernel with it.

Sridhara reported that my backport didn't help, unfortunately.

But it was a backport, so I might have missed something.
To be sure, I'll try to build a kernel from drm-intel-nightly, and let
them test again.


thanks,

Takashi
Takashi Iwai Jan. 31, 2017, 5:49 a.m. UTC | #6
On Tue, 31 Jan 2017 03:34:23 +0100,
Jeffrey Cheung wrote:
> 
> Hi Takashi
> 
> How is the test kernel ?  Just wonder when Sridhara team can test again. 

I already informed it in bugzilla and waiting for the test result...
  http://bugzilla.suse.com/show_bug.cgi?id=1019061#c35

It's found in
  http://download.opensuse.org/repositories/home:/tiwai:/bnc1019061-3/standard/


Takashi

> 
> Regards
> 
> Jeffrey
> 
> >>> Takashi Iwai <tiwai@suse.de> 2017/1/27 下午 18:29 >>>On Thu, 26 Jan 2017 15:19:44 +0100,
> Takashi Iwai wrote:
> > 
> > On Thu, 26 Jan 2017 14:58:55 +0100,
> > Ville Syrjälä wrote:
> > > 
> > > Hmm. Have you tried 9f2bdb006a7e ("drm/i915: Prevent PPS stealing
> > > from a normal DP port on VLV/CHV") ?
> > 
> > No, it's not tested.  I'll prepare a test kernel with it.
> 
> Sridhara reported that my backport didn't help, unfortunately.
> 
> But it was a backport, so I might have missed something.
> To be sure, I'll try to build a kernel from drm-intel-nightly, and let
> them test again.
> 
> 
> thanks,
> 
> Takashi
>
Jeffrey Cheung Jan. 31, 2017, 6:09 a.m. UTC | #7
Hi Takashi

Thanks a lot. 

---

Hi Sridhara

Can you please try the test kernel ?

Regards

Jeffrey

>>> Takashi Iwai <tiwai@suse.de> 2017/1/31 下午 13:49 >>>On Tue, 31 Jan 2017 03:34:23 +0100,
Jeffrey Cheung wrote:
> 
> Hi Takashi
> 
> How is the test kernel ?  Just wonder when Sridhara team can test again. 

I already informed it in bugzilla and waiting for the test result...
  http://bugzilla.suse.com/show_bug.cgi?id=1019061#c35

It's found in
  http://download.opensuse.org/repositories/home:/tiwai:/bnc1019061-3/standard/


Takashi

> 
> Regards
> 
> Jeffrey
> 
> >>> Takashi Iwai <tiwai@suse.de> 2017/1/27 下午 18:29 >>>On Thu, 26 Jan 2017 15:19:44 +0100,
> Takashi Iwai wrote:
> > 
> > On Thu, 26 Jan 2017 14:58:55 +0100,
> > Ville Syrjälä wrote:
> > > 
> > > Hmm. Have you tried 9f2bdb006a7e ("drm/i915: Prevent PPS stealing
> > > from a normal DP port on VLV/CHV") ?
> > 
> > No, it's not tested.  I'll prepare a test kernel with it.
> 
> Sridhara reported that my backport didn't help, unfortunately.
> 
> But it was a backport, so I might have missed something.
> To be sure, I'll try to build a kernel from drm-intel-nightly, and let
> them test again.
> 
> 
> thanks,
> 
> Takashi
>
Sridhara.Venkatanara@dell.com Jan. 31, 2017, 7:35 a.m. UTC | #8
Hi,

Installed RPM,

Issue still present with Single Dell E- Series monitor (Display doesn't appear )
Issue not observed with Dual Dell E-Series monitor. 
Sleep issue not observed.

Thanks
Sridhar

-----Original Message-----
From: Jeffrey Cheung [mailto:jcheung@suse.com] 

Sent: Tuesday, January 31, 2017 11:39 AM
To: tiwai@suse.de
Cc: Venkatanara, Sridhara <Sridhara_Venkatanara@DELL.com>; angus.chen@intel.com; ray.hsu@intel.com; ville.syrjala@linux.intel.com; intel-gfx@lists.freedesktop.org; mmarek@suse.cz
Subject: Re: [Intel-gfx] Broken DPMS with DisplayPort on CHV (also BYT?)

Hi Takashi

Thanks a lot. 

---

Hi Sridhara

Can you please try the test kernel ?

Regards

Jeffrey

>>> Takashi Iwai <tiwai@suse.de> 2017/1/31 下午 13:49 >>>On Tue, 31 Jan 

>>> 2017 03:34:23 +0100,

Jeffrey Cheung wrote:
> 

> Hi Takashi

> 

> How is the test kernel ?  Just wonder when Sridhara team can test again. 


I already informed it in bugzilla and waiting for the test result...
  http://bugzilla.suse.com/show_bug.cgi?id=1019061#c35

It's found in
  http://download.opensuse.org/repositories/home:/tiwai:/bnc1019061-3/standard/


Takashi

> 

> Regards

> 

> Jeffrey

> 

> >>> Takashi Iwai <tiwai@suse.de> 2017/1/27 下午 18:29 >>>On Thu, 26 Jan 

> >>> 2017 15:19:44 +0100,

> Takashi Iwai wrote:

> > 

> > On Thu, 26 Jan 2017 14:58:55 +0100,

> > Ville Syrjälä wrote:

> > > 

> > > Hmm. Have you tried 9f2bdb006a7e ("drm/i915: Prevent PPS stealing 

> > > from a normal DP port on VLV/CHV") ?

> > 

> > No, it's not tested.  I'll prepare a test kernel with it.

> 

> Sridhara reported that my backport didn't help, unfortunately.

> 

> But it was a backport, so I might have missed something.

> To be sure, I'll try to build a kernel from drm-intel-nightly, and let 

> them test again.

> 

> 

> thanks,

> 

> Takashi

>
Jeffrey Cheung Jan. 31, 2017, 9:02 a.m. UTC | #9
Ok, look like we have improvement of using the drm-intel-nightly tree kernel. 

Hi takashi and ville, any clue of the single dell e type monitor ?

Regards

Jeffrey


>>> <Sridhara.Venkatanara@dell.com> 2017/1/31 下午 15:36 >>>Hi,

Installed RPM,

Issue still present with Single Dell E- Series monitor (Display doesn't appear )
Issue not observed with Dual Dell E-Series monitor. 
Sleep issue not observed.

Thanks
Sridhar

-----Original Message-----
From: Jeffrey Cheung [mailto:jcheung@suse.com] 
Sent: Tuesday, January 31, 2017 11:39 AM
To: tiwai@suse.de
Cc: Venkatanara, Sridhara <Sridhara_Venkatanara@DELL.com>; angus.chen@intel.com; ray.hsu@intel.com; ville.syrjala@linux.intel.com; intel-gfx@lists.freedesktop.org; mmarek@suse.cz
Subject: Re: [Intel-gfx] Broken DPMS with DisplayPort on CHV (also BYT?)

Hi Takashi

Thanks a lot. 

---

Hi Sridhara

Can you please try the test kernel ?

Regards

Jeffrey

>>> Takashi Iwai <tiwai@suse.de> 2017/1/31 下午 13:49 >>>On Tue, 31 Jan 
>>> 2017 03:34:23 +0100,
Jeffrey Cheung wrote:
> 
> Hi Takashi
> 
> How is the test kernel ?  Just wonder when Sridhara team can test again. 

I already informed it in bugzilla and waiting for the test result...
  http://bugzilla.suse.com/show_bug.cgi?id=1019061#c35

It's found in
  http://download.opensuse.org/repositories/home:/tiwai:/bnc1019061-3/standard/


Takashi

> 
> Regards
> 
> Jeffrey
> 
> >>> Takashi Iwai <tiwai@suse.de> 2017/1/27 下午 18:29 >>>On Thu, 26 Jan 
> >>> 2017 15:19:44 +0100,
> Takashi Iwai wrote:
> > 
> > On Thu, 26 Jan 2017 14:58:55 +0100,
> > Ville Syrjälä wrote:
> > > 
> > > Hmm. Have you tried 9f2bdb006a7e ("drm/i915: Prevent PPS stealing 
> > > from a normal DP port on VLV/CHV") ?
> > 
> > No, it's not tested.  I'll prepare a test kernel with it.
> 
> Sridhara reported that my backport didn't help, unfortunately.
> 
> But it was a backport, so I might have missed something.
> To be sure, I'll try to build a kernel from drm-intel-nightly, and let 
> them test again.
> 
> 
> thanks,
> 
> Takashi
>
diff mbox

Patch

--- a/drivers/gpu/drm/i915/intel_dp.c
+++ b/drivers/gpu/drm/i915/intel_dp.c
@@ -2205,8 +2205,12 @@  void intel_dp_sink_dpms(struct intel_dp
 		return;
 
 	if (mode != DRM_MODE_DPMS_ON) {
+#if 0
 		ret = drm_dp_dpcd_writeb(&intel_dp->aux, DP_SET_POWER,
 					 DP_SET_POWER_D3);
+#else
+		ret = 1;
+#endif
 	} else {
 		/*
 		 * When turning on, we need to retry for 1ms to give the sink