Commit Graph

34 Commits

Author SHA1 Message Date
Adam Jackson
85617b56e5 Remove some #if 0 guarding code duplicated in xf86Modes.c 2008-02-29 16:01:14 -05:00
Adam Jackson
85365ddf16 EDID 1.4: If given a native pixel format, use it when inferring virtual. 2007-12-28 17:38:52 -05:00
Adam Jackson
1768af38c7 Add infrastructure for validating modes by memory bandwidth. 2007-12-13 15:06:18 -05:00
Adam Jackson
8cedbb0a53 Clean up some #if 0. 2007-12-13 10:57:35 -05:00
Adam Jackson
e316fa59fe Add per-monitor config file option for maximum pixel clock. 2007-07-10 14:20:55 -04:00
Tiago Vignatti
38f8e53668 Janitor work. Remove 'defined but not used' warnings from xorg and other cosmetic. 2007-06-27 03:19:37 -03:00
Henry Zhao
66702f3c1c Need to use minPitch in miScanLineWidth() to get the shrinked
linePitch.
2007-06-01 23:55:40 -07:00
Keith Packard
f350909d16 Kludge around duplicate code added in hw/xfree86/modes.
Code added in hw/xfree86/modes came from the server-1.3-branch.
Portions of this code had previously been integrated into xf86Mode.c
and edid_modes.c.

To preserve hw/xfree86/modes as much as possible, the duplicate code from
the other files has been disabled; a more careful review would figure out
where that code actually belonged.
2007-02-15 21:50:48 -08:00
Eric Anholt
8bce182568 Restore a few important lines killed in the previous commit.
Typical results were failure to sync, and a black screen.
2007-01-29 17:30:59 -08:00
Eric Anholt
31f2d4a57e Bug #9680: Remove bogus blank length limiting in xf86SetModeCrtc().
Our modes typically come from EDID or default modes, and when the monitor
asks for a specific mode, deciding to tweak it usually results in incorrect
display.  And if the user is specifying a mode by hand, tweaking it then is
still pretty rude.

Reviewed by: ajax
2007-01-29 09:45:33 -08:00
Eric Anholt
16f8f10dc2 Move mode handling helpers from ddcProperty.c to xf86Mode.c. 2006-11-27 16:21:31 -08:00
Eric Anholt
b4b0d901d9 Merge branch 'randr-1.2'
Conflicts:

	dix/events.c
	dix/getevents.c
	hw/xfree86/common/xf86Mode.c
	hw/xfree86/dri/Makefile.am
	hw/xfree86/os-support/drm/xf86drm.c
	hw/xfree86/os-support/xf86drm.h
2006-11-27 15:43:15 -08:00
Eric Anholt
d6cd0313c7 Add some mode helper functions from the intel driver.
This also removes static from some other functions that had been copied out
to at least the intel driver, but perhaps others that were doing mode list
handling.
2006-11-27 14:46:50 -08:00
Adam Jackson
46af6d1e95 Always believe the monitor when it reports a reduced-blanking mode.
CVT reduced blanking modes are typically only seen on digital connections to
LCDs, but there are some monitors that report them as supported over the
VGA connector too, which is perfectly legitimate, electrically speaking.
2006-09-14 19:28:44 -04:00
Adam Jackson
a8f9936f55 Prefer driver-provided modes when matching name strings to modelines.
Well, kinda.  Strictly we prefer M_T_BUILTIN strongest since those are modes
where the driver has said it absolutely can't do anything else (VBE).  Then
we look for user-defined modes, ie, modelines from the config file.  Then
we consider modes reported by the monitor via EDID.  Finally if nothing has
matched yet we consider the default mode pool.

Within each of the above-mentioned classes, modes with the M_T_PREFERRED bit
take priority over other modes in the same class.

This logic ensures that the timings sent to the monitor exactly match the
timings it reported as supported, which occasionally don't match the numbers
you might get for that mode from CVT or GTF.
2006-09-14 19:24:41 -04:00
Adam Jackson
81ef1b6d60 Mark EDID modes as driver modes. Infer virtual size from driver modes.
This allows the server to guess an appropriate initial virtual size and
resolution.  The heuristic is to select the largest driver-reported mode
that matches the monitor's physical aspect ratio.  We revalidate this
estimate after mode validation, since we may have filtered away all
modes that would fill that size.

Also, the EDID preferred timing is now marked as M_T_PREFERRED as well.
2006-09-14 19:18:58 -04:00
Adam Jackson
beac2bf1e4 Expand the default sync ranges to be large enough for 800x600@60. 2006-09-14 19:01:13 -04:00
Adam Jackson
d89fee68d0 Record the maximum dot clock of the monitor, and filter by it. 2006-09-14 18:41:15 -04:00
Luc Verhaegen
511c60bc73 Bug #5386: Synthesize modelines from EDID data. 2006-09-14 18:30:36 -04:00
Adam Jackson
ee5e2cbd2b Un-cut-and-paste the mode rejection message. 2006-08-17 17:29:32 -04:00
Adam Jackson
c4951e0a6b Fix a mode sanity check to not break reduced-blanking setups (LCDs). 2006-08-10 20:49:06 -04:00
Adam Jackson
0aaac95b0d Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04:00
Adam Jackson
a68c11bb1d Mark everything in xf86sym.c as _X_EXPORT. 2006-03-25 19:52:05 +00:00
Luc Verhaegen
68a8963f72 Fix cvt -r check again. CH7011 TV encoder had 800x600 PAL hit the check. 2006-03-07 16:00:57 +00:00
Luc Verhaegen
8f3c69dcf1 Accept modes with less than 25% horizontal blanking again (you can push old
gtf timing to below 25%), only stop cvt reduced blanking. Users should
    be free to blow up their monitors if they so choose.
2006-01-31 13:04:02 +00:00
Luc Verhaegen
3664c3ebf3 Bug #5153: standalone CVT modeline generator.
- add hw/xfree86/utils/cvt/, cvt.c, cvt.man.pre and Makefile.am.
- Adjust configure.ac and hw/xfree86/utils/Makefile.am for cvt.
- Add MonPtr->reducedblanking and Option "ReducedBlanking" to the Monitor
    section.
- Check for reduced blanking in xf86CheckModeForMonitor and disallow modes
    with less than 25% blanking otherwise.
- Fix some warnings in hw/xfree86/common/xf86Config.c.
2005-12-28 15:22:21 +00:00
Daniel Stone
0bb669638f Change <X11/misc.h> and <X11/os.h> to "misc.h" and "os.h". 2005-07-03 08:53:54 +00:00
Daniel Stone
e03198972c Add Xtrans definitions (FONT_t, TRANS_CLIENT) to clean up warnings.
Add XSERV_t, TRANS_SERVER, TRANS_REOPEN to quash warnings.
Add #include <dix-config.h> or <xorg-config.h>, as appropriate, to all
    source files in the xserver/xorg tree, predicated on defines of
    HAVE_{DIX,XORG}_CONFIG_H. Change all Xfont includes to
    <X11/fonts/foo.h>.
2005-07-03 07:02:09 +00:00
Daniel Stone
9b1debcdb6 Change all misc.h and os.h references to <X11/foo.h>. 2005-07-01 22:43:43 +00:00
Egbert Eich
bbbb0a3a84 Avoid segfaults if the number of user supplied monitor ranges exceed the
number of preallocated slots. We should really make this dynamic - but
    I don't think this ever caused a problem so it's more or less academic.
A. Avoid that *SyncStart starts before *BlankStart. If *BlankStart >
*SyncStart it is made = *SyncStart and its width is made maximal but such
    that the blank does not exceed *Total. Since the Sync width has the
    same restrictions as the Blank width monitors should still be able to
    clamp after the sync pulse. B. Over time mode validation has become
    inconsistent when people started to add additional features to the mode
    validation. One such feature is that the mode->Crtc* values have been
    (ab)used to allow the driver ValidMode() function to pass driver
    normalized timing values back to the validation function. The
    introduction of these features made the code less readable and created
    numerous possibly unintended side effects in the validation semantics.
    I've attempted to consolidate these changes making the code more
    consistent and eliminating a number of side effects. This should not
    cause problems for the majority of drivers, still it should receive
    testing - especially with ATi Mach64 and Radeon code. (Bugzilla #3325).
2005-05-18 10:31:53 +00:00
Daniel Stone
292c4cff26 Fix includes right throughout the Xserver tree:
change "foo.h" to <X11/foo.h> for core headers, e.g. X.h, Xpoll.h;
change "foo.h", "extensions/foo.h" and "X11/foo.h" to
    <X11/extensions/foo.h> for extension headers, e.g. Xv.h;
change "foo.[ch]" to <X11/Xtrans/foo.[ch]> for Xtrans files.
2005-04-20 12:25:48 +00:00
Egbert Eich
2fb5886200 Merging XORG-CURRENT into trunk 2004-04-23 19:54:30 +00:00
Kaleb Keithley
adc7f9a4eb XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks 2003-11-25 19:29:01 +00:00
Kaleb Keithley
9508a382f8 Initial revision 2003-11-14 16:48:57 +00:00