From mboxrd@z Thu Jan 1 00:00:00 1970 From: Claude Code Review Bot To: dri-devel-reviews@example.com Subject: Claude review: drm/msm/dp: Skip push_idle in atomic_disable if display is not powered on Date: Sat, 16 May 2026 15:42:51 +1000 Message-ID: In-Reply-To: <20260511-edp_suspend-v1-1-128555968d7c@oss.qualcomm.com> References: <20260511-edp_suspend-v1-1-128555968d7c@oss.qualcomm.com> X-Mailer: Claude Code Patch Reviewer Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Overall Series Review Subject: drm/msm/dp: Skip push_idle in atomic_disable if display is not pow= ered on Author: Yongxing Mou Patches: 2 Reviewed: 2026-05-16T15:42:51.497192 --- This is a single-patch fix for a real crash scenario on Qualcomm eDP interf= aces. When an eDP connector has no panel attached, the probe-time DPCD read= fails, leaving `hpd_state` at `ST_DISCONNECTED`. Consequently `msm_dp_brid= ge_atomic_enable()` exits early, `power_on` stays `false`, and link clocks = are never enabled. During system suspend, `drm_atomic_helper_suspend()` sti= ll calls `atomic_disable()` on all registered bridges, and `msm_dp_ctrl_pus= h_idle()` writes to `REG_DP_STATE_CTRL` on an unpowered controller =E2=80= =94 triggering a NoC slave error and a fatal crash. The fix is straightforward and correct in principle: guard `msm_dp_ctrl_pus= h_idle()` with a `power_on` check. This is consistent with how `msm_dp_disp= lay_disable()` (called from the subsequent `atomic_post_disable`) already g= uards itself with `if (!msm_dp_display->power_on) return 0;`. **Verdict: The patch looks correct and the approach is reasonable.** One mi= nor concern below. --- Generated by Claude Code Patch Reviewer