On Sat, 2018-04-07 at 00:12 +0530, vathsala nagaraju wrote:
> From: Vathsala Nagaraju <vathsala.nagar...@intel.com>
> 
> Adds force_psr1 mod parameter to enable psr1 on psr2 panels.
> useful in cases where psr2 fails and user wants to enable
> psr1 feature for power saving until a fix
> is provided for psr2.


We should perhaps make enable_psr=1 enable just PSR1. I am not
comfortable that we enable PSR2 at all, there are no tests in IGT for
selective update, seems like nobody really knows exactly how well it
works. 


> 
> Cc: Rodrigo Vivi <rodrigo.v...@intel.com>
> Cc: Dhinakaran Pandiyan <dhinakaran.pandi...@intel.com>
> Cc: José Roberto de Souza <jose.so...@intel.com>
> Signed-off-by: Vathsala Nagaraju <vathsala.nagar...@intel.com>
> ---
>  drivers/gpu/drm/i915/i915_params.c | 5 +++++
>  drivers/gpu/drm/i915/i915_params.h | 1 +
>  drivers/gpu/drm/i915/intel_psr.c   | 2 ++
>  3 files changed, 8 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/i915_params.c 
> b/drivers/gpu/drm/i915/i915_params.c
> index 08108ce..5b6f5af 100644
> --- a/drivers/gpu/drm/i915/i915_params.c
> +++ b/drivers/gpu/drm/i915/i915_params.c
> @@ -95,6 +95,11 @@ struct i915_params i915_modparams __read_mostly = {
>       "(0=disabled, 1=enabled - link mode chosen per-platform, 2=force 
> link-standby mode, 3=force link-off mode) "
>       "Default: -1 (use per-chip default)");
>  
> +i915_param_named_unsafe(force_psr1, int, 0600,
> +     "Enable PSR1 on PSR2 Panel "
> +     "(0=disabled, 1=enabled) "
> +     "Default: -1 (use per-chip default)");
> +
>  i915_param_named_unsafe(alpha_support, bool, 0400,
>       "Enable alpha quality driver support for latest hardware. "
>       "See also CONFIG_DRM_I915_ALPHA_SUPPORT.");
> diff --git a/drivers/gpu/drm/i915/i915_params.h 
> b/drivers/gpu/drm/i915/i915_params.h
> index c963603..1f5dd1c 100644
> --- a/drivers/gpu/drm/i915/i915_params.h
> +++ b/drivers/gpu/drm/i915/i915_params.h
> @@ -44,6 +44,7 @@
>       param(int, enable_fbc, -1) \
>       param(int, enable_ppgtt, -1) \
>       param(int, enable_psr, -1) \
> +     param(int, force_psr1, -1) \
>       param(int, disable_power_well, -1) \
>       param(int, enable_ips, 1) \
>       param(int, invert_brightness, 0) \
> diff --git a/drivers/gpu/drm/i915/intel_psr.c 
> b/drivers/gpu/drm/i915/intel_psr.c
> index 2d53f73..415e377 100644
> --- a/drivers/gpu/drm/i915/intel_psr.c
> +++ b/drivers/gpu/drm/i915/intel_psr.c
> @@ -540,6 +540,8 @@ void intel_psr_compute_config(struct intel_dp *intel_dp,
>  
>       crtc_state->has_psr = true;
>       crtc_state->has_psr2 = intel_psr2_config_valid(intel_dp, crtc_state);
> +     if (i915_modparams.force_psr1 == 1 && crtc_state->has_psr2)
> +             crtc_state->has_psr2 = false;
>       DRM_DEBUG_KMS("Enabling PSR%s\n", crtc_state->has_psr2 ? "2" : "");
>  }
>  

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to