diff mbox

[v2] drm/i915: Drop WA to fix Voltage not getting dropped to Vmin when Gfx is power gated for latest VLV revision

Message ID 1403934971-3748-1-git-send-email-deepak.s@linux.intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

deepak.s@linux.intel.com June 28, 2014, 5:56 a.m. UTC
From: Deepak S <deepak.s@linux.intel.com>

Workaround fixed in Latest VLV revision. Forcing Gfx clk up not needed, and Requesting the
min freq should bring bring the voltage Vnn.

v2: Drop WA for Latest VLV revision (Ville)

Signed-off-by: Deepak S <deepak.s@linux.intel.com>
---
 drivers/gpu/drm/i915/intel_pm.c | 8 ++++++++
 1 file changed, 8 insertions(+)

Comments

Jani Nikula June 27, 2014, 8:08 a.m. UTC | #1
On Sat, 28 Jun 2014, deepak.s@linux.intel.com wrote:
> From: Deepak S <deepak.s@linux.intel.com>
>
> Workaround fixed in Latest VLV revision. Forcing Gfx clk up not needed, and Requesting the
> min freq should bring bring the voltage Vnn.
>
> v2: Drop WA for Latest VLV revision (Ville)

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75244

> Signed-off-by: Deepak S <deepak.s@linux.intel.com>
> ---
>  drivers/gpu/drm/i915/intel_pm.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> index a90fdbd..6b6cfd4 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -3212,6 +3212,14 @@ void gen6_set_rps(struct drm_device *dev, u8 val)
>  */
>  static void vlv_set_rps_idle(struct drm_i915_private *dev_priv)
>  {
> +	struct drm_device *dev = dev_priv->dev;
> +
> +	/* Latest VLV doesn't need Vnn WA*/
> +	if (dev->pdev->revision >= 0xd) {
> +		valleyview_set_rps(dev_priv->dev, dev_priv->rps.min_freq_softlimit);
> +		return;
> +	}
> +
>  	/*
>  	 * When we are idle.  Drop to min voltage state.
>  	 */
> -- 
> 1.9.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Ville Syrjala June 27, 2014, 10:10 a.m. UTC | #2
On Sat, Jun 28, 2014 at 11:26:11AM +0530, deepak.s@linux.intel.com wrote:
> From: Deepak S <deepak.s@linux.intel.com>
> 
> Workaround fixed in Latest VLV revision. Forcing Gfx clk up not needed, and Requesting the
> min freq should bring bring the voltage Vnn.
> 
> v2: Drop WA for Latest VLV revision (Ville)
> 
> Signed-off-by: Deepak S <deepak.s@linux.intel.com>
> ---
>  drivers/gpu/drm/i915/intel_pm.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> index a90fdbd..6b6cfd4 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -3212,6 +3212,14 @@ void gen6_set_rps(struct drm_device *dev, u8 val)
>  */
>  static void vlv_set_rps_idle(struct drm_i915_private *dev_priv)
>  {
> +	struct drm_device *dev = dev_priv->dev;
> +
> +	/* Latest VLV doesn't need Vnn WA*/

Maybe this should say "Latest VLV doesn't need to force the gfx clock"
or something like that. We are still doing this to reduce Vnn after all.

Apart from that this matches my observations so:
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

> +	if (dev->pdev->revision >= 0xd) {
> +		valleyview_set_rps(dev_priv->dev, dev_priv->rps.min_freq_softlimit);
> +		return;
> +	}
> +
>  	/*
>  	 * When we are idle.  Drop to min voltage state.
>  	 */
> -- 
> 1.9.1
Jani Nikula June 30, 2014, 10:20 a.m. UTC | #3
On Fri, 27 Jun 2014, Jani Nikula <jani.nikula@linux.intel.com> wrote:
> On Sat, 28 Jun 2014, deepak.s@linux.intel.com wrote:
>> From: Deepak S <deepak.s@linux.intel.com>
>>
>> Workaround fixed in Latest VLV revision. Forcing Gfx clk up not needed, and Requesting the
>> min freq should bring bring the voltage Vnn.
>>
>> v2: Drop WA for Latest VLV revision (Ville)
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75244

Per comments in the bug, scratch that.

Deepak, I presume this patch is needed nonetheless?

BR,
Jani.



>
>> Signed-off-by: Deepak S <deepak.s@linux.intel.com>
>> ---
>>  drivers/gpu/drm/i915/intel_pm.c | 8 ++++++++
>>  1 file changed, 8 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
>> index a90fdbd..6b6cfd4 100644
>> --- a/drivers/gpu/drm/i915/intel_pm.c
>> +++ b/drivers/gpu/drm/i915/intel_pm.c
>> @@ -3212,6 +3212,14 @@ void gen6_set_rps(struct drm_device *dev, u8 val)
>>  */
>>  static void vlv_set_rps_idle(struct drm_i915_private *dev_priv)
>>  {
>> +	struct drm_device *dev = dev_priv->dev;
>> +
>> +	/* Latest VLV doesn't need Vnn WA*/
>> +	if (dev->pdev->revision >= 0xd) {
>> +		valleyview_set_rps(dev_priv->dev, dev_priv->rps.min_freq_softlimit);
>> +		return;
>> +	}
>> +
>>  	/*
>>  	 * When we are idle.  Drop to min voltage state.
>>  	 */
>> -- 
>> 1.9.1
>>
>> _______________________________________________
>> Intel-gfx mailing list
>> Intel-gfx@lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
>
> -- 
> Jani Nikula, Intel Open Source Technology Center
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
Jani Nikula July 2, 2014, 11:12 a.m. UTC | #4
On Fri, 27 Jun 2014, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote:
> On Sat, Jun 28, 2014 at 11:26:11AM +0530, deepak.s@linux.intel.com wrote:
>> From: Deepak S <deepak.s@linux.intel.com>
>> 
>> Workaround fixed in Latest VLV revision. Forcing Gfx clk up not needed, and Requesting the
>> min freq should bring bring the voltage Vnn.
>> 
>> v2: Drop WA for Latest VLV revision (Ville)
>> 
>> Signed-off-by: Deepak S <deepak.s@linux.intel.com>
>> ---
>>  drivers/gpu/drm/i915/intel_pm.c | 8 ++++++++
>>  1 file changed, 8 insertions(+)
>> 
>> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
>> index a90fdbd..6b6cfd4 100644
>> --- a/drivers/gpu/drm/i915/intel_pm.c
>> +++ b/drivers/gpu/drm/i915/intel_pm.c
>> @@ -3212,6 +3212,14 @@ void gen6_set_rps(struct drm_device *dev, u8 val)
>>  */
>>  static void vlv_set_rps_idle(struct drm_i915_private *dev_priv)
>>  {
>> +	struct drm_device *dev = dev_priv->dev;
>> +
>> +	/* Latest VLV doesn't need Vnn WA*/
>
> Maybe this should say "Latest VLV doesn't need to force the gfx clock"
> or something like that. We are still doing this to reduce Vnn after all.
>
> Apart from that this matches my observations so:
> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>

Pushed to -fixes with the comment changed and commit message massaged a
bit. Thanks for the patch and review.

BR,
Jani.


>
>> +	if (dev->pdev->revision >= 0xd) {
>> +		valleyview_set_rps(dev_priv->dev, dev_priv->rps.min_freq_softlimit);
>> +		return;
>> +	}
>> +
>>  	/*
>>  	 * When we are idle.  Drop to min voltage state.
>>  	 */
>> -- 
>> 1.9.1
>
> -- 
> Ville Syrjälä
> Intel OTC
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff mbox

Patch

diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
index a90fdbd..6b6cfd4 100644
--- a/drivers/gpu/drm/i915/intel_pm.c
+++ b/drivers/gpu/drm/i915/intel_pm.c
@@ -3212,6 +3212,14 @@  void gen6_set_rps(struct drm_device *dev, u8 val)
 */
 static void vlv_set_rps_idle(struct drm_i915_private *dev_priv)
 {
+	struct drm_device *dev = dev_priv->dev;
+
+	/* Latest VLV doesn't need Vnn WA*/
+	if (dev->pdev->revision >= 0xd) {
+		valleyview_set_rps(dev_priv->dev, dev_priv->rps.min_freq_softlimit);
+		return;
+	}
+
 	/*
 	 * When we are idle.  Drop to min voltage state.
 	 */