Author: branden Date: 2005-01-10 14:32:04 -0500 (Mon, 10 Jan 2005) New Revision: 2124
Modified: trunk/debian/CHANGESETS trunk/debian/changelog trunk/debian/patches/099m_mga_increase_minimum_pixel_clock.diff Log: Permit lower pixel clocks (less than 17.75 MHz, but greater than 12 MHz) on older (Millenium, Mystique) Matrox cards. Thanks to Jan Gorski for supplying information (updates fix for #261993). Modified: trunk/debian/CHANGESETS =================================================================== --- trunk/debian/CHANGESETS 2005-01-10 18:17:24 UTC (rev 2123) +++ trunk/debian/CHANGESETS 2005-01-10 19:32:04 UTC (rev 2124) @@ -114,4 +114,9 @@ (Closes: #289508) 2123 +Permit lower pixel clocks (less than 17.75 MHz, but greater than 12 MHz) +on older (Millenium, Mystique) Matrox cards. Thanks to Jan Gorski for +supplying information (updates fix for #261993). + 2124 + vim:set ai et sts=4 sw=4 tw=80: Modified: trunk/debian/changelog =================================================================== --- trunk/debian/changelog 2005-01-10 18:17:24 UTC (rev 2123) +++ trunk/debian/changelog 2005-01-10 19:32:04 UTC (rev 2124) @@ -93,8 +93,12 @@ * Fix typo in German debconf template translations. Thanks, Georg Neis! (Closes: #289508) - -- Branden Robinson <[EMAIL PROTECTED]> Mon, 10 Jan 2005 13:16:05 -0500 + * Permit lower pixel clocks (less than 17.75 MHz, but greater than 12 MHz) + on older (Millenium, Mystique) Matrox cards. Thanks to Jan Gorski for + supplying information (updates fix for #261993). + -- Branden Robinson <[EMAIL PROTECTED]> Mon, 10 Jan 2005 14:29:58 -0500 + xfree86 (4.3.0.dfsg.1-10) unstable; urgency=medium * Upload urgency set to medium due to fix for stable-release-critical bugs Modified: trunk/debian/patches/099m_mga_increase_minimum_pixel_clock.diff =================================================================== --- trunk/debian/patches/099m_mga_increase_minimum_pixel_clock.diff 2005-01-10 18:17:24 UTC (rev 2123) +++ trunk/debian/patches/099m_mga_increase_minimum_pixel_clock.diff 2005-01-10 19:32:04 UTC (rev 2124) @@ -1,28 +1,59 @@ $Id$ -Increase the minimum pixel clock for Matrox cards based on feedback from -Teemu Ikonen. See <URL: -http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=261993 >. +Set the minimum pixel clock for Matrox cards based on the chipset. +Thanks to Teemu Ikonen for G550 information, Jeff King for G400 +information, and Jan Gorski for Mystique information. + +See <URL: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=261993 >. + This patch by Branden Robinson. -Not submitted upstream to XFree86. +Not submitted upstream to XFree86 or X.Org. ---- xc/programs/Xserver/hw/xfree86/drivers/mga/mga_driver.c~ 2004-12-09 13:01:06.000000000 -0500 -+++ xc/programs/Xserver/hw/xfree86/drivers/mga/mga_driver.c 2004-12-09 13:03:50.000000000 -0500 -@@ -1987,8 +1987,13 @@ +--- xc/programs/Xserver/hw/xfree86/drivers/mga/mga_driver.c~ 2005-01-10 13:49:11.000000000 -0500 ++++ xc/programs/Xserver/hw/xfree86/drivers/mga/mga_driver.c 2005-01-10 14:07:51.000000000 -0500 +@@ -1987,10 +1987,39 @@ /* XXX Set HW cursor use */ - /* Set the min pixel clock */ - pMga->MinClock = 12000; /* XXX Guess, need to check this */ +- xf86DrvMsg(pScrn->scrnIndex, X_DEFAULT, "Min pixel clock is %d MHz\n", +- pMga->MinClock / 1000); + /* -+ * Set the min pixel clock; this was originally guessed to be 12000, -+ * but an MGA G550 user reports that modes with clocks less than 17750 -+ * lock up the card. See ++ * Set the minimum pixel clock; this was originally guessed to be 12000 ++ * (kHz). MGA G550 and G400 users report that modes with clocks less ++ * than 17750 lock up the card. A Mystique user reports that a 12.6 ++ * MHz pixel clock works fine. See + * <URL: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=261993 > ++ * for details. ++ * ++ * Based on the above, I am assuming that Millenium- and Mystique-era ++ * cards can handle the lower clocks, and the G-series cards cannot. ++ * Unrecognized chips are presumed below to be of the newer variety, ++ * which don't support the low pixel clocks. ++ * -- Branden Robinson + */ -+ pMga->MinClock = 17750; - xf86DrvMsg(pScrn->scrnIndex, X_DEFAULT, "Min pixel clock is %d MHz\n", - pMga->MinClock / 1000); ++ switch(pMga->Chipset) { ++ case PCI_CHIP_MGA2064: ++ case PCI_CHIP_MGA1064: ++ case PCI_CHIP_MGA2164: ++ case PCI_CHIP_MGA2164_AGP: ++ pMga->MinClock = 12000; ++ break; ++ case PCI_CHIP_MGAG100: ++ case PCI_CHIP_MGAG100_PCI: ++ case PCI_CHIP_MGAG200: ++ case PCI_CHIP_MGAG200_PCI: ++ case PCI_CHIP_MGAG400: ++ case PCI_CHIP_MGAG550: ++ default: ++ pMga->MinClock = 17750; ++ break; ++ } ++ xf86DrvMsg(pScrn->scrnIndex, X_DEFAULT, "Minimum permitted pixel clock is " ++ " %d MHz\n", pMga->MinClock / 1000); /* + * If the user has specified ramdac speed in the XF86Config + * file, we respect that setting. -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]