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
This commit is contained in:
parent
1627af5449
commit
31f2d4a57e
|
@ -727,45 +727,6 @@ xf86SetModeCrtc(DisplayModePtr p, int adjustFlags)
|
|||
}
|
||||
p->CrtcHAdjusted = FALSE;
|
||||
p->CrtcVAdjusted = FALSE;
|
||||
|
||||
/*
|
||||
* XXX
|
||||
*
|
||||
* The following is taken from VGA, but applies to other cores as well.
|
||||
*/
|
||||
p->CrtcVBlankStart = min(p->CrtcVSyncStart, p->CrtcVDisplay);
|
||||
p->CrtcVBlankEnd = max(p->CrtcVSyncEnd, p->CrtcVTotal);
|
||||
if ((p->CrtcVBlankEnd - p->CrtcVBlankStart) >= 127) {
|
||||
/*
|
||||
* V Blanking size must be < 127.
|
||||
* Moving blank start forward is safer than moving blank end
|
||||
* back, since monitors clamp just AFTER the sync pulse (or in
|
||||
* the sync pulse), but never before.
|
||||
*/
|
||||
p->CrtcVBlankStart = p->CrtcVBlankEnd - 127;
|
||||
/*
|
||||
* If VBlankStart is now > VSyncStart move VBlankStart
|
||||
* to VSyncStart using the maximum width that fits into
|
||||
* VTotal.
|
||||
*/
|
||||
if (p->CrtcVBlankStart > p->CrtcVSyncStart) {
|
||||
p->CrtcVBlankStart = p->CrtcVSyncStart;
|
||||
p->CrtcVBlankEnd = min(p->CrtcHBlankStart + 127, p->CrtcVTotal);
|
||||
}
|
||||
}
|
||||
p->CrtcHBlankStart = min(p->CrtcHSyncStart, p->CrtcHDisplay);
|
||||
p->CrtcHBlankEnd = max(p->CrtcHSyncEnd, p->CrtcHTotal);
|
||||
|
||||
if ((p->CrtcHBlankEnd - p->CrtcHBlankStart) >= 63 * 8) {
|
||||
/*
|
||||
* H Blanking size must be < 63*8. Same remark as above.
|
||||
*/
|
||||
p->CrtcHBlankStart = p->CrtcHBlankEnd - 63 * 8;
|
||||
if (p->CrtcHBlankStart > p->CrtcHSyncStart) {
|
||||
p->CrtcHBlankStart = p->CrtcHSyncStart;
|
||||
p->CrtcHBlankEnd = min(p->CrtcHBlankStart + 63 * 8, p->CrtcHTotal);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue
Block a user