]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
drm/i915/icl+/tc: Convert AUX powered WARN to a debug message
authorImre Deak <imre.deak@intel.com>
Mon, 11 Aug 2025 08:01:52 +0000 (11:01 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 28 Aug 2025 14:34:37 +0000 (16:34 +0200)
commit d7fa5754e83cd36c4327eb2d806064e598a72ff6 upstream.

The BIOS can leave the AUX power well enabled on an output, even if this
isn't required (on platforms where the AUX power is only needed for an
AUX access). This was observed at least on PTL. To avoid the WARN which
would be triggered by this during the HW readout, convert the WARN to a
debug message.

Cc: stable@vger.kernel.org # v6.8+
Reported-by: Charlton Lin <charlton.lin@intel.com>
Tested-by: Khaled Almahallawy <khaled.almahallawy@intel.com>
Reviewed-by: Mika Kahola <mika.kahola@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://lore.kernel.org/r/20250811080152.906216-6-imre.deak@intel.com
(cherry picked from commit 6cb52cba474b2bec1a3018d3dbf75292059a29a1)
Signed-off-by: Tvrtko Ursulin <tursulin@ursulin.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/i915/display/intel_tc.c

index 353b8c0f47d939f46eee23131e3146122220de14..2df5145fd9286a8d89b5ec409c11eb860ad304ea 100644 (file)
@@ -1497,11 +1497,11 @@ static void intel_tc_port_reset_mode(struct intel_tc_port *tc,
        intel_display_power_flush_work(display);
        if (!intel_tc_cold_requires_aux_pw(dig_port)) {
                enum intel_display_power_domain aux_domain;
-               bool aux_powered;
 
                aux_domain = intel_aux_power_domain(dig_port);
-               aux_powered = intel_display_power_is_enabled(display, aux_domain);
-               drm_WARN_ON(display->drm, aux_powered);
+               if (intel_display_power_is_enabled(display, aux_domain))
+                       drm_dbg_kms(display->drm, "Port %s: AUX unexpectedly powered\n",
+                                   tc->port_name);
        }
 
        tc_phy_disconnect(tc);