lkml.org 
[lkml]   [2020]   [Apr]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 229/232] drm/i915/icl+: Dont enable DDI IO power on a TypeC port in TBT mode
    Date
    From: Imre Deak <imre.deak@intel.com>

    The DDI IO power well must not be enabled for a TypeC port in TBT mode,
    ensure this during driver loading/system resume.

    This gets rid of error messages like
    [drm] *ERROR* power well DDI E TC2 IO state mismatch (refcount 1/enabled 0)

    and avoids leaking the power ref when disabling the output.

    Cc: <stable@vger.kernel.org> # v5.4+
    Signed-off-by: Imre Deak <imre.deak@intel.com>
    Reviewed-by: José Roberto de Souza <jose.souza@intel.com>
    Link: https://patchwork.freedesktop.org/patch/msgid/20200330152244.11316-1-imre.deak@intel.com
    (cherry picked from commit f77a2db27f26c3ccba0681f7e89fef083718f07f)
    Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/gpu/drm/i915/display/intel_ddi.c | 6 +++++-
    1 file changed, 5 insertions(+), 1 deletion(-)

    diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c
    index 8eb2b3ec01edd..b3c77c988d1cd 100644
    --- a/drivers/gpu/drm/i915/display/intel_ddi.c
    +++ b/drivers/gpu/drm/i915/display/intel_ddi.c
    @@ -2124,7 +2124,11 @@ static void intel_ddi_get_power_domains(struct intel_encoder *encoder,
    return;

    dig_port = enc_to_dig_port(&encoder->base);
    - intel_display_power_get(dev_priv, dig_port->ddi_io_power_domain);
    +
    + if (!intel_phy_is_tc(dev_priv, phy) ||
    + dig_port->tc_mode != TC_PORT_TBT_ALT)
    + intel_display_power_get(dev_priv,
    + dig_port->ddi_io_power_domain);

    /*
    * AUX power is only needed for (e)DP mode, and for HDMI mode on TC
    --
    2.20.1


    \
     
     \ /
      Last update: 2020-04-16 16:16    [W:4.325 / U:0.204 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site