summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Hourihane <alanh@fairlite.demon.co.uk>2005-08-02 16:22:42 +0000
committerAlan Hourihane <alanh@fairlite.demon.co.uk>2005-08-02 16:22:42 +0000
commitfd6d7d7f7ea03961c5ecf7db029f12ece93d414a (patch)
treea990a6d517fa37090d603d87cc8c6d145de36d35
parentda7b85176fc061995e1b04fa22dc736b6c9353e6 (diff)
Adjust newPipe code for BIOS's starting at 1200XORG-6_99_99_900
-rw-r--r--src/i830_driver.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/i830_driver.c b/src/i830_driver.c
index 897e8a8b..e79075eb 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -2697,16 +2697,22 @@ I830BIOSPreInit(ScrnInfoPtr pScrn, int flags)
xf86DrvMsg(pScrn->scrnIndex, X_INFO, "BIOS Build: %d\n",pI830->bios_version);
- if (IS_I915G(pI830) || IS_I915GM(pI830) || IS_I945G(pI830))
+ /* Great..
+ * Intel changed the BIOS version codes and started at 1200.
+ * We know that bios codes for 830M started around 2400.
+ * So we test those conditions to make this judgement. Ugh.
+ */
+ if (pI830->availablePipes == 2 && pI830->bios_version < 2000)
pI830->newPipeSwitch = TRUE;
- else
- if (pI830->availablePipes == 2 && pI830->bios_version >= 3062) {
+ else if (pI830->availablePipes == 2 && pI830->bios_version >= 3062)
/* BIOS build 3062 changed the pipe switching functionality */
pI830->newPipeSwitch = TRUE;
- xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Using new Pipe switch code\n");
- } else
+ else
pI830->newPipeSwitch = FALSE;
+ if (pI830->newPipeSwitch)
+ xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Using new Pipe switch code\n");
+
pI830->devicePresence = FALSE;
from = X_DEFAULT;
if (xf86ReturnOptValBool(pI830->Options, OPTION_DEVICE_PRESENCE, FALSE)) {
@@ -3467,7 +3473,7 @@ SetFenceRegs(ScrnInfoPtr pScrn)
for (i = 0; i < 8; i++) {
OUTREG(FENCE + i * 4, pI830->ModeReg.Fence[i]);
if (I810_DEBUG & DEBUG_VERBOSE_VGA)
- ErrorF("Fence Register : %lx\n", pI830->ModeReg.Fence[i]);
+ ErrorF("Fence Register : %x\n", pI830->ModeReg.Fence[i]);
}
}