svn commit: r184375 - head/sys/dev/drm

Robert Noland rnoland at FreeBSD.org
Mon Oct 27 14:24:35 PDT 2008


Author: rnoland
Date: Mon Oct 27 21:24:34 2008
New Revision: 184375
URL: http://svn.freebsd.org/changeset/base/184375

Log:
  Fix error in busmaster enable logic
  
  rs400/rs480 should clear the RADEON_BUS_MASTER_DIS bit.  This should get
  the rs485 IGP chips going again.
  
  Approved by:	jhb (mentor)
  Obtained from:	drm git master

Modified:
  head/sys/dev/drm/radeon_cp.c

Modified: head/sys/dev/drm/radeon_cp.c
==============================================================================
--- head/sys/dev/drm/radeon_cp.c	Mon Oct 27 21:21:36 2008	(r184374)
+++ head/sys/dev/drm/radeon_cp.c	Mon Oct 27 21:24:34 2008	(r184375)
@@ -660,8 +660,10 @@ static void radeon_cp_init_ring_buffer(s
 		/* rs600/rs690/rs740 */
 		tmp = RADEON_READ(RADEON_BUS_CNTL) & ~RS600_BUS_MASTER_DIS;
 		RADEON_WRITE(RADEON_BUS_CNTL, tmp);
-	} else if (!(((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RV380) ||
-		    ((dev_priv->flags & RADEON_FAMILY_MASK) >= CHIP_R423))) {
+	} else if (((dev_priv->flags & RADEON_FAMILY_MASK) <= CHIP_RV350) ||
+		   ((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_R420) ||
+		   ((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS400) ||
+		   ((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS480)) {
 		/* r1xx, r2xx, r300, r(v)350, r420/r481, rs400/rs480 */
 		tmp = RADEON_READ(RADEON_BUS_CNTL) & ~RADEON_BUS_MASTER_DIS;
 		RADEON_WRITE(RADEON_BUS_CNTL, tmp);


More information about the svn-src-all mailing list