diff mbox series

[4/6] drm/i915: Introduce i915_has_asle()

Message ID 20190318165633.28924-4-ville.syrjala@linux.intel.com (mailing list archive)
State New, archived
Headers show
Series [1/6] drm/i915: Reorder gen3/4 swizzle detection logic | expand

Commit Message

Ville Syrjälä March 18, 2019, 4:56 p.m. UTC
From: Ville Syrjälä <ville.syrjala@linux.intel.com>

We want to allow the desktop PNV to not have .is_mobile set. To
that end let's add a small helper to determine if the platform
has the ASLE interrupt (or equivalent). Supposdely both PNV
variants have it.

Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
 drivers/gpu/drm/i915/i915_irq.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

Comments

Tvrtko Ursulin March 19, 2019, 1:27 p.m. UTC | #1
On 18/03/2019 16:56, Ville Syrjala wrote:
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> 
> We want to allow the desktop PNV to not have .is_mobile set. To
> that end let's add a small helper to determine if the platform
> has the ASLE interrupt (or equivalent). Supposdely both PNV
> variants have it.
> 
> Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
>   drivers/gpu/drm/i915/i915_irq.c | 10 +++++++++-
>   1 file changed, 9 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
> index 82d487189a34..1375bba45548 100644
> --- a/drivers/gpu/drm/i915/i915_irq.c
> +++ b/drivers/gpu/drm/i915/i915_irq.c
> @@ -748,13 +748,21 @@ void i915_disable_pipestat(struct drm_i915_private *dev_priv,
>   	POSTING_READ(reg);
>   }
>   
> +static bool i915_has_asle(struct drm_i915_private *dev_priv)
> +{
> +	if (!dev_priv->opregion.asle)
> +		return false;
> +
> +	return IS_PINEVIEW(dev_priv) || IS_MOBILE(dev_priv);
> +}
> +
>   /**
>    * i915_enable_asle_pipestat - enable ASLE pipestat for OpRegion
>    * @dev_priv: i915 device private
>    */
>   static void i915_enable_asle_pipestat(struct drm_i915_private *dev_priv)
>   {
> -	if (!dev_priv->opregion.asle || !IS_MOBILE(dev_priv))
> +	if (!i915_has_asle(dev_priv))
>   		return;
>   
>   	spin_lock_irq(&dev_priv->irq_lock);
> 

Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

Regards,

Tvrtko
diff mbox series

Patch

diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index 82d487189a34..1375bba45548 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -748,13 +748,21 @@  void i915_disable_pipestat(struct drm_i915_private *dev_priv,
 	POSTING_READ(reg);
 }
 
+static bool i915_has_asle(struct drm_i915_private *dev_priv)
+{
+	if (!dev_priv->opregion.asle)
+		return false;
+
+	return IS_PINEVIEW(dev_priv) || IS_MOBILE(dev_priv);
+}
+
 /**
  * i915_enable_asle_pipestat - enable ASLE pipestat for OpRegion
  * @dev_priv: i915 device private
  */
 static void i915_enable_asle_pipestat(struct drm_i915_private *dev_priv)
 {
-	if (!dev_priv->opregion.asle || !IS_MOBILE(dev_priv))
+	if (!i915_has_asle(dev_priv))
 		return;
 
 	spin_lock_irq(&dev_priv->irq_lock);