On Fri, Nov 02, 2018 at 08:07:05PM +0200, Imre Deak wrote: > Bspec says we should skip the initialization of combo PHYs that are > already initialized. We'll need to reinit the PHYs more frequently > when exiting from DC6 (after the next patch), so let's make sure the > uninit sequence complies with the spec. For safety skip the init only if > all the PHY register fields have their expected values. > > Bspec: 21257 > Cc: Paulo Zanoni <paulo.r.zanoni@xxxxxxxxx> > Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > Cc: José Roberto de Souza <jose.souza@xxxxxxxxx> > Cc: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> > Signed-off-by: Imre Deak <imre.deak@xxxxxxxxx> > --- > drivers/gpu/drm/i915/intel_combo_phy.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/gpu/drm/i915/intel_combo_phy.c b/drivers/gpu/drm/i915/intel_combo_phy.c > index 1522e2a25390..7b911702f834 100644 > --- a/drivers/gpu/drm/i915/intel_combo_phy.c > +++ b/drivers/gpu/drm/i915/intel_combo_phy.c > @@ -220,6 +220,12 @@ void icl_combo_phys_init(struct drm_i915_private *dev_priv) > for (port = PORT_A; port <= PORT_B; port++) { > u32 val; > > + if (icl_combo_phy_verify_state(dev_priv, port)) { > + DRM_DEBUG_DRIVER("Port-%c combo PHY already enabled, won't reprogram it.\n", > + port_name(port)); Note since I didn't rv-b the previous patch: I have checked the previous patch that introduces this and it is indeed correct: "If PORT_COMP_DW0 Comp Init == 1b, skip the rest of this sequence since it is already initialized" so, Reviewed-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> > + continue; > + } > + > val = I915_READ(ICL_PHY_MISC(port)); > val &= ~ICL_PHY_MISC_DE_IO_COMP_PWR_DOWN; > I915_WRITE(ICL_PHY_MISC(port), val); > -- > 2.13.2 > _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx