[haiku-commits] r33822 - in haiku/trunk/src/add-ons: accelerants/matrox/engine kernel/drivers/graphics/matrox

  • From: rudolf.cornelissen@xxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Wed, 28 Oct 2009 22:58:53 +0100 (CET)

Author: rudolfc
Date: 2009-10-28 22:58:53 +0100 (Wed, 28 Oct 2009)
New Revision: 33822
Changeset: http://dev.haiku-os.org/changeset/33822/haiku

Modified:
   haiku/trunk/src/add-ons/accelerants/matrox/engine/mga_general.c
   haiku/trunk/src/add-ons/kernel/drivers/graphics/matrox/UPDATE.html
Log:
fixed RAM access errors on coldstarted G450s. If this introduces trouble on 
other G450s or G550s please file a bug report. Bumped version to 0.32.

Modified: haiku/trunk/src/add-ons/accelerants/matrox/engine/mga_general.c
===================================================================
--- haiku/trunk/src/add-ons/accelerants/matrox/engine/mga_general.c     
2009-10-28 21:37:38 UTC (rev 33821)
+++ haiku/trunk/src/add-ons/accelerants/matrox/engine/mga_general.c     
2009-10-28 21:58:53 UTC (rev 33822)
@@ -1,7 +1,7 @@
 /* Authors:
    Mark Watson 12/1999,
    Apsed,
-   Rudolf Cornelissen 10/2002-5/2006
+   Rudolf Cornelissen 10/2002-10/2009
 */
 
 #define MODULE_BIT 0x00008000
@@ -54,7 +54,7 @@
        status_t status;
        uint8 card_class;
 
-       LOG(1,("POWERUP: Haiku Matrox Accelerant 0.31 running.\n"));
+       LOG(1,("POWERUP: Haiku Matrox Accelerant 0.32 running.\n"));
 
        /* log VBLANK INT usability status */
        if (si->ps.int_assigned)
@@ -720,8 +720,14 @@
        }
 
        /* create positive flank to generate memory reset */
-       ACCW(MACCESS, (maccess & 0xffff7fff));
-       ACCW(MACCESS, (maccess | 0x00008000));
+       //fixme: G550 is still noted as a G450, fix upon trouble..
+       if (si->ps.card_type == G450) {
+               ACCW(MACCESS, (maccess & 0xffff3fff));
+               ACCW(MACCESS, (maccess | 0x0000c000));
+       } else { //G550
+               ACCW(MACCESS, (maccess & 0xffff7fff));
+               ACCW(MACCESS, (maccess | 0x00008000));
+       }
        snooze(250);
 
        /* start memory refresh */

Modified: haiku/trunk/src/add-ons/kernel/drivers/graphics/matrox/UPDATE.html
===================================================================
--- haiku/trunk/src/add-ons/kernel/drivers/graphics/matrox/UPDATE.html  
2009-10-28 21:37:38 UTC (rev 33821)
+++ haiku/trunk/src/add-ons/kernel/drivers/graphics/matrox/UPDATE.html  
2009-10-28 21:58:53 UTC (rev 33822)
@@ -4,7 +4,7 @@
 </head>
 <body>
 <p><h2>Changes done for each driverversion:</h2></p>
-<p><h1>head (svn 0.31, Rudolf)</h1></p>
+<p><h1>head (svn 0.32, Rudolf)</h1></p>
 <ul>
 <li><strong>G100-G200:</strong>
 <ul>
@@ -16,6 +16,10 @@
 <ul>
 <li>The overlay engine code now respects the B_OVERLAY_COLOR_KEY flag instead 
of forcing keying ON.
 </ul>
+<li><strong>G450:</strong>
+<ul>
+<li>Coldstarting now works on more cards: fixed RAM reset trouble so RAM 
access now works (no more ghosting on the screen).
+</ul>
 <li><strong>General:</strong>
 <ul>
 <li>Hook GET_ACCELERANT_DEVICE_INFO now returns more detailed info about the 
card in use;


Other related posts:

  • » [haiku-commits] r33822 - in haiku/trunk/src/add-ons: accelerants/matrox/engine kernel/drivers/graphics/matrox - rudolf . cornelissen