drm/i915: swizzling support for snb/ivb
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Thu, 2 Feb 2012 08:58:12 +0000 (09:58 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 8 Feb 2012 22:16:24 +0000 (23:16 +0100)
commitf691e2f4cec334e906f971471b3bf1460c6256d4
tree1397e4e39cc1322b3458365e8b10aeca71f8383f
parent172975aa746e155533cb386c7159c2d6510e2bc8
drm/i915: swizzling support for snb/ivb

We have to do this manually. Somebody had a Great Idea.

I've measured speed-ups just a few percent above the noise level
(below 5% for the best case), but no slowdows. Chris Wilson measured
quite a bit more (10-20% above the usual snb variance) on a more
recent and better tuned version of sna, but also recorded a few
slow-downs on benchmarks know for uglier amounts of snb-induced
variance.

v2: Incorporate Ben Widawsky's preliminary review comments and
elaborate a bit about the performance impact in the changelog.

v3: Add a comment as to why we don't need to check the 3rd memory
channel.

v4: Fixup whitespace.

Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_dma.c
drivers/gpu/drm/i915/i915_drv.c
drivers/gpu/drm/i915/i915_drv.h
drivers/gpu/drm/i915/i915_gem.c
drivers/gpu/drm/i915/i915_gem_tiling.c
drivers/gpu/drm/i915/i915_reg.h