History

Merge tag 'drm-intel-fixes-2015-06-05' of git://anongit.freedesktop.org/drm-intel into drm-fixes

bunch of i915 fixes. * tag 'drm-intel-fixes-2015-06-05' of git://anongit.freedesktop.org/drm-intel: drm/i915: Move WaBarrierPerformanceFixDisable:skl to skl code from chv code drm/i915: Include G4X/VLV/CHV in self refresh status drm/i915: Initialize HWS page address after GPU reset drm/i915: Don't skip request retirement if the active list is empty drm/i915/hsw: Fix workaround for server AUX channel clock divisor

Dave Airlie committed 11 years ago

Commit a9592f12 parents 456fdb2 4f47c995 files · +19 −14Browse files

Unified · Split

5 files
  1. drivers/gpu/drm/i915/i915_debugfs.c +4 −1
  2. drivers/gpu/drm/i915/i915_gem.c +0 −3
  3. drivers/gpu/drm/i915/intel_dp.c +2 −3
  4. drivers/gpu/drm/i915/intel_lrc.c +6 −0
  5. drivers/gpu/drm/i915/intel_ringbuffer.c +7 −7
drivers/gpu/drm/i915/i915_debugfs.c+4−1
@@ -1667,12 +1667,15 @@ static int i915_sr_status(struct seq_file *m, void *unused) · 1666 unmodified lines
16671667
16681668 if (HAS_PCH_SPLIT(dev))
16691669 sr_enabled = I915_READ(WM1_LP_ILK) & WM1_LP_SR_EN;
1670− else if (IS_CRESTLINE(dev) || IS_I945G(dev) || IS_I945GM(dev))
1670+ else if (IS_CRESTLINE(dev) || IS_G4X(dev) ||
1671+ IS_I945G(dev) || IS_I945GM(dev))
16711672 sr_enabled = I915_READ(FW_BLC_SELF) & FW_BLC_SELF_EN;
16721673 else if (IS_I915GM(dev))
16731674 sr_enabled = I915_READ(INSTPM) & INSTPM_SELF_EN;
16741675 else if (IS_PINEVIEW(dev))
16751676 sr_enabled = I915_READ(DSPFW3) & PINEVIEW_SELF_REFRESH_EN;
1677+ else if (IS_VALLEYVIEW(dev))
1678+ sr_enabled = I915_READ(FW_BLC_SELF_VLV) & FW_CSPWRDWNEN;
16761679
16771680 intel_runtime_pm_put(dev_priv);
16781681
drivers/gpu/drm/i915/i915_gem.c+0−3
@@ -2656,9 +2656,6 @@ void i915_gem_reset(struct drm_device *dev) · 2655 unmodified lines
26562656 void
26572657 i915_gem_retire_requests_ring(struct intel_engine_cs *ring)
26582658 {
2659− if (list_empty(&ring->request_list))
2660− return;
2661−
26622659 WARN_ON(i915_verify_lists(ring->dev));
26632660
26642661 /* Retire requests first as we use it above for the early return.
drivers/gpu/drm/i915/intel_dp.c+2−3
@@ -880,10 +880,8 @@ intel_dp_aux_ch(struct intel_dp *intel_dp, · 879 unmodified lines
880880 DP_AUX_CH_CTL_RECEIVE_ERROR))
881881 continue;
882882 if (status & DP_AUX_CH_CTL_DONE)
883− break;
883+ goto done;
884884 }
885− if (status & DP_AUX_CH_CTL_DONE)
886− break;
887885 }
888886
889887 if ((status & DP_AUX_CH_CTL_DONE) == 0) {
@@ -892,6 +890,7 @@ intel_dp_aux_ch(struct intel_dp *intel_dp, · 2 unmodified lines
892890 goto out;
893891 }
894892
893+done:
895894 /* Check for timeout or receive error.
896895 * Timeouts occur when the sink is not connected
897896 */
drivers/gpu/drm/i915/intel_lrc.c+6−0
@@ -1134,6 +1134,12 @@ static int gen8_init_common_ring(struct intel_engine_cs *ring) · 1133 unmodified lines
11341134 I915_WRITE_IMR(ring, ~(ring->irq_enable_mask | ring->irq_keep_mask));
11351135 I915_WRITE(RING_HWSTAM(ring->mmio_base), 0xffffffff);
11361136
1137+ if (ring->status_page.obj) {
1138+ I915_WRITE(RING_HWS_PGA(ring->mmio_base),
1139+ (u32)ring->status_page.gfx_addr);
1140+ POSTING_READ(RING_HWS_PGA(ring->mmio_base));
1141+ }
1142+
11371143 I915_WRITE(RING_MODE_GEN7(ring),
11381144 _MASKED_BIT_DISABLE(GFX_REPLAY_MODE) |
11391145 _MASKED_BIT_ENABLE(GFX_RUN_LIST_ENABLE));
drivers/gpu/drm/i915/intel_ringbuffer.c+7−7
@@ -901,13 +901,6 @@ static int chv_init_workarounds(struct intel_engine_cs *ring) · 900 unmodified lines
901901 GEN6_WIZ_HASHING_MASK,
902902 GEN6_WIZ_HASHING_16x4);
903903
904− if (INTEL_REVID(dev) == SKL_REVID_C0 ||
905− INTEL_REVID(dev) == SKL_REVID_D0)
906− /* WaBarrierPerformanceFixDisable:skl */
907− WA_SET_BIT_MASKED(HDC_CHICKEN0,
908− HDC_FENCE_DEST_SLM_DISABLE |
909− HDC_BARRIER_PERFORMANCE_DISABLE);
910−
911904 return 0;
912905 }
913906
@@ -1024,6 +1017,13 @@ static int skl_init_workarounds(struct intel_engine_cs *ring) · 110 unmodified lines
10241017 WA_SET_BIT_MASKED(HIZ_CHICKEN,
10251018 BDW_HIZ_POWER_COMPILER_CLOCK_GATING_DISABLE);
10261019
1020+ if (INTEL_REVID(dev) == SKL_REVID_C0 ||
1021+ INTEL_REVID(dev) == SKL_REVID_D0)
1022+ /* WaBarrierPerformanceFixDisable:skl */
1023+ WA_SET_BIT_MASKED(HDC_CHICKEN0,
1024+ HDC_FENCE_DEST_SLM_DISABLE |
1025+ HDC_BARRIER_PERFORMANCE_DISABLE);
1026+
10271027 return skl_tune_iz_hashing(ring);
10281028 }
10291029

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t