Skip to content

Commit 5e4c16f

Browse files
almahallawyrodrigovivi
authored andcommitted
drm/i915/cx0: Only clear/set the Pipe Reset bit of the PHY Lanes Owned
Currently, with MFD/pin assignment D, the driver clears the pipe reset bit of lane 1 which is not owned by display. This causes the display to block S0iX. By not clearing this bit for lane 1 and keeping whatever default, S0ix started to work. This is already what the driver does at the end of the phy lane reset sequence (Step#8) Bspec: 65451 Fixes: 619a06d ("drm/i915/mtl: Reset only one lane in case of MFD") Cc: Mika Kahola <mika.kahola@intel.com> Cc: Gustavo Sousa <gustavo.sousa@intel.com> Signed-off-by: Khaled Almahallawy <khaled.almahallawy@intel.com> Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com> Signed-off-by: Radhakrishna Sripada <radhakrishna.sripada@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20231005001310.154396-1-khaled.almahallawy@intel.com (cherry picked from commit 4a07f06) Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
1 parent 5872080 commit 5e4c16f

1 file changed

Lines changed: 1 addition & 2 deletions

File tree

drivers/gpu/drm/i915/display/intel_cx0_phy.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2553,8 +2553,7 @@ static void intel_cx0_phy_lane_reset(struct drm_i915_private *i915,
25532553
drm_warn(&i915->drm, "PHY %c failed to bring out of SOC reset after %dus.\n",
25542554
phy_name(phy), XELPDP_PORT_BUF_SOC_READY_TIMEOUT_US);
25552555

2556-
intel_de_rmw(i915, XELPDP_PORT_BUF_CTL2(port),
2557-
XELPDP_LANE_PIPE_RESET(0) | XELPDP_LANE_PIPE_RESET(1),
2556+
intel_de_rmw(i915, XELPDP_PORT_BUF_CTL2(port), lane_pipe_reset,
25582557
lane_pipe_reset);
25592558

25602559
if (__intel_de_wait_for_register(i915, XELPDP_PORT_BUF_CTL2(port),

0 commit comments

Comments
 (0)