Эх сурвалжийг харах

drm/i915/gvt: Enable force wake support for BXT.

BXT forcewake is handled in the same way as SKL/KBL.

v2: Add missing inhibit_context restore for BXT.

Signed-off-by: Colin Xu <colin.xu@intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Colin Xu 7 жил өмнө
parent
commit
47d9d3be59

+ 4 - 2
drivers/gpu/drm/i915/gvt/scheduler.c

@@ -297,7 +297,8 @@ static int copy_workload_to_ring_buffer(struct intel_vgpu_workload *workload)
 	void *shadow_ring_buffer_va;
 	void *shadow_ring_buffer_va;
 	u32 *cs;
 	u32 *cs;
 
 
-	if (IS_KABYLAKE(req->i915) && is_inhibit_context(req->hw_context))
+	if ((IS_KABYLAKE(req->i915) || IS_BROXTON(req->i915))
+		&& is_inhibit_context(req->hw_context))
 		intel_vgpu_restore_inhibit_context(vgpu, req);
 		intel_vgpu_restore_inhibit_context(vgpu, req);
 
 
 	/* allocate shadow ring buffer */
 	/* allocate shadow ring buffer */
@@ -904,7 +905,8 @@ static int workload_thread(void *priv)
 	struct intel_vgpu *vgpu = NULL;
 	struct intel_vgpu *vgpu = NULL;
 	int ret;
 	int ret;
 	bool need_force_wake = IS_SKYLAKE(gvt->dev_priv)
 	bool need_force_wake = IS_SKYLAKE(gvt->dev_priv)
-			|| IS_KABYLAKE(gvt->dev_priv);
+			|| IS_KABYLAKE(gvt->dev_priv)
+			|| IS_BROXTON(gvt->dev_priv);
 	DEFINE_WAIT_FUNC(wait, woken_wake_function);
 	DEFINE_WAIT_FUNC(wait, woken_wake_function);
 
 
 	kfree(p);
 	kfree(p);