DP and HDMI will stop output after resumed from S3. Reproduce Steps ============== 1, connected DP and HDMI 2, do S3: $ echo mem > /sys/power/state Expected Result ============= Both DP and HDMI will continue to output after resumed from S3 Actual Result =========== DP and HDMI go black screen. System Environment ======= linux OS version: Ubuntu 15.10 CRB: Apollo Lake RVP1a FabA Platform: Apollo Lake Platform BIOS:APLKRVPA.X86.-119.R10.1601031622 Tree: git://anongit.freedesktop.org/drm-intel Branch: drm-intel-nightly Commit: 60803e27ae17d7e853c7872c5574f9380b902a57
Update: regression is found with drm-intel-testing-2016-02-29, the detailed results show as following: Case 1: only eDP connected S3 is normal for the first time, but system will hang there (resuming more than 10 mins) when do S3 again Case 2: only DP connected Unable to resume from S3(resuming more than 10 mins). Case 3: only HDMI connected Unable to resume from S3(resuming more than 10 mins). Case 4: DP and HDMI connected Unable to resume from S3(resuming more than 10 mins). Case 5: eDP and DP connected System can resume normally from S3 for the first time, but DP stop working. System will hang there when do S3 again. Case 6: eDP and HDMI connected System can resume normally form S3 for the first 1-2 times, but HDMI stop working. System will hang there when do S3 again. Case 7: eDP, DP and HDMI all connected No output from DP and HDMI and the resuming time is more than 5 mins. After system resumed, the analog audio is works well. But system will hang there when do S3 again. Test Environment: Platform: Apollo lake RVP1a FabA BIOS: APLKRVPA.X64.0119.R10.1601031622 KSC FW:1.05 BXT SOC : A0 GOP : 10.0.1022 Board ID: APL RVP 1A (01) CPU Flavor: BXT Tablet (0) FAB ID: FAB1 Total Memory : 8GB Kernel:4.5.0-rc5+ Tree: git://anongit.freedesktop.org/drm-intel Branch:drm-intel-testing Commit: a27657a39741599ce9feef1ef39ae6654e9e6768 tag ID: drm-intel-testing-2016-02-29
Please boot with drm.debug=0xe, reproduce the bug, then attach the dmesg output here. Since this is a regression, can you please bisect it and report which one is the bad commit?
Created attachment 122197 [details] dmesg with drm.debug=0xe
Who can help do the bisect? gfx QA team?
With the latest configuration we can still observed this issue on BXT-P Hardware information ===================== Platform BXT-P Motherboard model Broxton P Motherboard type NOTEBOOK Hand Held Motherboard manufacturer Intel Corp. CPU family Other CPU information 06/5c GPU Card Intel Corporation Device 5a84 (rev 03) (prog-if 00 [VGA controller]) Software information ====================== Linux distribution : Ubuntu 15.10 Architecture : 64-bit --> Component : drm url : http://cgit.freedesktop.org/mesa/drm tag : libdrm-2.4.67-5-gea07de9 commit : ea07de9 author : Rodrigo Vivi <rodrigo.vivi@intel.com> age : 13 days ago --> Component : mesa url : http://cgit.freedesktop.org/mesa/mesa tag : mesa-11.1.2 commit : 7bcd827 author : Emil Velikov <emil.velikov@collabora.com> age : 5 weeks ago --> Component : xf86-video-intel url : http://cgit.freedesktop.org/xorg/driver/xf86-video-intel tag : 2.99.917-560-gd167280 commit : d167280 author : Chris Wilson <chris@chris-wilson.co.uk> age : 3 weeks ago --> Component : libva url : http://cgit.freedesktop.org/libva/ tag : libva-1.7.0.pre1 commit : 35f1447 author : Xiang Haihao <haihao.xiang@intel.com> age : 11 days ago --> Component : vaapi (intel-driver) url : http://cgit.freedesktop.org/vaapi/intel-driver tag : 1.7.0.pre1 commit : ab8e4e3 author : Xiang Haihao <haihao.xiang@intel.com> age : 11 days ago --> Component : cairo url : http://cgit.freedesktop.org/cairo tag : 1.15.2 commit : db8a7f1 author : Bryce Harrington <bryce@osg.samsung.com> age : 3 months ago --> Component : xserver url : http://cgit.freedesktop.org/xorg/xserver tag : xorg-server-1.18.1 commit : 23e60f9 author : Adam Jackson <ajax@redhat.com> age : 5 weeks ago --> Component : intel-gpu-tools url : http://cgit.freedesktop.org/xorg/app/intel-gpu-tools tag : intel-gpu-tools-1.14-23-g364d378 commit : 364d378 author : Paulo Zanoni <paulo.r.zanoni@intel.com> age : 10 days ago kernel ========= drm-intel-testing / commit a27657a commit a27657a39741599ce9feef1ef39ae6654e9e6768 Author: Daniel Vetter <daniel.vetter@ffwll.ch> Date: Mon Feb 29 09:42:22 2016 +0100 drm-intel-nightly: 2016y-02m-29d-08h-41m-12s UTC integration manifest Kernel version : 4.5.0-rc5 Architecture : source amd64 all
Was this reproducible only on BXT-P/APL platform? Or the issue appeared on SKL as well?
(In reply to Daniela Prodan from comment #6) > Was this reproducible only on BXT-P/APL platform? Or the issue appeared on > SKL as well? It also appeared for me on SKL, related (I think) bug: https://bugs.freedesktop.org/show_bug.cgi?id=91904
Hi Daniela, Mikolaj, The issue is only reproduced on BXT-P/APL, not reproduced on SKL with recent commits.
tried with latest drm-nightly commit and get the same result, The issue is reproduced on BXT-P and not reproduced on SKL.
I tried to reproduce it on a SKL (Lenovo E31 laptop, i5-6200u) with latest on drm-intel-nightly. I connected an HDMI monitor, the problem doesn't reproduce. Both screens show the correct output after resume. The callstack in the dmesg is not related to this problem - it's a known issue (https://bugs.freedesktop.org/show_bug.cgi?id=89055) on SKL with multiple pipes. Anyway, that's a harmless warning and the fix is in progress. I'm sorry, I don't have access to a BXT-P
Hi All, The latest status is: in GUI mode: it works in text mode, display shows nothing
*** Bug 94772 has been marked as a duplicate of this bug. ***
Hi with the following kernel and the patch from http://patchwork.freedesktop.org/patch/72566/ kernel ======= commit f5d413cccefa1f93d64c34f357151d42add63a84 Author: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Date: Thu Mar 24 14:35:16 2016 +0000 drm-intel-nightly: 2016y-03m-24d-14h-34m-29s UTC integration manifest after resume from S3 DP issue is gone, but HDMI still continue DP is recognized as : DP2 HDMI is recognized as : DP1 BXT configuration ================= BIOS : 129.10 BXT Soc : A0 KSC : 1.12 Board ID : APL RVP 1A (01) FAB1 attachtments ============ dmesg_HDMI_DP.log
Created attachment 122722 [details] dmesg_HDMI_DP.log
Matt, The patch you pointed in 93915 partially fixes this bug. I also add Bob Paauwe in cc. Can the patch be improved to fully fix it?
The VBT solution is pushed to dinq commit d252bf68b75792108ae2821c3a6e1cdc58e88cb9 Author: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com> Date: Thu Mar 31 16:11:47 2016 +0530 drm/i915: Set invert bit for hpd based on VBT Can QA please verify whether this solves this problem
Humberto please use this new version (based on VBT) ; it fixed also #93915 Thanks
(In reply to cprigent from comment #15) > The patch you pointed in 93915 partially fixes this bug. (In reply to yann from comment #17) > it fixed also #93915 Side note, please reference other bugs by writing "bug 93915". Please reference comments by writing "comment #15". This will turn them to links. Thanks.
(In reply to Kimmo Nikkanen from comment #16) > The VBT solution is pushed to dinq > > commit d252bf68b75792108ae2821c3a6e1cdc58e88cb9 > Author: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com> > Date: Thu Mar 31 16:11:47 2016 +0530 > > drm/i915: Set invert bit for hpd based on VBT > > > Can QA please verify whether this solves this problem Hi : after test this commit we can see the same issue, DP works after S3 but HDMI not. commit d252bf68b75792108ae2821c3a6e1cdc58e88cb9 Author: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com> Date: Thu Mar 31 16:11:47 2016 +0530 drm/i915: Set invert bit for hpd based on VBT This patch sets the invert bit for hpd detection for each port based on VBT configuration. Since each AOB can be designed to depend on invert bit or not, it is expected if an AOB requires invert bit, the user will set respective bit in VBT. v2: Separated VBT parsing from the rest of the logic. (Jani) v3: Moved setting invert bit logic to bxt_hpd_irq_setup() and changed its logic to avoid looping twice. (Ville) v4: Changed the logic to mask out the bits first and then set them to remove need of temporary variable. (Ville) v5: Moved defines to existing set of defines for the register and added required breaks. (Ville) Signed-off-by: Sivakumar Thulasimani <sivakumar.thulasimani@intel.com> Signed-off-by: Durgadoss R <durgadoss.r@intel.com> Signed-off-by: Shubhangi Shrivastava <shubhangi.shrivastava@intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> [Jani: fixed some checkpatch noise, added kernel-doc.] Signed-off-by: Jani Nikula <jani.nikula@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/1459420907-11383-2-git-send-email-shubhangi.shrivastava@intel.com Architecture: source amd64 all Version: 4.5.0-rc7
attached dmesg for the last comment "dmesg_HDMI.log"
Created attachment 122774 [details] dmesg_HDMI.log
(In reply to Humberto Israel Perez Rodriguez from comment #21) > Created attachment 122774 [details] > dmesg_HDMI.log Could you please provide the same log booting with drm.debug=14? There are two blocks of stacked DDI/HDMI connectors next to each other on the board marked with DDI0 and DDI1. Are you connecting the HDMI display to the plug in the left or the right block? Do you have the same problem with HDMI if you connect it to the other port?
(In reply to Imre Deak from comment #22) > (In reply to Humberto Israel Perez Rodriguez from comment #21) > > Created attachment 122774 [details] > > dmesg_HDMI.log > > Could you please provide the same log booting with drm.debug=14? > > There are two blocks of stacked DDI/HDMI connectors next to each other on > the board marked with DDI0 and DDI1. Are you connecting the HDMI display to > the plug in the left or the right block? > > Do you have the same problem with HDMI if you connect it to the other port? Hi Deek : the BXT-P platform the HDMI port is only enabled in the right port, in the left port is for DP onl. after try for second time to go S3 with the DUT with the kernel commit : d252bf68b75792108ae2821c3a6e1cdc58e88cb9 branch : drm-intel-nightly the DUT is not able to resume from S3 if is connected any external display (DP / HDMI)
(In reply to Humberto Israel Perez Rodriguez from comment #13) > DP is recognized as : DP2 > HDMI is recognized as : DP1 Smells like lspcon.
The patch seems not reproduced after upgrade BIOS to V126, could anyone help to double check? Platform: Apollo lake RVP1a FabA BIOS: APLKRVPA.X64.0126.B51.1602260229 KSC FW:1.10 BXT SOC : B0 GOP : 10.0.1025 Board ID: APL RVP 1A (01) CPU Flavor: BXT Tablet (0) FAB ID: FAB1 Total Memory : 8GB Kernel:4.6.0-rc2 Tree: git://anongit.freedesktop.org/drm-intel Branch:drm-intel-nightly Commit: 851708c7e97537ed618fadbe5d342eaf8fa5146d HW-rework: F-28C, F-27
Humberto, please re-test using BIOS APLKRVPA.X64.0126.B51.1602260229
I believe that S3 failing in itself (so not the hotplug issue originally reported) is not a BIOS issue. I could reproduce it on my machine with a recent BIOS: APLKRVPA.X64.0130.B11.1603210634 With a few fixes S3 works now for me and those fixes could be also relevant here. So Humberto, besides trying to upgrade the BIOS as Yann suggested could you also try the following branch: https://github.com/ideak/linux/commits/bxt-rpm
(In reply to Imre Deak from comment #27) > I believe that S3 failing in itself (so not the hotplug issue originally > reported) is not a BIOS issue. I could reproduce it on my machine with a > recent BIOS: > APLKRVPA.X64.0130.B11.1603210634 > > With a few fixes S3 works now for me and those fixes could be also relevant > here. > So Humberto, besides trying to upgrade the BIOS as Yann suggested could you > also try the following branch: > https://github.com/ideak/linux/commits/bxt-rpm Hi Imre Deak : i tried with a newer bios 131.10 and the branch : https://github.com/ideak/linux/commits/bxt-rpm, but is the same issue, after return from S3 the HDMI is not seen and xrandr also does not recognize it kernel info ================== commit 068ab4d97212c00defebf525821001785c7caf2e Author: Imre Deak <imre.deak@intel.com> Date: Fri Apr 8 20:40:16 2016 +0300 drm/i915/bxt: Sanitize DC state tracking after suspend-to-ram and -disk After suspend-to-ram or -disk we don't know what power state the display is, DC0 or DC9 are both possible states, so reset the DC software tracking in these cases. This gets rid of 'DC state mismatch' error messages during suspend to ram and disk which is a false positive based on the above. Signed-off-by: Imre Deak <imre.deak@intel.com> branch = bxt-rmp kernel = 4.6.0-rc2
Created attachment 122827 [details] dmesg_bios_131.1
(In reply to Humberto Israel Perez Rodriguez from comment #28) > (In reply to Imre Deak from comment #27) > > I believe that S3 failing in itself (so not the hotplug issue originally > > reported) is not a BIOS issue. I could reproduce it on my machine with a > > recent BIOS: > > APLKRVPA.X64.0130.B11.1603210634 > > > > With a few fixes S3 works now for me and those fixes could be also relevant > > here. > > So Humberto, besides trying to upgrade the BIOS as Yann suggested could you > > also try the following branch: > > https://github.com/ideak/linux/commits/bxt-rpm > > Hi Imre Deak : > > i tried with a newer bios 131.10 and the branch : > https://github.com/ideak/linux/commits/bxt-rpm, but is the same issue, after > return from S3 the HDMI is not seen and xrandr also does not recognize it > > kernel info > ================== > commit 068ab4d97212c00defebf525821001785c7caf2e > Author: Imre Deak <imre.deak@intel.com> > Date: Fri Apr 8 20:40:16 2016 +0300 > > drm/i915/bxt: Sanitize DC state tracking after suspend-to-ram and -disk > > After suspend-to-ram or -disk we don't know what power state the display > is, DC0 or DC9 are both possible states, so reset the DC software > tracking > in these cases. This gets rid of 'DC state mismatch' error messages > during suspend to ram and disk which is a false positive based on the > above. > > Signed-off-by: Imre Deak <imre.deak@intel.com> > > branch = bxt-rmp > kernel = 4.6.0-rc2 Well, in comment#23 you said: "the DUT is not able to resume from S3 if is connected any external display (DP / HDMI)" This means to me that not only that HDMI is not detected after S3 resume, but S3 doesn't work at all, that is the machine hangs or similar generic issue. Could you clarify what did you mean in comment#23? That is does S3 work at all for you with current -nightly (is the system still alive, can you SSH in)? With the above branch do you have working eDP/DP after S3 suspend/resume? Not detecting HDMI after S3 is expected. The HDMI port is routed through the LSPCON protocol converter and the driver doesn't have support for that (patches are under review). Since BIOS configures LSPCON you will have a working output right after booting, but that configuration will be lost after S3 suspend/resume.
(In reply to Imre Deak from comment #30) > (In reply to Humberto Israel Perez Rodriguez from comment #28) > > (In reply to Imre Deak from comment #27) > > > I believe that S3 failing in itself (so not the hotplug issue originally > > > reported) is not a BIOS issue. I could reproduce it on my machine with a > > > recent BIOS: > > > APLKRVPA.X64.0130.B11.1603210634 > > > > > > With a few fixes S3 works now for me and those fixes could be also relevant > > > here. > > > So Humberto, besides trying to upgrade the BIOS as Yann suggested could you > > > also try the following branch: > > > https://github.com/ideak/linux/commits/bxt-rpm > > > > Hi Imre Deak : > > > > i tried with a newer bios 131.10 and the branch : > > https://github.com/ideak/linux/commits/bxt-rpm, but is the same issue, after > > return from S3 the HDMI is not seen and xrandr also does not recognize it > > > > kernel info > > ================== > > commit 068ab4d97212c00defebf525821001785c7caf2e > > Author: Imre Deak <imre.deak@intel.com> > > Date: Fri Apr 8 20:40:16 2016 +0300 > > > > drm/i915/bxt: Sanitize DC state tracking after suspend-to-ram and -disk > > > > After suspend-to-ram or -disk we don't know what power state the display > > is, DC0 or DC9 are both possible states, so reset the DC software > > tracking > > in these cases. This gets rid of 'DC state mismatch' error messages > > during suspend to ram and disk which is a false positive based on the > > above. > > > > Signed-off-by: Imre Deak <imre.deak@intel.com> > > > > branch = bxt-rmp > > kernel = 4.6.0-rc2 > > Well, in comment#23 you said: > "the DUT is not able to resume from S3 if is connected any external display > (DP / HDMI)" > > This means to me that not only that HDMI is not detected after S3 resume, > but S3 doesn't work at all, that is the machine hangs or similar generic > issue. Could you clarify what did you mean in comment#23? That is does S3 > work at all for you with current -nightly (is the system still alive, can > you SSH in)? With the above branch do you have working eDP/DP after S3 > suspend/resume? > > Not detecting HDMI after S3 is expected. The HDMI port is routed through the > LSPCON protocol converter and the driver doesn't have support for that > (patches are under review). Since BIOS configures LSPCON you will have a > working output right after booting, but that configuration will be lost > after S3 suspend/resume. In the comment 23, i said that only with the commit d252bf68b75792108ae2821c3a6e1cdc58e88cb9 i was not able to resume by second time , but with any other commit from drm-intel-nightly s3 works without issue. with the branch https://github.com/ideak/linux/commits/bxt-rpm, i can resume from S3 with eDP, i did not try with DP because right now our other BXT-P is busy, in my current BXT only has eDP + HDMI (DP port is not working)
(In reply to Humberto Israel Perez Rodriguez from comment #31) > (In reply to Imre Deak from comment #30) > > (In reply to Humberto Israel Perez Rodriguez from comment #28) > > > (In reply to Imre Deak from comment #27) > > > > I believe that S3 failing in itself (so not the hotplug issue originally > > > > reported) is not a BIOS issue. I could reproduce it on my machine with a > > > > recent BIOS: > > > > APLKRVPA.X64.0130.B11.1603210634 > > > > > > > > With a few fixes S3 works now for me and those fixes could be also relevant > > > > here. > > > > So Humberto, besides trying to upgrade the BIOS as Yann suggested could you > > > > also try the following branch: > > > > https://github.com/ideak/linux/commits/bxt-rpm > > > > > > Hi Imre Deak : > > > > > > i tried with a newer bios 131.10 and the branch : > > > https://github.com/ideak/linux/commits/bxt-rpm, but is the same issue, after > > > return from S3 the HDMI is not seen and xrandr also does not recognize it > > > > > > kernel info > > > ================== > > > commit 068ab4d97212c00defebf525821001785c7caf2e > > > Author: Imre Deak <imre.deak@intel.com> > > > Date: Fri Apr 8 20:40:16 2016 +0300 > > > > > > drm/i915/bxt: Sanitize DC state tracking after suspend-to-ram and -disk > > > > > > After suspend-to-ram or -disk we don't know what power state the display > > > is, DC0 or DC9 are both possible states, so reset the DC software > > > tracking > > > in these cases. This gets rid of 'DC state mismatch' error messages > > > during suspend to ram and disk which is a false positive based on the > > > above. > > > > > > Signed-off-by: Imre Deak <imre.deak@intel.com> > > > > > > branch = bxt-rmp > > > kernel = 4.6.0-rc2 > > > > Well, in comment#23 you said: > > "the DUT is not able to resume from S3 if is connected any external display > > (DP / HDMI)" > > > > This means to me that not only that HDMI is not detected after S3 resume, > > but S3 doesn't work at all, that is the machine hangs or similar generic > > issue. Could you clarify what did you mean in comment#23? That is does S3 > > work at all for you with current -nightly (is the system still alive, can > > you SSH in)? With the above branch do you have working eDP/DP after S3 > > suspend/resume? > > > > Not detecting HDMI after S3 is expected. The HDMI port is routed through the > > LSPCON protocol converter and the driver doesn't have support for that > > (patches are under review). Since BIOS configures LSPCON you will have a > > working output right after booting, but that configuration will be lost > > after S3 suspend/resume. > > In the comment 23, i said that only with the commit > d252bf68b75792108ae2821c3a6e1cdc58e88cb9 i was not able to resume by second > time , So by doing two consecutive S3 suspend/resumes? And how did things fail, did the system become totally unresponsive? That commit alone shouldn't cause any generic S3 failures, it should only affect whether your external DP will be detected or not. > but with any other commit from drm-intel-nightly s3 works without issue. You mean without d252bf68b75792108ae2821c3a6e1cdc58e88cb9, I assume. But with that commit DP detection started to work for you, except that for the second time something failed. I believe that this failure is still there in nightly and I hope that the bxt-rpm branch would fix it for you. > with the branch https://github.com/ideak/linux/commits/bxt-rpm, i can resume > from S3 with eDP, i did not try with DP because right now our other BXT-P is > busy, in my current BXT only has eDP + HDMI (DP port is not working) Is your current BXT a BXT-P? Do you know why DP port doesn't work on it? Please test with the BXT-P machine you originally reported the bug on if eDP + external DP work on both current -nightly and the bxt-rpm branch after a few S3 suspend/resume cycles.
Hi : i've tested in the original BXT where i saw this issue, please see my comments below : with drm-intel-nightly ========================= after try with nightly and several s3 suspend/resume iterations HDMI stop after resume from s3, please see the attached dmesg_nightly.log with drm.debug=14 as parameter commit c0a9d3a8bcf7f049a391a601578054d96708667e Author: Ville Syrjälä <ville.syrjala@linux.intel.com> Date: Thu Apr 14 15:22:39 2016 +0300 drm-intel-nightly: 2016y-04m-14d-12h-22m-13s UTC integration manifest Kernel version : 4.6.0-rc3 Architecture : source amd64 all with branch bxt-rpm from : https://github.com/ideak/linux =========================================================== after try with bxt-rpm branch and several s3 suspend/resume iterations HDMI stop after resume from s3, please see the attached dmesg_bxt_rpm.log with drm.debug=14 as parameter commit 72c0a995bd9c6e0d9ac8517180f305b1aae3ffa5 Author: Imre Deak <imre.deak@intel.com> Date: Wed Apr 13 17:35:40 2016 +0300 drm/i915/gen9: Put init power domains during suspend if DMC not loaded Signed-off-by: Imre Deak <imre.deak@intel.com> branch : bxt-rpm Note : for both kernels eDP + DP works after several S3 iterations without any issues
Created attachment 122940 [details] dmesg_bxt_rpm.log
Created attachment 122941 [details] dmesg_nightly.log
HDMI is not working when resuming form S3 due to LSPCON issue, this is tracked by: *https://bugs.freedesktop.org/show_bug.cgi?id=94558 As it works for eDP + DP, I propose we close it and track 94558.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.