From: Alex Dai Date: Tue, 18 Aug 2015 21:34:47 +0000 (-0700) Subject: drm/i915: Notify GuC rc6 state X-Git-Tag: v4.14-rc1~2738^2~45^2~1569 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f5d3c3eaab1d9e38854deb0251e659d04e3bc771;p=platform%2Fkernel%2Flinux-rpi.git drm/i915: Notify GuC rc6 state If rc6 is enabled, notify GuC so it can do proper forcewake before command submission. Signed-off-by: Alex Dai Reviewed-by: Tom O'Rourke Signed-off-by: Daniel Vetter --- diff --git a/drivers/gpu/drm/i915/i915_guc_submission.c b/drivers/gpu/drm/i915/i915_guc_submission.c index ec70393..792d0b9 100644 --- a/drivers/gpu/drm/i915/i915_guc_submission.c +++ b/drivers/gpu/drm/i915/i915_guc_submission.c @@ -151,6 +151,18 @@ static int host2guc_release_doorbell(struct intel_guc *guc, return host2guc_action(guc, data, 2); } +static int host2guc_sample_forcewake(struct intel_guc *guc, + struct i915_guc_client *client) +{ + struct drm_i915_private *dev_priv = guc_to_i915(guc); + u32 data[2]; + + data[0] = HOST2GUC_ACTION_SAMPLE_FORCEWAKE; + data[1] = (intel_enable_rc6(dev_priv->dev)) ? 1 : 0; + + return host2guc_action(guc, data, 2); +} + /* * Initialise, update, or clear doorbell data shared with the GuC * @@ -874,6 +886,9 @@ int i915_guc_submission_enable(struct drm_device *dev) } guc->execbuf_client = client; + + host2guc_sample_forcewake(guc, client); + return 0; }