[Intel-gfx] [PATCH 4/5] drm/i915/icl: Skip init for an already enabled combo PHY
Rodrigo Vivi
rodrigo.vivi at intel.com
Fri Nov 2 19:28:30 UTC 2018
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 at intel.com>
> Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
> Cc: José Roberto de Souza <jose.souza at intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
> Signed-off-by: Imre Deak <imre.deak at intel.com>
> ---
> 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 at intel.com>
> + 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
>
More information about the Intel-gfx
mailing list