[xf86-video-intel] Need help solving issue with intel driver & DDC monitor detection
Jerone Young
jerone at gmail.com
Sun Jan 13 22:06:23 PST 2008
I have a Samung 243T monitor. It is a 24" LCD screen with a native
resolution of 1920x1200. The intel driver has an interesting issue
reading the EDID from this monitor in certain cases. Now I have some
findings below that will explain more. I machine that I am using is a
Lenovo Thinkpad with X3100 graphics card with a docking station (which
has the DVI port). I am using the latest git build of the intel
driver.
The Issue
=======
The issue here is that the intel driver the not properly detecting my
Samusng 243T in certain cases when it is attached to my Thinkpad T61.
It will only let the monior go up to 1280x1024 and not 1920x1200.
xrandr shows this. But it does actually detect it correctly in certain
cases.
Here is a test matrix that shows when it detects it correctly
Port Connected on X startup Hot
plugged (X is already started)
=== ================== ========================
VGA WORKS
NOT WORK
DVI NOT WORK
NOT WORK
I've been doing some hacking of the intel code and this issue ONLY
effects mobile parts that have to initialize a LVDS port. In
i830_driver.c there is function I830SetupOutputs() .. I have found
that i830_lvds_init() is triggering this issue.
The reason I say this is that if I move i830_crt_init() below
i830_lvds_init(). Then VGA no longer detects correctly on startup. So
I then move i830_sdvo_init() above i830_lvds_init(), then DVI works on
startup. If I comment on lvds_init() then the functions work fine (
but my laptop screen doesn't get started of course).
So I then went through i830_lvds_init ()and commented out code. But
the only thing I can somewhat pin point things to is init of the I2C
setup .. it's at line 910 of i830_lvds.c. When I commented out fixed
panel mode attempt and reading from the bios and that had no effect.
But this is definitely triggering what is breaking the intel driver
for my Samsung 243T.
Here is what is really really interesting is that newer monitors that
I have tested do not appear to have this issue (I explain the two I
try below). Both report that they support EDID 1.3, while my Samsung
monitor does not in the X log. I'm guessing this has something to do
with the DDC version supported by Samsung 243T.
More Observations
==============
** I have a Thinkpad T41p that uses the "ati' driver and has no issue
detecting the Samsung 243T at starup or hotplug via DVI & VGA.
** I have a desktop that uses the "nv" & "nvidia" driver that has no
issue detecting proper setting for the monitor.
** Using my Thinkpad T61 under Windows Vista it detects & works with
my Samsung 243T without issue.
** Connecting newer monitors to via DVI using my Thinkpad appear to
work fine. The are detected properly during startup & when hot
plugged. Both report EDID Version 1.3 support. These moitors include:
IBM Thinkcenter LC monitor (1280x1024) , Samsung LCD (1680x1050).
Sorry lost the model numbers.
When it works correctly xrandr reports (using VGA connected on startup):
===========================================================
jerone at laptop:~$ xrandr --prop
Screen 0: minimum 320 x 200, current 1920 x 1200, maximum 1920 x 1920
VGA connected 1920x1200+0+0 (normal left inverted right x axis y axis)
518mm x 324mm
EDID_DATA:
00ffffffffffff004c2dd9003432424e
110f01036c3420a02aee95a3544c9926
0f5054bfef80a9408180714f01010101
010101010101283c80a070b023403020
360006442100001a000000fd00374b1e
5011000a202020202020000000fc0053
796e634d61737465720a2020000000ff
0048344b593430303634390a2020002d
1920x1200 60.0*+
1600x1200 59.9
1280x1024 75.0 59.9
1152x864 75.0 74.8
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 75.0 72.8 66.7 60.0
720x400 70.1
LVDS connected 1440x900+0+0 (normal left inverted right x axis y axis)
303mm x 190mm
EDID_DATA:
00ffffffffffff0030ae334000000000
00110103801e1378eaae109658538c28
24505421080001010101010101010101
0101010101013226a04051841a303020
36002fbe10000019d51fa04051841a30
302036002fbe100000190000000f0090
0a32900a28140100320cf800000000fe
004c503134315750312d544c42370021
BACKLIGHT_CONTROL: kernel
supported: native legacy combination kernel
BACKLIGHT: 80 (0x00000050) range: (0,100)
1440x900 60.0*+ 50.0
1280x800 60.0
1280x768 60.0
1024x768 60.0
800x600 60.3
640x480 60.0 59.9
TMDS-1 disconnected (normal left inverted right x axis y axis)
When is NOT working correctly xrandr reports (using VGA hotplugged):
=========================================================
jerone at laptop:~$ xrandr --prop
Screen 0: minimum 320 x 200, current 1440 x 900, maximum 1440 x 1440
VGA connected (normal left inverted right x axis y axis)
EDID_DATA:
00ffffffffffff004c2dd9003432424e
110f01036c3420a02aee95a3544c9926
0f5054bfef80a9408180714f01010101
010101010101283c80a070b023403020
360006442100001a000000fd00374b1e
5011000a202020202020000000fc0053
796e634d61737465720a2020000000ff
0048344b593430303634390a2020002d
1280x1024 75.0 59.9
1152x864 75.0 74.8
1024x768 75.1 70.1 60.0
832x624 74.6
800x600 72.2 75.0 60.3 56.2
640x480 75.0 72.8 66.7 60.0
720x400 70.1
LVDS connected 1440x900+0+0 (normal left inverted right x axis y axis)
303mm x 190mm
EDID_DATA:
00ffffffffffff0030ae334000000000
00110103801e1378eaae109658538c28
24505421080001010101010101010101
0101010101013226a04051841a303020
36002fbe10000019d51fa04051841a30
302036002fbe100000190000000f0090
0a32900a28140100320cf800000000fe
004c503134315750312d544c42370021
BACKLIGHT_CONTROL: kernel
supported: native legacy combination kernel
BACKLIGHT: 80 (0x00000050) range: (0,100)
1440x900 60.0*+ 50.0
1280x800 60.0
1280x768 60.0
1024x768 60.0
800x600 60.3
640x480 60.0 59.9
TMDS-1 disconnected (normal left inverted right x axis y axis)
More information about the xorg
mailing list