diff options
author | Jesse Barnes <jbarnes@hobbes.virtuousgeek.org> | 2008-01-09 09:47:38 -0800 |
---|---|---|
committer | Jesse Barnes <jbarnes@hobbes.virtuousgeek.org> | 2008-01-09 09:47:38 -0800 |
commit | 3c22ed633be2ac96eea7bc533839e956f1f31b84 (patch) | |
tree | 42d41b357f1e035f20a94a621b94d85c95c0f380 /src/i830_crt.c | |
parent | d3b41bcf231a6ffd289c128c06aa619f554a776c (diff) |
Add pipe A force enable quirk
On some platforms, the firmware may read & write GPU registers on lid close,
suspend/resume time or during various SMM events. If one of the graphics pipes
is disabled at that time, the GPU may hang due to the programming dependencies
of the various registers.
This patch adds a quirk to force the driver to keep pipe A enabled if
necessary, through user configuration in xorg.conf or via a platform specific
quirk. Leaving the pipe enabled comes at a power cost however, so the quirk
should only be enabled when strictly necessary.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=11432.
Diffstat (limited to 'src/i830_crt.c')
-rw-r--r-- | src/i830_crt.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/i830_crt.c b/src/i830_crt.c index cd71dc59..3f0fc463 100644 --- a/src/i830_crt.c +++ b/src/i830_crt.c @@ -380,6 +380,14 @@ i830_crt_detect(xf86OutputPtr output) out: i830ReleaseLoadDetectPipe (output, dpms_mode); + + /* Needed for some machines where the BIOS pokes at pipe A */ + if (pI830->quirk_flag & QUIRK_PIPEA_FORCE) { + xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Overriding VGA detection, " + "forcing pipe A on.\n"); + status = XF86OutputStatusConnected; + } + return status; } |