[PATCH] r128 DRM module -- hardware bug

From: Gareth Hughes (gareth@valinux.com)
Date: Wed Feb 28 2001 - 08:05:35 EST


The following patch addresses a serious problem with older Rage 128
chipsets, up to and including at least the Rage 128 RF chipset found on
the Xpert 2000. The workaround should be classed as a critical fix, as
without it such cards will lock almost immediately.

-- Gareth

--- linux/drivers/char/drm/r128_drv.h Fri Jan 5 08:03:20 2001
+++ linux.gh/drivers/char/drm/r128_drv.h Thu Mar 1 00:03:35 2001
@@ -447,6 +447,11 @@
                 DRM_INFO( "ADVANCE_RING() tail=0x%06x wr=0x%06x\n", \
                           write, dev_priv->ring.tail ); \
         } \
+ if ( write < 32 ) { \
+ memcpy( dev_priv->ring.end, \
+ dev_priv->ring.start, \
+ write * sizeof(u32) ); \
+ } \
         r128_flush_write_combine(); \
         dev_priv->ring.tail = write; \
         R128_WRITE( R128_PM4_BUFFER_DL_WPTR, write ); \
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Feb 28 2001 - 21:00:16 EST