Bug 10754

Summary: i845G: initial mode choice problems
Product: xorg Reporter: Oswald Buddenhagen <ossi>
Component: Server/GeneralAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED INVALID QA Contact: Xorg Project Team <xorg-team>
Severity: major    
Priority: medium    
Version: 7.2 (2007.02)   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
config file
none
log with DDC enabled
none
log with DDC disabled
none
another log
none
config file
none
respect Modes option
none
add UseDdcModes and UseDefaultModes options
none
consider horizontal resolution, too, when picking initial mode
none
consider horizontal resolution, too, when picking initial mode (rebased) none

Description Oswald Buddenhagen 2007-04-25 01:45:30 UTC
this is xorg 7.2 packaged for debian unstable.
sort of nothing seems to work, so it's hard to give an exact description ...

first of all, it should be possible to disable the built-in vesa modes - they clutter up the log and make excluding error causes harder.

with ddc enabled, a video mode is chosen that makes the monitor shut down.
this is a bit similar to bug 10748.

with ddc disabled, a pretty insane mode is chosen.

Modes from the Screen/Display section seem to be completely ignored.
Comment 1 Oswald Buddenhagen 2007-04-25 01:52:34 UTC
Created attachment 9733 [details]
config file
Comment 2 Oswald Buddenhagen 2007-04-25 01:54:22 UTC
Created attachment 9734 [details]
log with DDC enabled
Comment 3 Oswald Buddenhagen 2007-04-25 01:54:55 UTC
Created attachment 9735 [details]
log with DDC disabled
Comment 4 Eric Anholt 2007-05-01 11:06:50 UTC
Probably just broken EDID data from the monitor.  What manufacturer/model is it?
Comment 5 Oswald Buddenhagen 2007-05-03 01:59:52 UTC
that question is answered in the log with ddc - isn't it obvious that "Manufacturer: IVM  Model: 1901  Serial#: 0" is an iiyama vision master pro 450? :-D
there are sufficiently many broken crts out there - the weirder it seems that xorg seems to let ddc override the sync limits explicitly requested in xorg.conf.

fwiw, Modes is not *completely* ignored - if it contains no supported mode, the server aborts. but afterwards it is simply ignored - why else would 1600x1024 be chosen when 1280x1024 is the max?

i don't think retitling this report was very wise; it doesn't reflect the issues properly any more. instead, the problems need to be isolated and more reports filed once it is halfways clear what is going on. *then* one can think about reducing this report to one issue.
Comment 6 Oswald Buddenhagen 2007-07-18 02:06:28 UTC
update. now using the 2.1 driver.
with ddc it doesn't try to nuke the crt any more ;), so the title definitely doesn't match any more. so i'm changing it.
the remaining problems still exist: the explicitly set Modes are ignored after validation, and the automatically chosen mode is adequate for 16:9 or something, but definitely not for 4:3.
Comment 7 Eric Anholt 2007-08-09 15:18:45 UTC
    HorizSync   31.5-105
    VertRefresh 40-150

You're specifying ranges beyond the capability of your monitor.  Please remove them (and probably the rest of the custom configuration) and try again.
Comment 8 Oswald Buddenhagen 2007-08-09 15:49:32 UTC
that doesn't matter - my last test was *without* dcc (*), so the crt would shut off/explode, but not the driver refuse to work because of *that*.
and the modelines in question are well within the crt's capabilities - they actually *work* (with another card+driver), you know.

(*) in case it wasn't obvious, the comment about dcc referred exclusively to the fact that this particular sub-issue is gone.
Comment 9 Oswald Buddenhagen 2007-08-09 16:37:19 UTC
minor correction: actually, i have no idea, whether the modelines are still picked up by the nv-based setup - i didn't try it for something like four years. but i know that the parameters are correct as such.

removing the modelines didn't change a thing.
removing the Modes (be it built-in modes or my modes) didn't make a difference, either; i always get a 16:9 mode.
not sure this is entirely consistent with previous observations ... the interaction of ddc, modelines and modes makes isolating the real pattern pretty hard. and it's damn late at night here. :)
Comment 10 Eric Anholt 2007-08-10 09:54:42 UTC
By dcc you mean ddc, right?  You need DDC in order for your monitor to tell the driver what capabilities it has.  Otherwise, the user has to specify them, and the user usually gets them wrong (as you did).  If you have the wrong ranges specified, we will validate in modes that your monitor can't handle.

So, remove your manual configuration, and things should just work.
Comment 11 Oswald Buddenhagen 2007-08-10 10:06:48 UTC
slowly you are making me angry. so let me repeat it one last time: the config is *valid*. it *works* with the nv driver with an old server (it was still xfree at that time).
Comment 12 Eric Anholt 2007-08-10 10:12:45 UTC
anholt@vonnegut:/home/anholt% gtf 2048 1536 60

  # 2048x1536 @ 60.00 Hz (GTF) hsync: 95.34 kHz; pclk: 266.95 MHz
  Modeline "2048x1536_60.00"  266.95  2048 2200 2424 2800  1536 1537 1540 1589  -HSync +Vsync

This modeline is within the ranges you have told your driver that your monitor supports.  Is it actually supported by your monitor?
Comment 13 Oswald Buddenhagen 2007-08-10 10:16:58 UTC
of course it isn't. and guess what? i told the server to use only the modes i specified. too bad that it outright ignores my command.
Comment 14 Oswald Buddenhagen 2007-09-20 01:50:27 UTC
Created attachment 11653 [details]
another log

xserver 1.3 now. the situation got slightly better:
- with ddc, i get a reasonable initial mode
- without ddc i also get one, even though it is clearly underpowering the crt (1024x768) despite better modes being available.
that means that i'm almost back to a pre-modesetting state. but:
- Modes is now ignored. and i mean ignored - not even a non-existing mode is complained about. ModeLines are picked up, as the log indicates.
- the calculated dpi is completely off. for another report, i guess.
- it seems that after some video mode switches the graphics mode (but not the text mode) produces no color signals any more (but still correct timings). InitPrimary does not help, i have to reboot. clearly for yet another report.
Comment 15 Oswald Buddenhagen 2007-09-20 01:55:35 UTC
Created attachment 11654 [details]
config file

err, xserver 1.4, of course. driver 2.1.1. as packaged by debian.

for reference, the current config.
Comment 16 Eric Anholt 2007-10-18 16:33:35 UTC
OK, with that last log, things look a lot better and there are now some clear issues with the server mode handling code for supporting your monitor.  The most severe is that 1280x1024 is being chosen contrary to the EEDID 1.3 spec (presumably accurate for 1.1 as well) that preference should be given to standard timings in order listed after detailed timings.

Also, we're adding modes from our standard modes table just because they fit the range of hsync/vsync used by timings from DDC, despite having a wide selection of modes to choose from already from DDC (afaik that code was originally motivated by 1: not having ddc and wedging old code into place in the post-DDC world, 2: flat panel scalers that have just 1 or 2 modes in EDID but which can scale whatever you throw at it.  We're exposing that with new randr abilities soon, so it may become irrelevant).
Comment 17 Oswald Buddenhagen 2007-11-11 05:55:55 UTC
Created attachment 12453 [details] [review]
respect Modes option

user: why is my "Modes" line ignored?
xorg: uhm ... probably because we don't call the function to make use of it anywhere.
user: ah, sounds plausible ... ermm ... !?!?!
Comment 18 Oswald Buddenhagen 2007-11-11 08:13:53 UTC
Created attachment 12460 [details] [review]
add UseDdcModes and UseDefaultModes options

mainly to simplify debugging, add options to suppress using modes from edid and generating default modes.
maybe the options should be pre-parsed elsewhere - no idea.
Comment 19 Oswald Buddenhagen 2007-11-12 01:41:55 UTC
Created attachment 12473 [details] [review]
consider horizontal resolution, too, when picking initial mode

this doesn't seem to be necessary for my configuration any more, but it seems more correct that way. dunno.
note that i weight a horizontal mismatch less than a vertical one - you might want to tune that factor in either direction.
Comment 20 Michael Fu 2008-01-07 00:50:03 UTC
correct the component field...
Comment 21 Oswald Buddenhagen 2008-01-07 01:35:21 UTC
not really. all the patches i submitted apply to the server, not the driver. afaics at this point, there are no driver-specific issues.
Comment 22 Michael Fu 2008-01-07 17:27:41 UTC
ok. thanks for correction. change the component field again. sorry for the spam.
Comment 23 Oswald Buddenhagen 2008-03-15 04:25:57 UTC
Created attachment 15140 [details] [review]
consider horizontal resolution, too, when picking initial mode (rebased)
Comment 24 Oswald Buddenhagen 2008-06-09 16:25:56 UTC
somebody feels like finally reviewing these patches?
Comment 25 Adam Jackson 2018-06-12 18:43:15 UTC
Mass closure: This bug has been untouched for more than six years, and is not obviously still valid. Please file a new report if you continue to experience issues with a current server.

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.