summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac2
-rw-r--r--src/savage_driver.c24
-rw-r--r--src/savage_vbe.c10
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