drm/i915/display: Write PHY_CMN1_CONTROL only when using AUXLess ALPM
authorJouni Högander <jouni.hogander@intel.com>
Tue, 22 Jul 2025 12:56:15 +0000 (15:56 +0300)
committerTvrtko Ursulin <tursulin@ursulin.net>
Tue, 29 Jul 2025 09:20:33 +0000 (10:20 +0100)
We are seeing "dmesg-warn/abort - *ERROR* PHY * failed after 3 retries"
since we started configuring LFPS sending. According to Bspec Configuring
LFPS sending is needed only when using AUXLess ALPM. This patch avoids
these failures by configuring LFPS sending only when using AUXLess ALPM.

Bspec: 68849
Fixes: 9dc619680de4 ("drm/i915/display: Add function to configure LFPS sending")
Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com>
Link: https://lore.kernel.org/r/20250722125618.1842615-2-jouni.hogander@intel.com
(cherry picked from commit 8265ce0e0e15ba435eb2af72f2b821e203ebcdb9)
Signed-off-by: Tvrtko Ursulin <tursulin@ursulin.net>
drivers/gpu/drm/i915/display/intel_cx0_phy.c

index ed8e640b96b0a1e3d55fbbddfc98c07ab1b67a02..2b0305bb04cd2fd92ae26bf74c3b539fa47557d6 100644 (file)
@@ -3240,11 +3240,10 @@ void intel_lnl_mac_transmit_lfps(struct intel_encoder *encoder,
 {
        struct intel_display *display = to_intel_display(encoder);
        u8 owned_lane_mask = intel_cx0_get_owned_lane_mask(encoder);
-       bool enable = intel_alpm_is_alpm_aux_less(enc_to_intel_dp(encoder),
-                                                 crtc_state);
        int i;
 
-       if (DISPLAY_VER(display) < 20)
+       if (DISPLAY_VER(display) < 20 ||
+           !intel_alpm_is_alpm_aux_less(enc_to_intel_dp(encoder), crtc_state))
                return;
 
        for (i = 0; i < 4; i++) {
@@ -3256,8 +3255,7 @@ void intel_lnl_mac_transmit_lfps(struct intel_encoder *encoder,
 
                intel_cx0_rmw(encoder, lane_mask, PHY_CMN1_CONTROL(tx, 0),
                              CONTROL0_MAC_TRANSMIT_LFPS,
-                             enable ? CONTROL0_MAC_TRANSMIT_LFPS : 0,
-                             MB_WRITE_COMMITTED);
+                             CONTROL0_MAC_TRANSMIT_LFPS, MB_WRITE_COMMITTED);
        }
 }