mirror of
https://github.com/torvalds/linux
synced 2024-11-05 18:23:50 +00:00
drm/i915: Don't let update_psr function actually enable PSR.
Being more conservative by enabling PSR only on psr_enable function. Reviewed-by: Vijay Purushothaman <vijay.a.purushothaman@intel.com> Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
parent
4704c573fc
commit
164872543e
1 changed files with 7 additions and 3 deletions
|
@ -1805,9 +1805,6 @@ static void intel_edp_psr_do_enable(struct intel_dp *intel_dp)
|
|||
intel_edp_is_psr_enabled(dev))
|
||||
return;
|
||||
|
||||
/* Setup PSR once */
|
||||
intel_edp_psr_setup(intel_dp);
|
||||
|
||||
/* Enable PSR on the panel */
|
||||
intel_edp_psr_enable_sink(intel_dp);
|
||||
|
||||
|
@ -1824,6 +1821,9 @@ void intel_edp_psr_enable(struct intel_dp *intel_dp)
|
|||
return;
|
||||
}
|
||||
|
||||
/* Setup PSR once */
|
||||
intel_edp_psr_setup(intel_dp);
|
||||
|
||||
if (intel_edp_psr_match_conditions(intel_dp) &&
|
||||
!intel_edp_is_psr_enabled(dev))
|
||||
intel_edp_psr_do_enable(intel_dp);
|
||||
|
@ -1848,12 +1848,16 @@ void intel_edp_psr_disable(struct intel_dp *intel_dp)
|
|||
|
||||
void intel_edp_psr_update(struct drm_device *dev)
|
||||
{
|
||||
struct drm_i915_private *dev_priv = dev->dev_private;
|
||||
struct intel_encoder *encoder;
|
||||
struct intel_dp *intel_dp = NULL;
|
||||
|
||||
if (!HAS_PSR(dev))
|
||||
return;
|
||||
|
||||
if (!dev_priv->psr.setup_done)
|
||||
return;
|
||||
|
||||
list_for_each_entry(encoder, &dev->mode_config.encoder_list, base.head)
|
||||
if (encoder->type == INTEL_OUTPUT_EDP) {
|
||||
intel_dp = enc_to_intel_dp(&encoder->base);
|
||||
|
|
Loading…
Reference in a new issue