Bug 86268 - [BSW Bisected] eDP goes black after running tesdisplay
Summary: [BSW Bisected] eDP goes black after running tesdisplay
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: XOrg git
Hardware: Other All
: highest blocker
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-11-14 02:19 UTC by Li Xu
Modified: 2017-02-10 08:55 UTC (History)
3 users (show)

See Also:
i915 platform:
i915 features:


Attachments
dmesg (123.51 KB, text/plain)
2014-11-14 02:19 UTC, Li Xu
no flags Details

Description Li Xu 2014-11-14 02:19:53 UTC
Created attachment 109444 [details]
dmesg

==System Environment==
--------------------------
Result on -next-queued 2014-11-13  22ba72f728eaf30e63ded0c0bb0484b4bc6f92d4
Non-working platforms: BSW

==kernel==
--------------------------
origin/drm-intel-nightly: 22ba72f728eaf30e63ded0c0bb0484b4bc6f92d4  


==Bug detailed description==
-----------------------------
We run the testdisplay case with eDP, screen can display correctly. 
But will goes black after all the display. And we can ssh into the machine.


Reproduce steps:
-------------------------
==Reproduce steps==
---------------------------- 
1. cd /GFX/Test/Intel-gpu-tools/intel-gpu-tools/tests
2. ./testdisplay -a
Comment 1 Li Xu 2014-11-17 07:17:14 UTC
We have try to bisect this bug, we can find a good point but when we try to continue , the machine can't light up ,we skip and skip again ,about 11 times,it still can't light up.

Bisect log shows as follows:

# good: [3eebaec630c2413a5e67bb7f49f0c6a53069a399] drm/i915: Update DRIVER_DATE to 20141024
git bisect good 3eebaec630c2413a5e67bb7f49f0c6a53069a399
# bad: [f1e0a6fc5af65661170eed49ba85339b54e5015a] drm/i915: Delete outdated comment in byt_pte_encode
git bisect bad f1e0a6fc5af65661170eed49ba85339b54e5015a
# skip: [35a9ad8af0bb0fa3525e6d0d20e32551d226f38e] Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
git bisect skip 35a9ad8af0bb0fa3525e6d0d20e32551d226f38e
# skip: [1fe473b3a21f35379467b0aac996c39b65249eba] staging: emxx_udc: fix style warnings: const strings should be const char
git bisect skip 1fe473b3a21f35379467b0aac996c39b65249eba
# skip: [673ce00c5d6cb9d49260b4cabeaf8972caee4c52] ARM: omap2plus_defconfig: Add support for distros with systemd
git bisect skip 673ce00c5d6cb9d49260b4cabeaf8972caee4c52
# skip: [db8b631d4bc4eaa9f7e13a6b0a287306cac0cb72] Allow mknod and mkfifo on SMB2/SMB3 mounts
git bisect skip db8b631d4bc4eaa9f7e13a6b0a287306cac0cb72
# skip: [5529c2cdfd87e64c5801bfb9788a89d78de03414] MAINTAINERS: CNS3xxx and IXP4xx update.
git bisect skip 5529c2cdfd87e64c5801bfb9788a89d78de03414
# skip: [8280bf00fdd87de876c4add5fa8ed05c18c78a2f] net/openvswitch: remove dup comment in vport.h
git bisect skip 8280bf00fdd87de876c4add5fa8ed05c18c78a2f
# skip: [c8c5ebcc5e33a0ae65b6b1cba8d257d423f25da0] Documentation: charger: max14577: Update the date of introducing ABI
git bisect skip c8c5ebcc5e33a0ae65b6b1cba8d257d423f25da0
# skip: [18b4bad312ffc82410173f6f265d43f8585d7e65] Documentation: bindings: net: add the Marvell PXA168 Ethernet controller
git bisect skip 18b4bad312ffc82410173f6f265d43f8585d7e65
# skip: [aaa693e3d8030e4cc531c71facb650ae0880f2fb] locktorture: Add test scenario for rwsem_lock
git bisect skip aaa693e3d8030e4cc531c71facb650ae0880f2fb
# skip: [30614cf34105c5b5b9a39c65a2ea32c58b03aa8e] altera-stapl: replace strnicmp with strncasecmp
git bisect skip 30614cf34105c5b5b9a39c65a2ea32c58b03aa8e
# skip: [1e2bb043f171084e5f34816a4268304512d35a46] perf annotate: Don't truncate Intel style addresses
git bisect skip 1e2bb043f171084e5f34816a4268304512d35a46
Comment 2 Yi Sun 2014-11-18 00:32:08 UTC
This is likely a regression since there is a solid 'good' & 'bad' point.
Mark it as regression, but failed to get the bisect results.
If anyone has idea on how to locate the regression, info us.
Comment 3 Daniel Vetter 2014-11-18 09:02:02 UTC
Could be that it's timing issue, and the screen going black after bootup is the same issue as screen going black on testdisplay.

Can you pls retry the bisect and instead of skipping mark them as bad? Hopefully that sheds some light onto this issue.
Comment 4 Li Xu 2014-11-19 07:28:44 UTC
With the good and bad point found yesterday,I try to bisect again. 
During the bisect,all the bad points I marked are all can't light up, except the first bad commit 6189b0369c67f5bc6687ee957b3c1317dbb78922,it is caused by running the testdisplay case.
Maybe it seems strange.

Bisect log shows as follows:

# good: [3eebaec630c2413a5e67bb7f49f0c6a53069a399] drm/i915: Update DRIVER_DATE to 20141024
git bisect good 3eebaec630c2413a5e67bb7f49f0c6a53069a399
# bad: [f1e0a6fc5af65661170eed49ba85339b54e5015a] drm/i915: Delete outdated comment in byt_pte_encode
git bisect bad f1e0a6fc5af65661170eed49ba85339b54e5015a
# bad: [6189b0369c67f5bc6687ee957b3c1317dbb78922] drm/i915/audio: set ELD Conn_Type at one place
git bisect bad 6189b0369c67f5bc6687ee957b3c1317dbb78922
# bad: [2d65a9f48fcdf7866aab6457bc707ca233e0c791] Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux
git bisect bad 2d65a9f48fcdf7866aab6457bc707ca233e0c791
# bad: [77c688ac87183537ed0fb84ec2cb8fa8ec97c458] Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
git bisect bad 77c688ac87183537ed0fb84ec2cb8fa8ec97c458
# bad: [8aff6ad5a393b8e2ad00dce4d278ecf41397bf0d] drm/radeon: add a backlight quirk for Amilo Xi 2550
git bisect bad 8aff6ad5a393b8e2ad00dce4d278ecf41397bf0d
# bad: [b5591bd6a66c0a8a289aa3e85e5f43284757d618] Merge branch 'drm-fixes-3.17' of git://people.freedesktop.org/~agd5f/linux into drm-fixes
git bisect bad b5591bd6a66c0a8a289aa3e85e5f43284757d618
# bad: [799028d5d85384cce140323be633c8d5f079193f] drm/radeon: don't reset sdma on CIK init
git bisect bad 799028d5d85384cce140323be633c8d5f079193f
# bad: [897eba827e8659a03a1b2f4e74389691f824783f] drm/radeon: Disable HDP flush before every CS again for < r600
git bisect bad 897eba827e8659a03a1b2f4e74389691f824783f
# bad: [64d8ee59577a2b1de73cc40c2ec661bddf71e8b0] drm/radeon: delete unused PTE_* defines
git bisect bad 64d8ee59577a2b1de73cc40c2ec661bddf71e8b0
# first bad commit: [64d8ee59577a2b1de73cc40c2ec661bddf71e8b0] drm/radeon: delete unused PTE_* defines
Comment 5 Daniel Vetter 2014-11-19 08:56:08 UTC
Ok, this seems to be messy. We have the last clearly good commit 3eebaec630c2413a5e67bb7f49f0c6 and last clearly bad commit 6189b0369c67f5bc6687ee957b3c13

Unfortunately that has a backmerge of -rc5 in it, so I suspect your boot-up troubles are because of that. I guess we need to track down the black-screen on boot-up problem first:
- Can you please double-check that you don't have this black screen on boot-up on latest -fixes?
- Can you please check what happens in the merge commit 041df3573d0ce74b7f2f505c4224c8ee9be14a7c That's the backmerge of -rc5 to dinq.

But yeah looks like we have overlapping regressions here :(
Comment 6 Gordon Jin 2014-11-20 04:25:44 UTC
Increase importance as it blocks 3D game testing (need change resolution) and likely CrOS as well.
Comment 7 Li Xu 2014-11-20 09:19:41 UTC
We have try 041df3573d0ce74b7f2f505c4224c8ee9be14a7c and run testdisplay -a,it can light up normal after all the display.
And  screen don't go black on boot-up on latest -fixes.
Comment 8 Daniel Vetter 2014-11-20 13:31:13 UTC
(In reply to Li Xu from comment #7)
> We have try 041df3573d0ce74b7f2f505c4224c8ee9be14a7c and run testdisplay
> -a,it can light up normal after all the display.
> And  screen don't go black on boot-up on latest -fixes.

Ah, sounds like git bisect has stormed into a dead-end then. Can you please redo the bisect with

good: 041df3573d0ce74b7f2f505c4224c8ee9be14a7c
bad: 6189b0369c67f5bc6687ee957b3c13

Between these two commits there's perfect linear history, so hopefully no risk for the bisect to go astray.

And it sounds a bit like this might persist across reboots, so please do a cold boot for each test cycle.
Comment 9 Brian Lovin 2014-11-21 01:27:00 UTC
Here's what I've found for the bad commit; it appears to be in the middle of a patch series Ville commited - Someone will have to take a look at what's going on.

093e3f134e2eff13503f708b81aecc2501e7aecb is the first bad commit
commit 093e3f134e2eff13503f708b81aecc2501e7aecb
Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
Date: Thu Oct 16 21:27:33 2014 +0300 

drm/i915: Hold the pps mutex across the whole panel power enable sequence


This commit doesn't revert cleanly on drm-intel-testing from 11/7, which was all I had time to test for now.
Comment 10 Li Xu 2014-11-21 02:23:07 UTC
(In reply to Brian Lovin from comment #9)
> Here's what I've found for the bad commit; it appears to be in the middle of
> a patch series Ville commited - Someone will have to take a look at what's
> going on.
> 
> 093e3f134e2eff13503f708b81aecc2501e7aecb is the first bad commit
> commit 093e3f134e2eff13503f708b81aecc2501e7aecb
> Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Date: Thu Oct 16 21:27:33 2014 +0300 
> 
> drm/i915: Hold the pps mutex across the whole panel power enable sequence
> 
> 
> This commit doesn't revert cleanly on drm-intel-testing from 11/7, which was
> all I had time to test for now.

We have tried with Brian's result, and find it can light up ,and after testdisplay screen can light up.

I finished the bisect, the result is following:
baa4e575d6a18dcd6f2e622784aa16ab24024f09 is the first bad commit
commit baa4e575d6a18dcd6f2e622784aa16ab24024f09
Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
Date:   Mon Oct 27 16:07:32 2014 +0200

    drm/i915: Enable pipe-a power well on chv

    It seems that the pipe-a power well has replaced the disp2d power well
    on chv. At least that's the case with the current punit firmware. So
    enable the pipe-a power and expand its domains to cover everything the
    disp2d well ought to cover.

    The other power wells (apart from the cmnlane wells) still seem awol
    in the current punit firmware. So leave them disabled in the code.

    This fixes a hilarious oops during resume on bsw where
    intel_hdmi_get_config() would read the port register and get back
    0xffffffff and thus think the port is enabled on pipe D. It would then
    go and index the pipe_to_crtc_mapping[] array with PIPE_D and blow up
    when intel_hdmi_get_config() tries to write to crtc->config. Someone
    really ought to replace all naked pipe_to_crtc_mapping[] uses with the
    appropriate function call so we could add a warning there if the pipe
    doesn't actually exist...

    We must also call the power seqeuencer state reset function from
    the pipe-a well disable just like we do from disp2d on vlv. Otherwise
    the eDP panel won't recover at resume time since the PPS has lost its
    hold on the port.

    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=84903
    Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org>
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Comment 11 Daniel Vetter 2014-11-21 08:44:15 UTC
(In reply to Brian Lovin from comment #9)
> Here's what I've found for the bad commit; it appears to be in the middle of
> a patch series Ville commited - Someone will have to take a look at what's
> going on.
> 
> 093e3f134e2eff13503f708b81aecc2501e7aecb is the first bad commit
> commit 093e3f134e2eff13503f708b81aecc2501e7aecb
> Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Date: Thu Oct 16 21:27:33 2014 +0300 
> 
> drm/i915: Hold the pps mutex across the whole panel power enable sequence
> 
> 
> This commit doesn't revert cleanly on drm-intel-testing from 11/7, which was
> all I had time to test for now.

Since we have two differnt bisect we might have two different bugs at hand. Brian, can you please file a new report for your issue?
Comment 12 Ville Syrjala 2014-11-21 11:49:37 UTC
(In reply to Li Xu from comment #10)
> I finished the bisect, the result is following:
> baa4e575d6a18dcd6f2e622784aa16ab24024f09 is the first bad commit
> commit baa4e575d6a18dcd6f2e622784aa16ab24024f09
> Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Date:   Mon Oct 27 16:07:32 2014 +0200
> 
>     drm/i915: Enable pipe-a power well on chv

The problems caused by that commit should be fixed by:

commit afd6275dd12381a7bd3750c125b3b68b5f8b03ca
Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
Date:   Thu Oct 30 19:43:03 2014 +0200

    drm/i915: Reinit display irqs and hpd from chv pipe-a power well
Comment 13 Gavin Hindman 2014-11-21 15:40:07 UTC
Ville, is that commit is in the 11/21 drm-intel-testing branch?
Comment 14 Ville Syrjala 2014-11-21 18:34:35 UTC
(In reply to Gavin Hindman from comment #13)
> Ville, is that commit is in the 11/21 drm-intel-testing branch?

Yes, looks that way to me.
Comment 15 Yi Sun 2014-11-24 06:36:56 UTC
(In reply to Ville Syrjala from comment #12)
> (In reply to Li Xu from comment #10)
> > I finished the bisect, the result is following:
> > baa4e575d6a18dcd6f2e622784aa16ab24024f09 is the first bad commit
> > commit baa4e575d6a18dcd6f2e622784aa16ab24024f09
> > Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > Date:   Mon Oct 27 16:07:32 2014 +0200
> > 
> >     drm/i915: Enable pipe-a power well on chv
> 
> The problems caused by that commit should be fixed by:
> 
> commit afd6275dd12381a7bd3750c125b3b68b5f8b03ca
> Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Date:   Thu Oct 30 19:43:03 2014 +0200
> 
>     drm/i915: Reinit display irqs and hpd from chv pipe-a power well

The black screen issue is gone. Verified.
Comment 16 Jari Tahvanainen 2017-02-10 08:55:27 UTC
Closing (>2 years) old Verified+Fixed.


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.