diff options
author | Alan Hourihane <alanh@fairlite.demon.co.uk> | 2006-10-13 12:53:53 +0100 |
---|---|---|
committer | Alan Hourihane <alanh@fairlite.demon.co.uk> | 2006-10-13 12:53:53 +0100 |
commit | 8045a7a0af1b276cd7f46ce99d034fd5d503e67c (patch) | |
tree | e9b561175f937f6485077dec83460655745a68e2 /src/i830_driver.c | |
parent | 6596333b077a692c669f8cb4ae32e145f8da6731 (diff) |
Fix bug #8553 & #8542 - suspend/resume regression from 1.5 driver
Diffstat (limited to 'src/i830_driver.c')
-rw-r--r-- | src/i830_driver.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/i830_driver.c b/src/i830_driver.c index a69a9a3a..3cee1c8b 100644 --- a/src/i830_driver.c +++ b/src/i830_driver.c @@ -8041,7 +8041,11 @@ I830BIOSEnterVT(int scrnIndex, int flags) * the Video BIOS with our saved devices, and only when that fails, * we'll warm boot it. */ - if (!I830Set640x480(pScrn)) { + /* Check Pipe conf registers or possibly HTOTAL/VTOTAL for 0x00000000)*/ + CARD32 temp; + Bool set = I830Set640x480(pScrn); + temp = pI830->pipe ? INREG(PIPEBCONF) : INREG(PIPEACONF); + if (!set || !(temp & 0x80000000)) { xf86Int10InfoPtr pInt; xf86DrvMsg(pScrn->scrnIndex, X_INFO, |