aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/gpu/drm/i915/i915_drv.h5
-rw-r--r--drivers/gpu/drm/i915/i915_gem.c2
-rw-r--r--drivers/gpu/drm/i915/i915_irq.c4
-rw-r--r--drivers/gpu/drm/i915/i915_sysfs.c4
-rw-r--r--drivers/gpu/drm/i915/intel_ringbuffer.c6
5 files changed, 11 insertions, 10 deletions
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 015df5264dcc..09a5c829168c 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -1691,8 +1691,9 @@ struct drm_i915_file_private {
1691 1691
1692#define HAS_FORCE_WAKE(dev) (INTEL_INFO(dev)->has_force_wake) 1692#define HAS_FORCE_WAKE(dev) (INTEL_INFO(dev)->has_force_wake)
1693 1693
1694#define HAS_L3_GPU_CACHE(dev) (IS_IVYBRIDGE(dev) || IS_HASWELL(dev)) 1694/* DPF == dynamic parity feature */
1695#define NUM_L3_SLICES(dev) (IS_HSW_GT3(dev) ? 2 : HAS_L3_GPU_CACHE(dev)) 1695#define HAS_L3_DPF(dev) (IS_IVYBRIDGE(dev) || IS_HASWELL(dev))
1696#define NUM_L3_SLICES(dev) (IS_HSW_GT3(dev) ? 2 : HAS_L3_DPF(dev))
1696 1697
1697#define GT_FREQUENCY_MULTIPLIER 50 1698#define GT_FREQUENCY_MULTIPLIER 50
1698 1699
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 83464aae909f..f1779b352f59 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -4230,7 +4230,7 @@ int i915_gem_l3_remap(struct intel_ring_buffer *ring, int slice)
4230 u32 *remap_info = dev_priv->l3_parity.remap_info[slice]; 4230 u32 *remap_info = dev_priv->l3_parity.remap_info[slice];
4231 int i, ret; 4231 int i, ret;
4232 4232
4233 if (!HAS_L3_GPU_CACHE(dev) || !remap_info) 4233 if (!HAS_L3_DPF(dev) || !remap_info)
4234 return 0; 4234 return 0;
4235 4235
4236 ret = intel_ring_begin(ring, GEN7_L3LOG_SIZE / 4 * 3); 4236 ret = intel_ring_begin(ring, GEN7_L3LOG_SIZE / 4 * 3);
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 60a7bac4fc3b..a73e84716939 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -960,7 +960,7 @@ static void ivybridge_parity_error_irq_handler(struct drm_device *dev, u32 iir)
960{ 960{
961 drm_i915_private_t *dev_priv = (drm_i915_private_t *) dev->dev_private; 961 drm_i915_private_t *dev_priv = (drm_i915_private_t *) dev->dev_private;
962 962
963 if (!HAS_L3_GPU_CACHE(dev)) 963 if (!HAS_L3_DPF(dev))
964 return; 964 return;
965 965
966 spin_lock(&dev_priv->irq_lock); 966 spin_lock(&dev_priv->irq_lock);
@@ -2246,7 +2246,7 @@ static void gen5_gt_irq_postinstall(struct drm_device *dev)
2246 pm_irqs = gt_irqs = 0; 2246 pm_irqs = gt_irqs = 0;
2247 2247
2248 dev_priv->gt_irq_mask = ~0; 2248 dev_priv->gt_irq_mask = ~0;
2249 if (HAS_L3_GPU_CACHE(dev)) { 2249 if (HAS_L3_DPF(dev)) {
2250 /* L3 parity interrupt is always unmasked. */ 2250 /* L3 parity interrupt is always unmasked. */
2251 dev_priv->gt_irq_mask = ~GT_PARITY_ERROR(dev); 2251 dev_priv->gt_irq_mask = ~GT_PARITY_ERROR(dev);
2252 gt_irqs |= GT_PARITY_ERROR(dev); 2252 gt_irqs |= GT_PARITY_ERROR(dev);
diff --git a/drivers/gpu/drm/i915/i915_sysfs.c b/drivers/gpu/drm/i915/i915_sysfs.c
index deb8787308d6..7b4c79cdb39e 100644
--- a/drivers/gpu/drm/i915/i915_sysfs.c
+++ b/drivers/gpu/drm/i915/i915_sysfs.c
@@ -97,7 +97,7 @@ static struct attribute_group rc6_attr_group = {
97 97
98static int l3_access_valid(struct drm_device *dev, loff_t offset) 98static int l3_access_valid(struct drm_device *dev, loff_t offset)
99{ 99{
100 if (!HAS_L3_GPU_CACHE(dev)) 100 if (!HAS_L3_DPF(dev))
101 return -EPERM; 101 return -EPERM;
102 102
103 if (offset % 4 != 0) 103 if (offset % 4 != 0)
@@ -525,7 +525,7 @@ void i915_setup_sysfs(struct drm_device *dev)
525 DRM_ERROR("RC6 residency sysfs setup failed\n"); 525 DRM_ERROR("RC6 residency sysfs setup failed\n");
526 } 526 }
527#endif 527#endif
528 if (HAS_L3_GPU_CACHE(dev)) { 528 if (HAS_L3_DPF(dev)) {
529 ret = device_create_bin_file(&dev->primary->kdev, &dpf_attrs); 529 ret = device_create_bin_file(&dev->primary->kdev, &dpf_attrs);
530 if (ret) 530 if (ret)
531 DRM_ERROR("l3 parity sysfs setup failed\n"); 531 DRM_ERROR("l3 parity sysfs setup failed\n");
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 958b7d8fea8b..b67104aaade5 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -569,7 +569,7 @@ static int init_render_ring(struct intel_ring_buffer *ring)
569 if (INTEL_INFO(dev)->gen >= 6) 569 if (INTEL_INFO(dev)->gen >= 6)
570 I915_WRITE(INSTPM, _MASKED_BIT_ENABLE(INSTPM_FORCE_ORDERING)); 570 I915_WRITE(INSTPM, _MASKED_BIT_ENABLE(INSTPM_FORCE_ORDERING));
571 571
572 if (HAS_L3_GPU_CACHE(dev)) 572 if (HAS_L3_DPF(dev))
573 I915_WRITE_IMR(ring, ~GT_PARITY_ERROR(dev)); 573 I915_WRITE_IMR(ring, ~GT_PARITY_ERROR(dev));
574 574
575 return ret; 575 return ret;
@@ -997,7 +997,7 @@ gen6_ring_get_irq(struct intel_ring_buffer *ring)
997 997
998 spin_lock_irqsave(&dev_priv->irq_lock, flags); 998 spin_lock_irqsave(&dev_priv->irq_lock, flags);
999 if (ring->irq_refcount++ == 0) { 999 if (ring->irq_refcount++ == 0) {
1000 if (HAS_L3_GPU_CACHE(dev) && ring->id == RCS) 1000 if (HAS_L3_DPF(dev) && ring->id == RCS)
1001 I915_WRITE_IMR(ring, 1001 I915_WRITE_IMR(ring,
1002 ~(ring->irq_enable_mask | 1002 ~(ring->irq_enable_mask |
1003 GT_PARITY_ERROR(dev))); 1003 GT_PARITY_ERROR(dev)));
@@ -1019,7 +1019,7 @@ gen6_ring_put_irq(struct intel_ring_buffer *ring)
1019 1019
1020 spin_lock_irqsave(&dev_priv->irq_lock, flags); 1020 spin_lock_irqsave(&dev_priv->irq_lock, flags);
1021 if (--ring->irq_refcount == 0) { 1021 if (--ring->irq_refcount == 0) {
1022 if (HAS_L3_GPU_CACHE(dev) && ring->id == RCS) 1022 if (HAS_L3_DPF(dev) && ring->id == RCS)
1023 I915_WRITE_IMR(ring, ~GT_PARITY_ERROR(dev)); 1023 I915_WRITE_IMR(ring, ~GT_PARITY_ERROR(dev));
1024 else 1024 else
1025 I915_WRITE_IMR(ring, ~0); 1025 I915_WRITE_IMR(ring, ~0);