[Xorg-commit] xc/programs/Xserver/hw/xfree86/drivers/neomagic neo_driver.c,1.1.4.1,1.1.4.2

Kaleb Keithley xorg-commit at pdx.freedesktop.org
Wed May 9 17:30:30 EEST 2007


Committed by: kaleb

Update of /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/neomagic
In directory pdx:/home/kaleb/xorg/xc.XORG-CURRENT/programs/Xserver/hw/xfree86/drivers/neomagic

Modified Files:
      Tag: XORG-CURRENT
	neo_driver.c 
Log Message:
merge most of XFree86 RC3 (4.3.99.903) from vendor branch.
bug #214


Index: neo_driver.c
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/neomagic/neo_driver.c,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -u -d -r1.1.4.1 -r1.1.4.2
--- a/neo_driver.c	26 Nov 2003 22:48:59 -0000	1.1.4.1
+++ b/neo_driver.c	23 Feb 2004 21:35:34 -0000	1.1.4.2
@@ -30,7 +30,7 @@
  * Copyright 2002 Shigehiro Nomura
  */
 
-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/neomagic/neo_driver.c,v 1.73 2003/10/31 15:46:34 tsi Exp $ */
+/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/neomagic/neo_driver.c,v 1.74 2003/12/31 05:07:30 dawes Exp $ */
 
 /*
  * The original Precision Insight driver for
@@ -1322,14 +1322,41 @@
 	nPtr->NeoCursorMem = 0;
     apertureSize = (pScrn->videoRam * 1024) - nPtr->NeoCursorMem;
 
-   if ((nPtr->NeoPanelWidth == 800) && (nPtr->NeoPanelHeight == 480)) {
-       neo800x480Mode.next = pScrn->monitor->Modes;
-       pScrn->monitor->Modes = &neo800x480Mode;
-   }
-   if ((nPtr->NeoPanelWidth == 1024) && (nPtr->NeoPanelHeight == 480)) {
-       neo1024x480Mode.next = pScrn->monitor->Modes;
-       pScrn->monitor->Modes = &neo1024x480Mode;
-   }
+    if ((nPtr->NeoPanelWidth == 800) && (nPtr->NeoPanelHeight == 480)) {
+	neo800x480Mode.next = pScrn->monitor->Modes;
+	pScrn->monitor->Modes = &neo800x480Mode;
+    }
+    if ((nPtr->NeoPanelWidth == 1024) && (nPtr->NeoPanelHeight == 480)) {
+	neo1024x480Mode.next = pScrn->monitor->Modes;
+	pScrn->monitor->Modes = &neo1024x480Mode;
+    }
+
+    if (!pScrn->monitor->DDC) {
+	/*
+	 * If the monitor parameters are not specified explicitly, set them
+	 * so that 60Hz modes up to the panel size are allowed.
+	 */
+	if (pScrn->monitor->nHsync == 0) {
+	    pScrn->monitor->nHsync = 1;
+	    pScrn->monitor->hsync[0].lo = 28;
+	    pScrn->monitor->hsync[0].hi =
+				60.0 * 1.07 * nPtr->NeoPanelHeight / 1000.0;
+	    xf86DrvMsg(pScrn->scrnIndex, X_PROBED,
+		       "Using hsync range matching panel size: %.2f-%.2f kHz\n",
+		       pScrn->monitor->hsync[0].lo,
+		       pScrn->monitor->hsync[0].hi);
+	}
+	if (pScrn->monitor->nVrefresh == 0) {
+	    pScrn->monitor->nVrefresh = 1;
+	    pScrn->monitor->vrefresh[0].lo = 55.0;
+	    pScrn->monitor->vrefresh[0].hi = 65.0;
+	    xf86DrvMsg(pScrn->scrnIndex, X_PROBED,
+		       "Using vsync range for panel: %.2f-%.2f kHz\n",
+		       pScrn->monitor->vrefresh[0].lo,
+		       pScrn->monitor->vrefresh[0].hi);
+	}
+    }
+
     /*
      * For external displays, limit the width to 1024 pixels or less.
      */





More information about the xorg-commit mailing list