diff options
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | src/savage_driver.c | 24 | ||||
-rw-r--r-- | src/savage_vbe.c | 10 |
3 files changed, 25 insertions, 11 deletions
diff --git a/configure.ac b/configure.ac index 2676116..864b4d3 100644 --- a/configure.ac +++ b/configure.ac @@ -22,7 +22,7 @@ AC_PREREQ(2.57) AC_INIT([xf86-video-savage], - 2.2.0, + 2.2.1, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xf86-video-savage) diff --git a/src/savage_driver.c b/src/savage_driver.c index 2205dc8..919bd1a 100644 --- a/src/savage_driver.c +++ b/src/savage_driver.c @@ -1211,6 +1211,30 @@ static void SavageGetPanelInfo(ScrnInfoPtr pScrn) psav->PanelX = panelX; psav->PanelY = panelY; + do { + DisplayModePtr native = xf86CVTMode(panelX, panelY, 60.0, 0, 0); + if (!native) + break; + + if (!pScrn->monitor->nHsync) { + pScrn->monitor->nHsync = 1; + pScrn->monitor->hsync[0].lo = 31.5; + pScrn->monitor->hsync[0].hi = (float)native->Clock / + (float)native->HTotal; + } + if (!pScrn->monitor->nVrefresh) { + pScrn->monitor->nVrefresh = 1; + pScrn->monitor->vrefresh[0].lo = 56.0; + pScrn->monitor->vrefresh[0].hi = (float)native->Clock * 1000.0 / + (float)native->HTotal / + (float)native->VTotal; + } + if (!pScrn->monitor->maxPixClock) + pScrn->monitor->maxPixClock = native->Clock; + + xfree(native); + } while (0); + if( psav->LCDClock > 0.0 ) { psav->maxClock = psav->LCDClock * 1000.0; diff --git a/src/savage_vbe.c b/src/savage_vbe.c index 5933b4e..afbaa8f 100644 --- a/src/savage_vbe.c +++ b/src/savage_vbe.c @@ -18,7 +18,6 @@ #endif #define L_ADD(x) (B_O32(x) & 0xffff) + ((B_O32(x) >> 12) & 0xffff00) -Bool vbeModeInit( vbeInfoPtr, int ); static int SavageGetDevice( SavagePtr psav ); /*static int SavageGetTVType( SavagePtr psav );*/ void SavageSetVESAModeCrtc1( SavagePtr psav, int n, int Refresh ); @@ -186,15 +185,6 @@ SavageSetVESAMode( SavagePtr psav, int n, int Refresh ) ErrorF("Set video mode failed\n"); } } -#ifdef XFree86LOADER - else - { - if( !vbeModeInit( psav->pVbe, n ) ) - { - ErrorF("Set video mode failed\n"); - } - } -#endif } void |