Summary: | [855GM DDC] bad LVDS mode programmed, possibly bad EDID | ||
---|---|---|---|
Product: | xorg | Reporter: | Jose Manuel D. Mendinueta <mendi> |
Component: | Driver/intel | Assignee: | Hong Liu <hong.liu> |
Status: | RESOLVED FIXED | QA Contact: | Xorg Project Team <xorg-team> |
Severity: | normal | ||
Priority: | medium | CC: | bugs, dominik, freedeskbug, hong.liu, jbarnes, keithp, ld.fifty, rasasi78, shuber |
Version: | 7.2 (2007.02) | ||
Hardware: | Other | ||
OS: | All | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Bug Depends on: | 11917 | ||
Bug Blocks: | 13027 | ||
Attachments: |
Description
Jose Manuel D. Mendinueta
2007-04-23 05:42:11 UTC
Please don't bump the severeness; it only serves to annoy the developers. Your bug has been noticed and will, eventually, be processed. Same here with Intel 855GM chipset. Master branch, commit b23eae55c8cdd73e0aba1bf7ced283d402ee6470. No VGA monitor is attached, only the internal display of the Notebook. Compiled with --enable-video-debug option, ModeDebug set to true. Xorg.log attached. Created attachment 9704 [details]
xorg log file with black screen
I'm experiencing the same problem on my Inspiron 510m too. Intel 855GM. This bug still exists in latest git (06/19/07). But I discovered the following: When I boot up my notebook (intel 855gm) with a monitor connected, the booting process happens on the monitor while the LVDS remains black. When starting xorg, the new intel driver fires up the monitor AND the LVDS correctly, in cloning mode. I can do everything I want with the LVDS. When I don't boot up with a monitor connected, the booting process happens on the LVDS, of course. Plugging in a monitor while/after booting doesn't change a thing. When starting xorg then, the monitor is brought up perfectly, in cloning mode, I suspect. The LVDS does some initialization stuff and the backlight goes on, but it remains black. I'm unable to get it to work. In both cases the output of xrandr seems correct for me, the LVDS and VGA are recognized correctly and set to the right modes. Just the LVDS stays black and seems not to get enough initialization. Please tell me how to give you logs or dumps of things that might help you to find out, what initialization is missing. Hey, with i810switch I can hackingly enable/disable the lcd and crt outputs of the card: http://www16.plala.or.jp/mano-a-mano/i810switch.html (i810switch lcd off). When the lcd is deactivated with that tool, starting xorg correctly sets up the LVDS. When it's enabled, the LVDS becomes black upon xorg start. Hope this helps. Somebody said in the Debian bug that the problem is gone since 2.1.0. The allocation warnings are still in Xorg.log, but the PP_STATUS warnings are gone, and X seems to work fine now. Details at http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=420209 Still present in 2.1.0! I discovered that it seems to be a misinterpretion of my EDID or DDC data. When the driver can't read the EDID because the display is turned off, it assumes that BIOS data is alright and then it works fine. Option IgnoreEDID makes it work, too. See the EDID data in my previous attached xorg.log. Please tell me how to provide more information. More comments about the BUG... With my hardware (Dell inspiron 510m, video Intel 855GM): a) With version 2.1.0 of the driver and kernel 2.6.21.6, it works. However, lid resume does not work. I use acpid and vbetool to switch off and on the screen when I close or open the screen. I can switch between text and graph mode. It is interesting that with previous i810 driver, when starting or ending Xorg, there were some "noise" in the screen, seemed that videoram was not cleared (zeroed). Now the transition between console and X is completely OK. Here are relevant parts of Xorg.log: mendi@mendi:~$ grep '^(WW)' /var/log/Xorg.0.log (WW) Including the default font path /usr/share/fonts/X11/misc,/usr/share/fonts/X11/cyrillic,/usr/share/fonts/X11/100dpi/:unscaled,/usr/share/fonts/X11/75dpi/:unscaled,/usr/share/fonts/X11/Type1,/usr/share/fonts/X11/100dpi,/usr/share/fonts/X11/75dpi,/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType. (WW) intel(0): Bad V_BIOS checksum (WW) intel(0): Register 0x61200 (PP_STATUS) changed from 0xc0000008 to 0xd0000009 (WW) intel(0): PP_STATUS before: on, ready, sequencing idle (WW) intel(0): PP_STATUS after: on, ready, sequencing on (WW) intel(0): xf86AllocateGARTMemory: allocation of 10 pages failed (WW) intel(0): xf86AllocateGARTMemory: allocation of 10 pages failed (WW) intel(0): Failed to allocate texture space. (WW) intel(0): xf86AllocateGARTMemory: allocation of 10 pages failed (WW) AIGLX: 3D driver claims to not support visual 0x23 (WW) AIGLX: 3D driver claims to not support visual 0x24 (WW) AIGLX: 3D driver claims to not support visual 0x25 (WW) AIGLX: 3D driver claims to not support visual 0x26 (WW) AIGLX: 3D driver claims to not support visual 0x27 (WW) AIGLX: 3D driver claims to not support visual 0x28 (WW) AIGLX: 3D driver claims to not support visual 0x29 (WW) AIGLX: 3D driver claims to not support visual 0x2a (WW) AIGLX: 3D driver claims to not support visual 0x2b (WW) AIGLX: 3D driver claims to not support visual 0x2c (WW) AIGLX: 3D driver claims to not support visual 0x2d (WW) AIGLX: 3D driver claims to not support visual 0x2e (WW) AIGLX: 3D driver claims to not support visual 0x2f (WW) AIGLX: 3D driver claims to not support visual 0x30 (WW) AIGLX: 3D driver claims to not support visual 0x31 (WW) AIGLX: 3D driver claims to not support visual 0x32 mendi@mendi:~$ grep '^(EE)' /var/log/Xorg.0.log (EE) intel(0): detecting sil164 (EE) intel(0): Unable to read from DVOI2C_E Slave 112. b) with kernel 2.6.22, it works. But when rebooting or halting, the "black screen of dead" happens when X is shutting down, and I have to do a hard reset (the computer completely freezes). If I try to switch to console, black screen and freeze. The black screen effect in both cases seems to switch off the LCD. The log is the same that in the previous case. Please tell me if this information is accurate, or your want me to do further testing. Cheers, Mendi Created attachment 10969 [details]
log when LVDS is powered on (EDID read successful)
Created attachment 10970 [details]
log with LVDS powered off (EDID read fails, display NOT black)
Seems to be a problem with the EDID of my LVDS. When forcing the driver not to use EDID data (or by powering off the LVDS, so the EDID read fails), the display does not stay black. If the driver reads and uses the EDID data, the display stays black upon Xorg start, with latest git from Aug, 2nd. Hack to not use read EDID: diff --git a/src/i830_lvds.c b/src/i830_lvds.c index e2c6e3c..2c2da5f 100644 --- a/src/i830_lvds.c +++ b/src/i830_lvds.c @@ -514,7 +514,7 @@ i830_lvds_init(ScrnInfoPtr pScrn) /* If we didn't get EDID, try checking if the panel is already turned on. * If so, assume that whatever is currently programmed is the correct mode. */ - if (dev_priv->panel_fixed_mode == NULL) { + /*if (dev_priv->panel_fixed_mode == NULL)*/ { CARD32 lvds = INREG(LVDS); int pipe = (lvds & LVDS_PIPEB_SELECT) ? 1 : 0; xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn); *** Bug 10258 has been marked as a duplicate of this bug. *** > New commits:
> diff-tree ff4bd3addb48df3eacc4b121cc249a7f38eb981a (from 2926cf1da7e4ed63573bfaecdd7e19beb3057d9b)
> Author: Eric Anholt <eric@anholt.net>
> Date: Wed Aug 8 14:24:42 2007 -0700
>
> Fix the swapped decode of the EDID DTD h/v sync polarity fields.
>
> As a result, we can remove the quirks that existed to flip the bits back around
> for us. This is not confirmed in all cases due to lack of bugs containing EDID
> blocks associated with the quirks, but is likely true.
Tried lastest git of xserver and xf86-video-intel and this did NOT fix my issue with EDID misinterpretion.
Have you tried starting the server with no xorg.conf file? Sometimes old configuration information can conflict with the driver's plans and cause things to fail. Created attachment 11468 [details]
Xorg log without xorg.conf file.
Tried it with new released xorg-server-1.4 and the released xf86-video-intel-2.1.1 and no difference at all. Startup and screen is black, but when disabling the display using "i810switch lcd off" it enables the display and I see stuff. No additional log files since the old ones should be still current for this problem. Went back to xf86-video-intel-1.7.4, the only working one for me. Adding the option "NoDDC" makes it work too, so clearly the DDC of my laptop's LVDS is misinterpreted! All information about that should be given in both xorg.log files above. Please tell me how to help, if I can. Are we going to fix this issue, or just recommending to use "NoDDC"? (In reply to comment #8) > Still present in 2.1.0! > > I discovered that it seems to be a misinterpretion of my EDID or DDC data. When > the driver can't read the EDID because the display is turned off, it assumes > that BIOS data is alright and then it works fine. Option IgnoreEDID makes it > work, too. See the EDID data in my previous attached xorg.log. Please tell me > how to provide more information. > Yes, there is bug in your EDID data, from the probed mode: (II) intel(0): probed mode: (II) intel(0): Modeline "1024x768"x0.0 65.00 1024 1048 1696 1344 768 771 777 806 -hsync -vsync (48.4 kHz) We have hsync_end(1696) > htotal(1344) which is obviously wrong. Hi, Sascha Would you please try the patch attached in comment 5 of bug 13308? I think you two may have the same problem (buggy EDID data). Thanks, Hong (In reply to comment #21) > Hi, Sascha > Would you please try the patch attached in comment 5 of bug 13308? > I think you two may have the same problem (buggy EDID data). The patch fixes the issue for me. The recompiled xorg-server runs fine with intel-2.1.1 driver and even got the physical dimensions of my panel right. With the NoDDC option X was running too, and I had an additional mode (832x624) which I don't have now; I don't miss it though. (In reply to comment #9) > b) with kernel 2.6.22, it works. But when rebooting or halting, the "black > screen of dead" happens when X is shutting down, and I have to do a hard reset > (the computer completely freezes). If I try to switch to console, black screen > and freeze. The black screen effect in both cases seems to switch off the LCD. > The log is the same that in the previous case. > Hi, Mendi So the original problem X server shows nothing on LVDS is fixed now. Would you please open a new bug on your VT switch / LCD switch off problem? Since my small patch fixed Sascha's problem, I am closing this one. Thanks, Hong |
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.