diff options
author | mav <mav@FreeBSD.org> | 2012-09-25 10:52:49 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2012-09-25 10:52:49 +0000 |
commit | 34732ca830cdb88299b81a21db8d8b6e75efbce2 (patch) | |
tree | 2df22a1cb6d369a77bb011e118f0a879a9a08a3f /sys/dev/drm2 | |
parent | 8df6c6b408f95a518f5b2a43ce694f1410669b1b (diff) | |
download | FreeBSD-src-34732ca830cdb88299b81a21db8d8b6e75efbce2.zip FreeBSD-src-34732ca830cdb88299b81a21db8d8b6e75efbce2.tar.gz |
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@
Diffstat (limited to 'sys/dev/drm2')
-rw-r--r-- | sys/dev/drm2/i915/i915_drv.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sys/dev/drm2/i915/i915_drv.c b/sys/dev/drm2/i915/i915_drv.c index 79ab6d5..c90d1d1 100644 --- a/sys/dev/drm2/i915/i915_drv.c +++ b/sys/dev/drm2/i915/i915_drv.c @@ -486,14 +486,14 @@ __gen6_gt_force_wake_get(struct drm_i915_private *dev_priv) 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_i915_private *dev_priv) 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_private *dev_priv) 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) { |