Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 1 Oct 2012 08:33:40 +0000 (UTC)
From:      Alexander Motin <mav@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org
Subject:   svn commit: r241091 - stable/9/sys/dev/drm2/i915
Message-ID:  <201210010833.q918XerP011312@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: mav
Date: Mon Oct  1 08:33:39 2012
New Revision: 241091
URL: http://svn.freebsd.org/changeset/base/241091

Log:
  MFC r240917:
  Reduce delays in several wait loops from 10ms to 10us, same is it is done
  in Linux. This substantially increases graphics performance on Ivy Bridge.
  
  Submitted by:	avg@
  Reviewed by:	kib@

Modified:
  stable/9/sys/dev/drm2/i915/i915_drv.c
Directory Properties:
  stable/9/sys/   (props changed)
  stable/9/sys/dev/   (props changed)

Modified: stable/9/sys/dev/drm2/i915/i915_drv.c
==============================================================================
--- stable/9/sys/dev/drm2/i915/i915_drv.c	Mon Oct  1 08:32:05 2012	(r241090)
+++ stable/9/sys/dev/drm2/i915/i915_drv.c	Mon Oct  1 08:33:39 2012	(r241091)
@@ -486,14 +486,14 @@ __gen6_gt_force_wake_get(struct drm_i915
 
 	count = 0;
 	while (count++ < 50 && (I915_READ_NOTRACE(FORCEWAKE_ACK) & 1))
-		DELAY(10000);
+		DELAY(10);
 
 	I915_WRITE_NOTRACE(FORCEWAKE, 1);
 	POSTING_READ(FORCEWAKE);
 
 	count = 0;
 	while (count++ < 50 && (I915_READ_NOTRACE(FORCEWAKE_ACK) & 1) == 0)
-		DELAY(10000);
+		DELAY(10);
 }
 
 void
@@ -503,14 +503,14 @@ __gen6_gt_force_wake_mt_get(struct drm_i
 
 	count = 0;
 	while (count++ < 50 && (I915_READ_NOTRACE(FORCEWAKE_MT_ACK) & 1))
-		DELAY(10000);
+		DELAY(10);
 
 	I915_WRITE_NOTRACE(FORCEWAKE_MT, (1<<16) | 1);
 	POSTING_READ(FORCEWAKE_MT);
 
 	count = 0;
 	while (count++ < 50 && (I915_READ_NOTRACE(FORCEWAKE_MT_ACK) & 1) == 0)
-		DELAY(10000);
+		DELAY(10);
 }
 
 void
@@ -572,7 +572,7 @@ __gen6_gt_wait_for_fifo(struct drm_i915_
 		int loop = 500;
 		u32 fifo = I915_READ_NOTRACE(GT_FIFO_FREE_ENTRIES);
 		while (fifo <= GT_FIFO_NUM_RESERVED_ENTRIES && loop--) {
-			DELAY(10000);
+			DELAY(10);
 			fifo = I915_READ_NOTRACE(GT_FIFO_FREE_ENTRIES);
 		}
 		if (loop < 0 && fifo <= GT_FIFO_NUM_RESERVED_ENTRIES) {



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201210010833.q918XerP011312>