Bug 11982

Summary: [945GM] bad mode on builtin DVI output
Product: xorg Reporter: Orion Poplawski <orion>
Component: Driver/intelAssignee: Hong Liu <hong.liu>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: 7.1 (2006.05)   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Bug Depends on:    
Bug Blocks: 13027    
Attachments:
Description Flags
X log
none
X log with latest git
none
X log from 2.2.0 none

Description Orion Poplawski 2007-08-13 11:02:01 UTC
Dell Latitude D620 with  Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03) and external Dell 2007FP external monitor running Fedora 7 and xorg-x11-drv-i810-2.1.0-1.fc7 using the "intel" driver.

Display is blank with message cannot display mode, set to 1600x1200 60Hz.
Comment 1 Orion Poplawski 2007-08-13 11:03:09 UTC
Created attachment 11124 [details]
X log

xorg.conf:

Section "ServerLayout"
        Identifier     "Default Layout"
        Screen      0  "Screen0" 0 0
EndSection

Section "Device"
        Identifier  "Videocard0"
        Driver      "intel"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Videocard0"
EndSection
[root@moa X11]
Comment 2 Brice Goglin 2007-08-13 11:06:43 UTC
This is very very probably fixed in git.

Brice
Comment 3 Orion Poplawski 2007-08-13 12:39:13 UTC
Created attachment 11125 [details]
X log with latest git

Nope, same issue.  Here's the log output with the latest git version.
Comment 4 Jesse Barnes 2007-10-31 14:58:54 UTC
Hm, looks like there's a DVI output on this machine?  It's getting a set of modes correctly at least.  But you say you have a VGA that's not being detected correctly?  Or is your configuration really a laptop with an DVI connected 2007FP LCD panel?  Or maybe this is a weird configuration with a TMDS internal output being converted into a VGA connector on the laptop...
Comment 5 Orion Poplawski 2007-10-31 15:11:55 UTC
My bad, it really is a DVI connector.
Comment 6 Hong Liu 2007-11-14 19:45:33 UTC
(In reply to comment #0)
> Dell Latitude D620 with  Intel Corporation Mobile 945GM/GMS, 943/940GML Express
> Integrated Graphics Controller (rev 03) and external Dell 2007FP external
> monitor running Fedora 7 and xorg-x11-drv-i810-2.1.0-1.fc7 using the "intel"
> driver.
> 
> Display is blank with message cannot display mode, set to 1600x1200 60Hz.
> 

Display is blank when X starts or when you change to 1600x1200@60Hz using xrandr?

And would you please try the latest driver since we have some fix on the PLL clock programming. I think we chose 1280x1024@75Hz for your DVI output (which used to have problem on this mode).

Thanks,
Hong

Thanks,
Hong
Comment 7 Orion Poplawski 2007-11-15 08:36:50 UTC
Display is blank when X starts.

What is the latest version that can be used with Xorg 1.3.0.0?  Would it have the PLL fixes?
Comment 8 Hong Liu 2007-11-15 17:15:13 UTC
(In reply to comment #7)
> Display is blank when X starts.
> 

Then this is probably fixed :)

> What is the latest version that can be used with Xorg 1.3.0.0?  Would it have
> the PLL fixes?
> 

I am not sure whether the lastest driver will work with Xorg-1.3.
But actually it is a really small patch, I think you can just apply this patch to your driver manually.

From 26194e19e1c80615697016e25640d4c8c244353f Mon Sep 17 00:00:00 2001
From: Keith Packard <keithp@koto.keithp.com>
Date: Tue, 13 Nov 2007 22:26:40 -0800
Subject: [PATCH] Review PLL spreadsheet and update register ranges.

The PLL spreadsheet makes the precise register ranges allowed for each mode
quite clear, and shows a few inaccuracies in the b-spec. In particular, the
N register value may range from 1 to 6 instead of 3 to 8. This should close
the gap we've seen in the reachable frequencies.
---

diff --git a/src/i830_display.c b/src/i830_display.c
index d988b86..ea10c8a 100644
--- a/src/i830_display.c
+++ b/src/i830_display.c
@@ -100,14 +100,26 @@ typedef struct {
 #define I9XX_DOT_MAX		 400000
 #define I9XX_VCO_MIN		1400000
 #define I9XX_VCO_MAX		2800000
-#define I9XX_N_MIN		      3
-#define I9XX_N_MAX		      8
+
+/* Haven't found any reason to go this fast, but newer chips support it */
+#define I96X_VCO_MAX		3200000
+
+/*
+ * These values are taken from the broadwater/crestline PLL spreadsheet.
+ * All of the defines here are for the programmed register value, not
+ * the 'counter' value (e.g. Ncounter = Nregister + 2)
+ */
+#define I9XX_N_MIN		      1
+#define I9XX_N_MAX		      6
 #define I9XX_M_MIN		     70
 #define I9XX_M_MAX		    120
+
+/* these two come from the calm1 macro */
 #define I9XX_M1_MIN		     10
-#define I9XX_M1_MAX		     20
+#define I9XX_M1_MAX		     22
 #define I9XX_M2_MIN		      5
 #define I9XX_M2_MAX		      9
+
 #define I9XX_P_SDVO_DAC_MIN	      5
 #define I9XX_P_SDVO_DAC_MAX	     80
 #define I9XX_P_LVDS_MIN		      7
-- 
1.5.2



Comment 9 Michael Fu 2007-11-27 00:47:21 UTC
Orion, any update on this? the latest 2.2.0 driver also include the patch. you can try to see if the 2.2.0 driver resolve your issue...
Comment 10 Orion Poplawski 2007-12-05 15:45:15 UTC
Created attachment 12969 [details]
X log from 2.2.0

Okay, 2.2.0 seems to resolve the main issue.  Some quirks:

- Driver puts panel into 1280x1024.  I think this is because the panel incorrectly puts 1280x1024 as the "preferred mode", but I would love to proved wrong.  Fixed by configuring KDE to change to 1600x1200 on login.

- Display flashes black for a second or two every time xrandr runs or the kde display config tool starts.

- Switching to VT1 to try to get a text console puts the panel into power save

- On resume from suspend to RAM (in the log in there somewhere) the display is "fuzzy" - can see everything but there seems to be some background noise.  This corrected itself (with screen going black briefly) after 30-60 seconds.

- Resuming from hibernate (in the log too) seems to work fine.

I'm happy to close this and file other bugs about these if desired.

Thanks for the work...
Comment 11 Gordon Jin 2007-12-05 17:56:39 UTC
(In reply to comment #10)
> - Switching to VT1 to try to get a text console puts the panel into power save

Thanks for the report. I'm interested to know what you mean exactly for "power save".
I'm asking to make sure if it's the same as the known issue "vt switch gets a blank screen" (bug#13196).
Comment 12 Orion Poplawski 2007-12-05 20:20:02 UTC
Hard to say.  I don't see any VT or PIPEA messages.  The monitor goes into powersave mode and so the screen is blank.  
Comment 13 Orion Poplawski 2007-12-06 14:05:42 UTC
After running for a while, user reports a "periodic juggling of the display every minute or so".
Comment 14 Jesse Barnes 2007-12-11 16:18:29 UTC
Orion, yeah it would be best to close this one out as fixed and file separate bugs for the other issues, otherwise things tend to get lost.

Thanks,
Jesse
Comment 15 Michael Fu 2007-12-27 20:27:18 UTC
Orion, I'll mark this bug as resolved, as the main issue has been fixed in 2.2.0. AS Jesse said, to keep the bug clean and focused, please open new bugs for other issues you meet. thanks!

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.