Commit 5fe220a1 authored by Daniel Vetter's avatar Daniel Vetter

Merge tag 'gvt-fixes-2017-07-26' of https://github.com/01org/gvt-linux into drm-intel-fixes

gvt-fixes-2017-07-26

- Turn on KBL support for more SKUs (Jianjun)
- Fix vblank timer close bug (Fred)
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20170726075621.hrauvik62gi2jecj@zhen-hp.sh.intel.com
parents e9ba4032 26a201a2
...@@ -323,27 +323,27 @@ void intel_gvt_check_vblank_emulation(struct intel_gvt *gvt) ...@@ -323,27 +323,27 @@ void intel_gvt_check_vblank_emulation(struct intel_gvt *gvt)
{ {
struct intel_gvt_irq *irq = &gvt->irq; struct intel_gvt_irq *irq = &gvt->irq;
struct intel_vgpu *vgpu; struct intel_vgpu *vgpu;
bool have_enabled_pipe = false;
int pipe, id; int pipe, id;
if (WARN_ON(!mutex_is_locked(&gvt->lock))) if (WARN_ON(!mutex_is_locked(&gvt->lock)))
return; return;
hrtimer_cancel(&irq->vblank_timer.timer);
for_each_active_vgpu(gvt, vgpu, id) { for_each_active_vgpu(gvt, vgpu, id) {
for (pipe = 0; pipe < I915_MAX_PIPES; pipe++) { for (pipe = 0; pipe < I915_MAX_PIPES; pipe++) {
have_enabled_pipe = if (pipe_is_enabled(vgpu, pipe))
pipe_is_enabled(vgpu, pipe); goto out;
if (have_enabled_pipe)
break;
} }
} }
if (have_enabled_pipe) /* all the pipes are disabled */
hrtimer_cancel(&irq->vblank_timer.timer);
return;
out:
hrtimer_start(&irq->vblank_timer.timer, hrtimer_start(&irq->vblank_timer.timer,
ktime_add_ns(ktime_get(), irq->vblank_timer.period), ktime_add_ns(ktime_get(), irq->vblank_timer.period),
HRTIMER_MODE_ABS); HRTIMER_MODE_ABS);
} }
static void emulate_vblank_on_pipe(struct intel_vgpu *vgpu, int pipe) static void emulate_vblank_on_pipe(struct intel_vgpu *vgpu, int pipe)
......
...@@ -45,7 +45,7 @@ static bool is_supported_device(struct drm_i915_private *dev_priv) ...@@ -45,7 +45,7 @@ static bool is_supported_device(struct drm_i915_private *dev_priv)
return true; return true;
if (IS_SKYLAKE(dev_priv)) if (IS_SKYLAKE(dev_priv))
return true; return true;
if (IS_KABYLAKE(dev_priv) && INTEL_DEVID(dev_priv) == 0x591D) if (IS_KABYLAKE(dev_priv))
return true; return true;
return false; return false;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment