drm/i915: Add support for fence registers on Ivybridge.
The registers are the same as on Sandybridge. Fixes scrambled display in X when it does software drawing to the GTT, and scans the results out as tiled. Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
parent
10ed13e4a5
commit
25aebfc30b
|
@ -2673,6 +2673,7 @@ i915_gem_object_get_fence(struct drm_i915_gem_object *obj,
|
||||||
update:
|
update:
|
||||||
obj->tiling_changed = false;
|
obj->tiling_changed = false;
|
||||||
switch (INTEL_INFO(dev)->gen) {
|
switch (INTEL_INFO(dev)->gen) {
|
||||||
|
case 7:
|
||||||
case 6:
|
case 6:
|
||||||
ret = sandybridge_write_fence_reg(obj, pipelined);
|
ret = sandybridge_write_fence_reg(obj, pipelined);
|
||||||
break;
|
break;
|
||||||
|
@ -2706,6 +2707,7 @@ i915_gem_clear_fence_reg(struct drm_device *dev,
|
||||||
uint32_t fence_reg = reg - dev_priv->fence_regs;
|
uint32_t fence_reg = reg - dev_priv->fence_regs;
|
||||||
|
|
||||||
switch (INTEL_INFO(dev)->gen) {
|
switch (INTEL_INFO(dev)->gen) {
|
||||||
|
case 7:
|
||||||
case 6:
|
case 6:
|
||||||
I915_WRITE64(FENCE_REG_SANDYBRIDGE_0 + fence_reg*8, 0);
|
I915_WRITE64(FENCE_REG_SANDYBRIDGE_0 + fence_reg*8, 0);
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue