Bug 38527

Summary: [Sandybridge GT1] No display on dell all-in-one with eDP->LVDS
Product: DRI Reporter: roberth <sarvatt>
Component: DRM/IntelAssignee: Jesse Barnes <jbarnes>
Status: CLOSED FIXED QA Contact:
Severity: critical    
Priority: high CC: eugeni, jbarnes, keithp, ypwong
Version: XOrg git   
Hardware: Other   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 42991, 44622    
Attachments:
Description Flags
drm.debug=0x0e dmesg from failed boot
none
xrandr --verbose with external VGA plugged in
none
Clear FDI IIR before use
none
Pass pch_iir to its handler
none
dmesg with new drm-intel-next kernel
none
dmesg with drm.debug=0x0e from suceess boot
none
drm.debug=0x0e dmesg form execute "xrandr" and never come back . none

Description roberth 2011-06-21 07:17:22 UTC
Created attachment 48233 [details]
drm.debug=0x0e dmesg from failed boot

-- CPU: Intel Core(TM) i3-2100 CPU @ 3.10GHz (Sandy Bridge)
-- GPU: Intel Corporation Sandy Bridge Integrated Graphics Controller [8086:0102] (rev 09) (prog-if 00 [VGA controller])
-- system architecture: 32-bit
-- Linux distribution: Ubuntu 10.10 and 11.04
-- Package versions:
   libdrm - 2.4.21-1ubuntu2 and 2.4.23-1ubuntu6
   xf86-video-intel - 2:2.12.0-1ubuntu5.2 and 2:2.14.0-4ubuntu7
   kernel - 2.6.35-24.42-generic (2.6.35.8) through 2.6.39.1



This system is a desktop one with a eDP->LVDS converter (CH7511B) for the all-in-one panel and it only works with VESA. As soon as KMS kicks in it goes black and doesn't come back. External monitors still work fine, its just the internal panel that is black. Ubuntu maverick and natty were tested, as well as a 2.6.39.1 kernel. the 2.6.39.1 kernel actually hung with an external monitor, with additional messages like these at the end

PCH HDCP audio interrupt

Followed by a two additional DRM messages:

<7> [ 17.668935 ] [drm.ironlake_dp_detect], DPCD: 0000
<7> [ 245.874118] [drm:i915_hotplug_work_func], running encoder hotplug functions
Comment 1 roberth 2011-06-21 07:18:15 UTC
Created attachment 48234 [details]
xrandr --verbose with external VGA plugged in
Comment 2 Chris Wilson 2011-06-21 10:50:53 UTC
Looks like this symptom again:

[   10.878980] [drm:gen6_fdi_link_train], FDI_RX_IIR 0x100
[   10.878983] [drm:gen6_fdi_link_train], FDI train 1 done.
[   10.879632] [drm:gen6_fdi_link_train], FDI_RX_IIR 0x600
[   10.879635] [drm:gen6_fdi_link_train], FDI train 2 done.
[   10.879636] [drm:gen6_fdi_link_train], FDI train done.

Typically we see FDI_RX_IIR 0x700 for train 1, with circumstantial evidence suggesting that 0x100 (although seemingly correct wrt the specs) is incomplete.
Comment 3 Chris Wilson 2011-06-21 10:51:59 UTC
Created attachment 48245 [details] [review]
Clear FDI IIR before use

This patch should have no effect... But who knows and if you have a reproducible system it would be good to test. :)
Comment 4 roberth 2011-06-27 03:25:26 UTC
(In reply to comment #3)
> Created an attachment (id=48245) [details]
> Clear FDI IIR before use
> 
> This patch should have no effect... But who knows and if you have a
> reproducible system it would be good to test. :)

It didn't have any effect for the bug and still went blank after grub. unfortunately this was all of the log I could get from the person with the machine

http://sarvatt.com/kern.log

(too big to attach)
Comment 5 Chris Wilson 2011-06-27 03:33:23 UTC
Oh boy. Is it seriously in a hotplug loop?

Jesse, doesn't this look suspicious:

Jun 23 15:58:56 u-23-AIO kernel: [  140.240475] [drm:pch_irq_handler], 
Jun 23 15:58:56 u-23-AIO kernel: [  140.240476] [drm:i915_hotplug_work_func], running encoder hotplug functions
Jun 23 15:58:56 u-23-AIO kernel: [  140.240478] PCH HDCP audio interrupt
Jun 23 15:58:56 u-23-AIO kernel: [  140.246637] [drm:pch_irq_handler], 
Jun 23 15:58:56 u-23-AIO kernel: [  140.246638] [drm:i915_hotplug_work_func], running encoder hotplug functions
Jun 23 15:58:56 u-23-AIO kernel: [  140.246640] PCH HDCP audio interrupt
Jun 23 15:58:56 u-23-AIO kernel: [  140.254675] [drm:pch_irq_handler], 
Jun 23 15:58:56 u-23-AIO kernel: [  140.254677] [drm:i915_hotplug_work_func], running encoder hotplug functions
Jun 23 15:58:56 u-23-AIO kernel: [  140.254678] PCH HDCP audio interrupt
Jun 23 15:58:56 u-23-AIO kernel: [  140.262625] [drm:pch_irq_handler], 
Jun 23 15:58:56 u-23-AIO kernel: [  140.262626] [drm:i915_hotplug_work_func], running encoder hotplug functions
Jun 23 15:58:56 u-23-AIO kernel: [  140.262628] PCH HDCP audio interrupt
Jun 23 15:58:56 u-23-AIO kernel: [  140.270662] [drm:pch_irq_handler], 
Jun 23 15:58:56 u-23-AIO kernel: [  140.270663] [drm:i915_hotplug_work_func], running encoder hotplug functions
Jun 23 15:58:56 u-23-AIO kernel: [  140.270664] PCH HDCP audio interrupt
Jun 23 15:58:56 u-23-AIO kernel: [  140.278615] [drm:pch_irq_handler], 
Jun 23 15:58:56 u-23-AIO kernel: [  140.278616] [drm:i915_hotplug_work_func], running encoder hotplug functions
Jun 23 15:58:56 u-23-AIO kernel: [  140.278618] PCH HDCP audio interrupt
Jun 23 15:58:56 u-23-AIO kernel: [  140.286653] [drm:pch_irq_handler], 
Jun 23 15:58:56 u-23-AIO kernel: [  140.286655] [drm:i915_hotplug_work_func], running encoder hotplug functions
Jun 23 15:58:56 u-23-AIO kernel: [  140.286656] PCH HDCP audio interrupt
Jun 23 15:58:56 u-23-AIO kernel: [  140.294601] [drm:pch_irq_handler], 
Jun 23 15:58:56 u-23-AIO kernel: [  140.294602] [drm:i915_hotplug_work_func], running encoder hotplug functions
Jun 23 15:58:56 u-23-AIO kernel: [  140.294604] PCH HDCP audio interrupt
Jun 23 15:58:56 u-23-AIO kernel: [  140.302616] [drm:output_poll_execute], [CONNECTOR:21:HDMI-A-3] status updated from 2 to 2
Jun 23 15:58:56 u-23-AIO kernel: [  140.303126] [drm:intel_dp_aux_ch], dp_aux_ch timeout status 0x5143003e
Jun 23 15:58:56 u-23-AIO kernel: [  140.303127] [drm:ironlake_dp_detect], DPCD: 0000
Jun 23 15:58:56 u-23-AIO kernel: [  140.303129] [drm:output_poll_execute], [CONNECTOR:23:DP-2] status updated from 2 to 2
Jun 23 15:58:56 u-23-AIO kernel: [  140.304159] [drm:i2c_algo_dp_aux_xfer], dp_aux_xfer return 2
Jun 23 15:58:56 u-23-AIO kernel: [  140.331223] [drm:i2c_algo_dp_aux_xfer], dp_aux_xfer return 2
Jun 23 15:58:56 u-23-AIO kernel: [  140.331224] [drm:output_poll_execute], [CONNECTOR:5:eDP-1] status updated from 1 to 1
Jun 23 15:58:56 u-23-AIO kernel: [  140.331228] [drm:intel_ironlake_crt_detect_hotplug], ironlake hotplug adpa=0xf40000, result 0
Jun 23 15:58:56 u-23-AIO kernel: [  140.331229] [drm:intel_crt_detect], CRT not detected via hotplug
Jun 23 15:58:56 u-23-AIO kernel: [  140.331231] [drm:output_poll_execute], [CONNECTOR:9:VGA-1] status updated from 2 to 2
Jun 23 15:58:56 u-23-AIO kernel: [  140.333542] [drm:output_poll_execute], [CONNECTOR:12:HDMI-A-1] status updated from 2 to 2
Jun 23 15:58:56 u-23-AIO kernel: [  140.334051] [drm:intel_dp_aux_ch], dp_aux_ch timeout status 0x5143003e
Jun 23 15:58:56 u-23-AIO kernel: [  140.334052] [drm:ironlake_dp_detect], DPCD: 0000
Jun 23 15:58:56 u-23-AIO kernel: [  140.334053] [drm:output_poll_execute], [CONNECTOR:14:DP-1] status updated from 2 to 2
Jun 23 15:58:56 u-23-AIO kernel: [  140.336373] [drm:output_poll_execute], [CONNECTOR:18:HDMI-A-2] status updated from 2 to 2

repeated ad infinitum.
Comment 6 Chris Wilson 2011-06-27 03:42:11 UTC
Created attachment 48459 [details] [review]
Pass pch_iir to its handler

The useful part is the extra debug line to try and clarify what's being set in that hotplug loop. If it actually fixes the issue, I'd be amazed ;-)
Comment 7 Chris Wilson 2011-07-29 02:15:13 UTC
It would be worthwhile to check with drm-intel-fixes for the DP hotplug fixes (along with the conformance fixes). However, I believe that we need to mask the audio bits in the interrupt mask...
Comment 8 roberth 2011-09-18 13:50:15 UTC
Sorry this one is taking so long to reply to, I had to go through 3 layers of people to get info out of it at the time and those machines are gone. I should be able to get some hands on time with it in the next month or two without ancient versions. It might be a good idea to just close it and I'll reopen/make a new one with better info then.
Comment 9 Keng-Yu Lin 2011-10-25 00:02:30 UTC
Lenovo AIO C320 (SandyBridge Celeron G530) has this bug too.
Comment 10 Gordon Jin 2011-10-25 00:16:10 UTC
Keng-Yu Lin has the hardware and could be able to test the latest code. The current drm-intel-next still doesn't work for the Lenovo AIO C320.

I'm promoting this bug to P1.
Comment 11 Keith Packard 2011-10-26 21:45:43 UTC
I'll need an updated kernel log from the current drm-intel-next kernel with drm.debug=0x0e from the Dell AIO machine.

Also, please create a separate bug for the Lenovo AIO, also attaching a kernel log.
Comment 12 AceLan Kao 2011-12-01 21:39:56 UTC
Created attachment 54050 [details]
dmesg with new drm-intel-next kernel

With the new drm-intel-next kernel[1], the internal display works well.

1. http://kernel.ubuntu.com/~kernel-ppa/mainline/drm-intel-next/2011-11-17-oneiric/
Comment 13 Keng-Yu Lin 2011-12-05 23:35:20 UTC
For the record of the Lenovo AIO hardware, the bug is gone with BIOS Version E4KT15AUS and Ubuntu drm-intel-next build version 3.1.0-997-generic #201111170422.
Comment 14 Stephen Che 2011-12-06 01:09:33 UTC
Dear Keng-Yu Lin,
    There's the same issue happened in our internal ,the motherboard design is followed intel AIO mini ITX standard design,also eDP==>>LVDS model fail ,external HDMI OK, could you kindly let me know what codes revised for the BIOS "E4KT15AUS" to slove this issue? tks
Comment 15 niannian xie 2012-01-30 23:53:23 UTC
  My All-In-One  have  the similar problem with the internal displayer .But ,it go black not very frequently. it happened at before login-in ,login-in and after login-in some seconds .when I execute "xrandr" or "get-edid" at the terminal,the screen will go black and return back instantly,but sometimes ,it never return back . But when I ssh to this All-in-on from other computer,and execute "xrandr" or "get-edid" again ,then the screen light on and everything is OK .
Comment 16 niannian xie 2012-01-31 00:02:22 UTC
Created attachment 56358 [details]
dmesg with drm.debug=0x0e from suceess boot
Comment 17 niannian xie 2012-01-31 00:20:08 UTC
Created attachment 56359 [details]
drm.debug=0x0e dmesg form execute "xrandr" and never come back .

compare to the "dmesg with drm.debug=0x0e from sucess boot" ,The dmesg almost the same ,and I can't figure out what happened .
--CPU  Intel(R) Core(TM) i5-2400 CPU @ 3.10GHz

--GPU  VGA compatible controller [0300]: Intel Corporation Sandy Bridge Integrated Graphics Controller [8086:0102] (rev 09)

-- kernel version : Debian kernel :linux-image-3.2.0-rc7-686-pae

eDP===>LVDS :Manufacturer: CHR  Model: 7511  Serial#: 21501
Comment 18 Chris Wilson 2012-04-18 12:58:49 UTC
Jesse, I think this is another Vostro with the same hotplug symptoms, and I know how much you like them... :)
Comment 19 Jesse Barnes 2012-04-18 16:52:28 UTC
Please see the update to 42278, there's a patch there and instructions on how to avoid output detection.  It may be the same issue.
Comment 20 Jesse Barnes 2012-06-14 10:23:21 UTC
No update, but I assume this is fixed by:

commit 46c325a871d50096b312e0f7f48182f2152ee836
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Mon Jun 11 14:39:56 2012 -0400

    drm/i915: don't enumerate HDMID if an eDP panel is already active on the por

in drm-intel-fixes.
Comment 21 Guek Wu Neo 2013-06-19 07:22:01 UTC
(In reply to comment #20)
> No update, but I assume this is fixed by:

commit
> 46c325a871d50096b312e0f7f48182f2152ee836
Author: Jesse Barnes
> <jbarnes@virtuousgeek.org>
Date:   Mon Jun 11 14:39:56 2012 -0400

   
> drm/i915: don't enumerate HDMID if an eDP panel is already active on the por
> in drm-intel-fixes.

could you advise where can we locate this patch?
Comment 22 Jesse Barnes 2013-07-25 16:04:24 UTC
It's in Linus's tree:

commit b708a1d5ea7880b399dbd45cacafff6ae8d73171
Author: Jesse Barnes <jbarnes@virtuousgeek.org>
Date:   Mon Jun 11 14:39:56 2012 -0400

    drm/i915: don't enumerate HDMID if an eDP panel is already active on the por

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.