• Ville Syrjälä's avatar
    drm/i915: Don't initialize power seqeuencer delays more than once · 81ddbc69
    Ville Syrjälä authored
    Since we read the current power seqeuncer delays from the registers
    (as well as looking at the vbt and spec values) we may end up
    corrupting delays we already initialized when we switch to another
    pipe and the power seqeuncer there has different values currently
    in the registers.
    
    So make sure we only initialize the delays once even if
    intel_dp_init_panel_power_sequencer() gets called multiple times.
    
    There was some discussion in the review about when exactly we need to
    unlock the pps. Quoting Bspec:
    
    "If this bit is not a zero, it activates the register write protect
     and writes to those registers will be ignored unless the write
     protect key value is set in the panel sequencing control register."
    Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
    Reviewed-by: default avatarImre Deak <imre.deak@intel.com>
    [danvet: Add Bspec quote per review discussion between Imre and
    Ville.]
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    81ddbc69
intel_dp.c 151 KB