[Intel-gfx] [PATCH v3 11/21] drm/i915: check pipe power domain when reading its hw state

Jesse Barnes jbarnes at virtuousgeek.org
Thu Mar 6 20:06:54 CET 2014


On Wed,  5 Mar 2014 16:20:55 +0200
Imre Deak <imre.deak at intel.com> wrote:

> We can read out the pipe HW state only if the required power domain is
> on. If not we consider the pipe to be off.
> 
> v2:
> - no change
> v3:
> - push down the power domain checks into the specific crtc
>   get_pipe_config handlers (Daniel)
> 
> Signed-off-by: Imre Deak <imre.deak at intel.com>
> ---
>  drivers/gpu/drm/i915/intel_display.c | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 32407ea..cde6d02 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -5611,6 +5611,10 @@ static bool i9xx_get_pipe_config(struct intel_crtc *crtc,
>  	struct drm_i915_private *dev_priv = dev->dev_private;
>  	uint32_t tmp;
>  
> +	if (!intel_display_power_enabled(dev_priv,
> +					 POWER_DOMAIN_PIPE(crtc->pipe)))
> +		return false;
> +
>  	pipe_config->cpu_transcoder = (enum transcoder) crtc->pipe;
>  	pipe_config->shared_dpll = DPLL_ID_PRIVATE;
>  
> @@ -6981,6 +6985,10 @@ static bool haswell_get_pipe_config(struct intel_crtc *crtc,
>  	enum intel_display_power_domain pfit_domain;
>  	uint32_t tmp;
>  
> +	if (!intel_display_power_enabled(dev_priv,
> +			POWER_DOMAIN_PIPE(crtc->pipe)))
> +		return false;
> +
>  	pipe_config->cpu_transcoder = (enum transcoder) crtc->pipe;
>  	pipe_config->shared_dpll = DPLL_ID_PRIVATE;
>  

Same goes here, though I suppose there's more room for additional,
specific domains down at this level...

Reviewed-by: Jesse Barnes <jbarnes at virtuousgeek.org>

-- 
Jesse Barnes, Intel Open Source Technology Center



More information about the Intel-gfx mailing list