From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 78C83364E89 for ; Sun, 12 Jul 2026 18:21:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783880462; cv=none; b=nqNa3zwiUmCHQVfIdtNklVGVJtdjHkORq7JshwGLNrV67meE+sTo0nhKSJVBBM81vq+HB4LNTawJfQfrvtFYhWlLBHAXpXvrhdigH+EoFI12czFyG0QamSnMVDwQtWskaZGiIqopnWBoXp2XzQEDvJaL85FNXn+LDIudLLj6Vw0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1783880462; c=relaxed/simple; bh=Ur+VhmHICiUOSiUk/oXrbWvI5RyAw52jF1BdhogL8v8=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=Z2X7krUfplVSlGf6ntorGhc6D1cr56sGJTFqe7WTvIWULrq+1t8GFdrgXSBvjFt4DmdZXgkUnlKFMFxFZEnjzb3nbP7/fNuVSlsf2m0oH63OEQw/tjph+R2ZIGqT8h22ExjGHIAzbGZLGjLM6gkaRkVu2gk61OCVuySJjBbKbVU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=iEfFRMd2; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=ZNp7n14b; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="iEfFRMd2"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="ZNp7n14b" Received: from pps.filterd (m0279864.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 66CGs7BN2894933 for ; Sun, 12 Jul 2026 18:21:00 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-type:date:from:in-reply-to:message-id:mime-version :references:subject:to; s=qcppdkim1; bh=cOa4nmmTOHFlx3MF2totcfZK vZun53wwDDNf/M+wpes=; b=iEfFRMd2fwtH/n/CCHTaR49V23rHWxAkFgkrnDwK kKTpNiN4nkSswUIYQlboo3MGdsIzgD8EjJnnOm+ZvZ2N972Umw+y6Tawn5AgFOK4 0kxQrA/XeKSnsWQxn1eEwbW14KKDUPjhKUzYsJkQ99kc4LkcQ+MH2xgxn4clbLlA kPPe3Feg570kX+4r9E3MXnCpdGe+A90b/Vjz56CHIl11bma/R8BW015pPDpoCnfI 35OvIEiK1PI4MBMKNFPUFIQYasQYtQBhoyoulQyT9Dl4sjAaNB9sP11UdvO2PBPc Ejpwgm4sKNjGzf4OuNyEG4J/wN7PVS4OuU06JFxq/XnlXw== Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com [209.85.160.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4fbf0gk793-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Sun, 12 Jul 2026 18:21:00 +0000 (GMT) Received: by mail-qt1-f197.google.com with SMTP id d75a77b69052e-51c1d137a68so56824921cf.3 for ; Sun, 12 Jul 2026 11:21:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1783880459; x=1784485259; darn=vger.kernel.org; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:from:to:cc:subject :date:message-id:reply-to:content-type; bh=cOa4nmmTOHFlx3MF2totcfZKvZun53wwDDNf/M+wpes=; b=ZNp7n14bVR88mhPxRYUY58NL4aBFsqxbYxtnwep8PK9+w/kaHL+1/TEyFpt+b7nYOA tZth9TB5SkIRnwQL1CiUjCYlbUBDihXxow0N7Hne8FWsonuIOL7MI7VoyZtdtyoFWMxa /1Ljd2iPiO7DR04OOcZd7pGhfEdu1TgIsNt9toffqoZZgTJDmm4EH54ZdPjtbaisyCqi UzsNS2kHTvi7hJdBVERzOYi0pXvrPmBPRr8wd+aC/u3fGb+mmXOlYdlXjgVb9kns7ewf dXPDYPhS5gLGSb4AiE+tmepPqUEJrzM/QiPOOhn+yyFssk57Unk/9lgJb+dhU5t7HLiI q1cA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1783880459; x=1784485259; h=in-reply-to:content-disposition:content-type:mime-version :references:message-id:subject:cc:to:from:date:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=cOa4nmmTOHFlx3MF2totcfZKvZun53wwDDNf/M+wpes=; b=Gm+zmwE7TjM67SH3W1Tv/De/mAnLbnqfuSm1zXbSM3hbBRp9Ggi3fJzkoTIHdCvmTT pS3/QfDpy1qFLNoMCgKFTv9wwe/WSMtRkldoq/yccxInVBagYQY+axmIEbRP5Rxhk6lx UqYe0IUknq5XiIHPr1hWUqeRy6eKcxgQ4tgzsv+ahQQYPZrSA1bf5V8XCfKz3UoEb3Au 9h6eZDbShFCy9N0dHM7OotxCsO94EHgrXT8gNrdHRELZL28sKDmd+mOYwk/Y6pAQwYyF 1v/u6xOIH5ZiMFvOhdBiOm+HA9BlqEjv4kDxp+WZwD75QSBP0QLT8rSyvWXXuDtcben1 Q4xg== X-Forwarded-Encrypted: i=1; AHgh+RqaWuqqIS+HE3lUEfa+ivMF1yb+CW4eFCxhIxi8QAbMzWQS5PGQfhEDqKVw/o1yUJ1XZ4UcQu4U6vprcQk=@vger.kernel.org X-Gm-Message-State: AOJu0YxYQBZYG8AJ8w0JKCS+FubfEsgp4qqEnHPpBiR2Mfcn2n4cvSh6 gPvX+wlNdq3umtdIpTpBsTRO7NzH1h4kUoFkA3MMzJPASxUkmXI1ewjm4fcfB+/b0PW7PReB7wE Lu5a/+oZfMUkCqZyxtxu04WLRj04rz103uLcgIKKV47Ooich2RPiV1HPQEj+egobn7y0= X-Gm-Gg: AfdE7ckzfBtY5o9sWeM/UQ01RKuTCDVoisGhK0gVlDdHI2tlrmsgO+6zubT9EQP1JoT mWb+k36WBUmyQu1mgpm90P+NXID2xmKxmHfm8+JX/reF+ktNw8d8ij0rGD5CmssHOmP9cvN3+ke ZndEXaWd4Dw3PNix3gXER0hp7eDcrGHf2nnZ3Jdwhe9wk5O9rzdzilA9xqk3YK3jQF8v317on1i QuSCUKt34Ps9pOMqnM8dhzddBTEHlzl5DQvIJGF2nPIrWZQtNElYKIyyleRaf2FKy8/kMO7xqa4 pDWeA+q0t/9p5lYEiprQARxpmbxP4R0tX32hudzb3oaaaY8Qy6f7DL+Uk75vZp5AOTYuVEBpLeC 6PezcrUNleIi5VZRhs5vNjvUu3mEQyiFUUM4wP1npvErZPoOkodqo0c7C4/CoRb1ZxyzMLapgf3 XCE1FfQT506p2saal18gqVq8hD X-Received: by 2002:ac8:59d6:0:b0:51b:60f1:689a with SMTP id d75a77b69052e-51cbf0c47b3mr71093091cf.7.1783880459215; Sun, 12 Jul 2026 11:20:59 -0700 (PDT) X-Received: by 2002:ac8:59d6:0:b0:51b:60f1:689a with SMTP id d75a77b69052e-51cbf0c47b3mr71092781cf.7.1783880458706; Sun, 12 Jul 2026 11:20:58 -0700 (PDT) Received: from umbar.lan (2001-14ba-a073-af00-264b-feff-fe8b-be8a.rev.dnainternet.fi. [2001:14ba:a073:af00:264b:feff:fe8b:be8a]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-5b01ca4a382sm2275808e87.16.2026.07.12.11.20.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 12 Jul 2026 11:20:55 -0700 (PDT) Date: Sun, 12 Jul 2026 21:20:52 +0300 From: Dmitry Baryshkov To: Yongxing Mou Cc: Rob Clark , Dmitry Baryshkov , Abhinav Kumar , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter , Jessica Zhang , linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org, Abhinav Kumar Subject: Re: [PATCH RESEND v5 11/25] drm/msm/dp: move link-level teardown from display_disable to display_unprepare Message-ID: <4las62mpvcuud6m6yo2mz6hiijv73zt27hnha4tlaejubt25x5@gxralblac3m4> References: <20260629-msm-dp-mst-v5-0-2ed6aee1867a@oss.qualcomm.com> <20260629-msm-dp-mst-v5-11-2ed6aee1867a@oss.qualcomm.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260629-msm-dp-mst-v5-11-2ed6aee1867a@oss.qualcomm.com> X-Authority-Analysis: v=2.4 cv=Nq3htcdJ c=1 sm=1 tr=0 ts=6a53db0c cx=c_pps a=EVbN6Ke/fEF3bsl7X48z0g==:117 a=xqWC_Br6kY4A:10 a=kj9zAlcOel0A:10 a=RAioF0-LDSMA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=DJpcGTmdVt4CTyJn9g5Z:22 a=COk6AnOGAAAA:8 a=EUspDBNiAAAA:8 a=MGG9Fet2FOA5F7jA1VkA:9 a=CjuIK1q_8ugA:10 a=a_PwQJl-kcHnX1M80qC6:22 a=TjNXssC_j7lpFel5tvFf:22 X-Proofpoint-ORIG-GUID: cYDejdJgNKdnaeJBrPTuOpSf1zmV1h_c X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNzEyMDE5NiBTYWx0ZWRfXxLu4q0qpv8Y+ 3KLxCcfuo+n+e9xBAn0zLe0oDJKHVcQ/adjvNpb3Vu+s0Bj1W4ITZmVCEIhq8KjmehED9a8gTR9 F9u3xnHIpCCP0pF/Ej1/0fbDkgpFjxfVDUfHV64LZs5da98hpHkmYxATmu4rrnZbkbTjloB9YXD mFnMlXerrH6Fuo6YMg53zVLjD3CxRIROdHtZAsoXiNMNaTe4wBzzawGfyH5GMD7UeGd1sLOsPqB wgQGyGxP+kVPxGH+C8aMaVVgdMCeA00Qkk+bx1/dM62CS7owwHG+yG+6uvGYXnl3jBcctnMDNtu mWOS4EoNfi8umq6FEiR0n/Tr70OI8E7FzaxKlWzNP3jJZuQrgyoey6YmYWyk8mUhACplzEIHUg5 Kqb8GVdPyALEgG0uS4mhjkGkXwVcW1e/TGGZoTvTuc28m1aVmagP10NXj0uiG03F4oiUCHwSHCn 5cqM+Fhtg3q/6kvBNsg== X-Proofpoint-GUID: cYDejdJgNKdnaeJBrPTuOpSf1zmV1h_c X-Proofpoint-Spam-Info: AW1haW4tMjYwNzEyMDE5NiBTYWx0ZWRfX6vXBVUYCHdde ve4nA2QzxCI7Z/kj/3BiRaHzlFGifrtBsb5Bz99/79U1C1RHfioyGNbGFqjbcVUsM/eSvvz+P85 5rYyGnTfVOTPfdXUWgkal7abEtMmZn0= X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-07-12_06,2026-07-10_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 bulkscore=0 adultscore=0 suspectscore=0 malwarescore=0 phishscore=0 lowpriorityscore=0 spamscore=0 priorityscore=1501 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2606150000 definitions=main-2607120196 On Mon, Jun 29, 2026 at 10:14:32PM +0800, Yongxing Mou wrote: > From: Abhinav Kumar > > msm_dp_display_disable() currently mixes stream-level shutdown > (disable VSC SDP, off pixel clk, clear power_on) with link-level > teardown (PSM config when sink_count==0, off_link, PHY re-init or > host PHY exit). > > For DP MST the same link is shared across multiple streams, so > disabling one stream must not tear down the link. Move the > link-level steps into msm_dp_display_unprepare() so that > display_disable() handles only the per-stream sequence, mirroring > the split already present on the prepare path > (display_prepare_link vs display_set_mode / display_enable). > > SST behaviour is unchanged: atomic_post_disable() still calls > display_disable() followed by display_unprepare() in the same > order, and the cached dp->panel used inside unprepare is the same > panel that was previously passed in. > > Signed-off-by: Abhinav Kumar > Signed-off-by: Yongxing Mou > --- > drivers/gpu/drm/msm/dp/dp_display.c | 24 ++++++++++++------------ > 1 file changed, 12 insertions(+), 12 deletions(-) > > diff --git a/drivers/gpu/drm/msm/dp/dp_display.c b/drivers/gpu/drm/msm/dp/dp_display.c > index 1af56c84b82e..1680a67284a7 100644 > --- a/drivers/gpu/drm/msm/dp/dp_display.c > +++ b/drivers/gpu/drm/msm/dp/dp_display.c > @@ -731,18 +731,6 @@ static int msm_dp_display_disable(struct msm_dp_display_private *dp, > > msm_dp_ctrl_off_pixel_clk(dp->ctrl, msm_dp_panel->stream_id); > > - /* dongle is still connected but sinks are disconnected */ > - if (dp->link->sink_count == 0) > - msm_dp_link_psm_config(dp->link, &msm_dp_panel->link_info, true); > - > - msm_dp_ctrl_off_link(dp->ctrl, dp->panel); > - > - if (dp->link->sink_count == 0) > - /* re-init the PHY so that we can listen to Dongle disconnect */ > - msm_dp_ctrl_reinit_phy(dp->ctrl); > - else > - msm_dp_display_host_phy_exit(dp); > - > msm_dp_display->power_on = false; The list is no longer powred on at this point. So, this is wrong. > > drm_dbg_dp(dp->drm_dev, "sink count: %d\n", dp->link->sink_count); > @@ -1533,6 +1521,18 @@ static void msm_dp_display_unprepare(struct msm_dp_display_private *dp) > { > struct msm_dp *msm_dp_display = &dp->msm_dp_display; > > + /* dongle is still connected but sinks are disconnected */ > + if (dp->link->sink_count == 0) > + msm_dp_link_psm_config(dp->link, &dp->panel->link_info, true); > + > + msm_dp_ctrl_off_link(dp->ctrl, dp->panel); > + > + if (dp->link->sink_count == 0) > + /* re-init the PHY so that we can listen to Dongle disconnect */ > + msm_dp_ctrl_reinit_phy(dp->ctrl); > + else > + msm_dp_display_host_phy_exit(dp); > + > pm_runtime_put_sync(&msm_dp_display->pdev->dev); > > drm_dbg_dp(dp->drm_dev, "type=%d Done\n", msm_dp_display->connector_type); > > -- > 2.43.0 > -- With best wishes Dmitry