From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.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 0059232FA2A for ; Thu, 15 Jan 2026 07:29:13 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768462155; cv=none; b=ecXSYD0KfhspMlAkCMvbnvvqb79vIBsMc/r/fPMl2zdz85v+V4MS8Gpyro73Z/KNjDfEt4lchujDb5+qi6smtX0n5rHuthNQNjVnIKsFZ1qzVdUirgnwj33oBwv9KpkJ4k1IuC4ZNFKsx94laQtTHD6A8YCC2ICylFThDYy8OZM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768462155; c=relaxed/simple; bh=m86ld7IhIkQDXjy3Y5weZUVJI4ZHVj+c8sLf5mumz7s=; h=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc; b=BOEGdUy5+rRP2kBoy74aK8K4Vk1nwL08Cv7GCd6auFwpxgQPa4EyRbfiALtJwL1DZqlBUvxYQYuw4ehlMQUaqh1mjqvFml3RQfWCDwIPbS/EWB+wuTwjEqeb87Ld9D55356xBhH17vJAesI3eg/aViJXO2rSEskbgpGpeWbP1EU= 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=ApFqPLMn; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=BfTI6N0W; arc=none smtp.client-ip=205.220.180.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="ApFqPLMn"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="BfTI6N0W" Received: from pps.filterd (m0279869.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 60F6fwek1991673 for ; Thu, 15 Jan 2026 07:29:13 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=qcppdkim1; bh=h72bZwdSi+QRO6gwAB/PZa NU8NpDQH/mFKJvFIHBoMk=; b=ApFqPLMn4dBPDTyNTmXb9QMxAItLkKkUzkW2yL kmM2waxBqeFB5qLZ6Kw2JPDus/IdLKlMTR8m1ycmgr09/Q+tDLt2RHGfPvdPpTw7 1+JzOp2ZBH2wEn62oLDwiC0I2B1jKQ4MgYwAZu9VBF86zeDMibW2FdUnRyMvggaj 4lZbMks/DX+GmzHzKhts4eyR4L//CelWddgSut5TscvYUJGn0cMsyx8puh8pTmma zlOBOMFogkDTS/kpUgH1nlOPbBuX7Cj84tPefpYIFfz7dO9xyz/e0CKjTmwjf+6Q mJvZJ26xt5kpkxZG/2qjSanLS2Xv90TXha9hBJaENL98JxpA== Received: from mail-qk1-f197.google.com (mail-qk1-f197.google.com [209.85.222.197]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bpbdbu1bd-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 15 Jan 2026 07:29:12 +0000 (GMT) Received: by mail-qk1-f197.google.com with SMTP id af79cd13be357-8b9fa6f808cso183459085a.1 for ; Wed, 14 Jan 2026 23:29:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1768462152; x=1769066952; darn=vger.kernel.org; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:from:to:cc:subject:date:message-id:reply-to; bh=h72bZwdSi+QRO6gwAB/PZaNU8NpDQH/mFKJvFIHBoMk=; b=BfTI6N0WWhG2T841W0/o/MeoqSYGkBV9ziJFEsBiXO28d6b9NFIeFatLHEjI9+A4uX 7X8FW68gyhuM6QCeE4F7jaJ3pU3X4Uy5n8k6cKjQiV3TDj5aKDOAesjfajDDEZnOX047 EQQoW2meQADGGgTlUcWBrR8IlWnyHLqCfjv6cHpdU7BvY0VobRbXboRwCbwkukyHqi8b eU3/KnC2KIcAZF7cMTt1DDT4AfmarE0/cy5R4ZAVVxlDadp2gjI0ie9nNRPqxi6sDFeq 2DNCAsSPNx8rBXjxUh+s0rr1Wktu0OyFPA1YlbKCSUEpBw20CsoaKWihj3SQLvkJi4f1 MTtQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768462152; x=1769066952; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=h72bZwdSi+QRO6gwAB/PZaNU8NpDQH/mFKJvFIHBoMk=; b=dOGjfoYUcHh5k5fS3WTC1hO8NRIK0OkGg90sSBl/u6SdAuZfiWOIsSjdqPaVOofNsN oiyXYwlIHBMQiHftFTCAPJPd6qWn/3gkzbM73SxUUBajcvRmo90XuHxUZLgEPhQAfic4 IoX+4fqG6OpA37/I5q6+fyE2U53mX9VelhSWh/JH7WUYJhW8bj3eQ447eqD9jyFYOtSj KuYUFCkzyXL4Q+S+EJUXe0x4pAFkONheckzafvysvEdH5L3zSmjmV8gjfQinqa6qsKmR yWaAh4R7DW0PzW9LF9SQv9b5/qpI+el9a5oLM3y1Q0Wwp4saAjrsgy+Ou75CLbbV4Fo0 jU8Q== X-Forwarded-Encrypted: i=1; AJvYcCWmKvlv+3eS4pVTG5X2lYhnS/GoLwy6tDv6czNNqMjl/HHup6BsZNcaVliG/LBxXFXUtCrTcVyu6iJeRLE=@vger.kernel.org X-Gm-Message-State: AOJu0YxN/iDRjjpdV7ek2e9h0JvhU2GIVyElgzOu77AtGHdtzFxsndhQ fjos+GjASgQQL1i+t0tKU6jOJIuO6o9NPrqkkfowrbXoqcW15bpkhkgdwoSJDkK7oufIkF8ke0n ie/+V+Hxak8mfVDns7lDb63v1AXy/x9313UShwTtEtBMqeuclwdq8T1A0mgSLceEyQ7w= X-Gm-Gg: AY/fxX4V9nkH/AGPJs4U1SAYvXNUhs5ux70PJaseogLheKZtJMYcdm716IqTgS6XxFB mos9kEJvq7gAg5GIYmgyhuAUi+HDaDAAPlt+2XF4QP9qofoVQtljRVOWfbllmYWKihEcECJ5DTS auhNgmjTRwcQ35NBx8yJuda0ratT/YhZ1FpzuE1Cq46sgseRVX85oSI5e3YUv/GY9NXJ+ddZUCq nRad9PVxcizL/7UevR0jnTw06xIZc/xl32Jkt7LR4xkwD2qvL2ZUayc6P6trenr1B0JlpG4Ys4o t7mBwe/pnAhKDKWaE2CHlERKCTssT2t8sjqV7uuNS5qwT/kErMCuIDjZHIkqUTyKgOt0sMzqh4Z tBIgb07+WchaJO0Dcm0ldMWWE1pFlMrPk8I5thBsdN7S2p6qKW6G5BJc45UcKSck7oh6QHf7VGk 4FWkv4K/AY1wm+/dmjV5Gf/lY= X-Received: by 2002:a05:620a:2808:b0:8b2:6bdf:3d15 with SMTP id af79cd13be357-8c52fb236dcmr733253585a.8.1768462152307; Wed, 14 Jan 2026 23:29:12 -0800 (PST) X-Received: by 2002:a05:620a:2808:b0:8b2:6bdf:3d15 with SMTP id af79cd13be357-8c52fb236dcmr733251685a.8.1768462151808; Wed, 14 Jan 2026 23:29:11 -0800 (PST) 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 38308e7fff4ca-382eb7b1a4dsm58078801fa.17.2026.01.14.23.29.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Jan 2026 23:29:09 -0800 (PST) From: Dmitry Baryshkov Subject: [PATCH v3 0/8] drm/msm/dp: Drop the HPD state machine Date: Thu, 15 Jan 2026 09:29:05 +0200 Message-Id: <20260115-hpd-refactor-v3-0-08e2f3bcd2e0@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="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIAEGXaGkC/23MwQ7CIAwG4FdZOMsCBWTx5HsYD4x1jsS5CUo0y 97dbh6MxkuTv3/7TSxhDJjYrphYxBxSGC4U1KZgvnOXE/LQUGYgwAgDindjwyO2zt+GyK1GMLU xWxCO0ctITXis3OFIuQuJzp6rnuWyfUNWym8oSy64Ur52vgLVKr0fUiqvd3f2Q9+XNNjiZfgYl ah+DCDDtholWi2dU3+MeZ5fq8r3g/MAAAA= X-Change-ID: 20250523-hpd-refactor-74e25b55620a To: Rob Clark , Dmitry Baryshkov , Abhinav Kumar , Jessica Zhang , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter , Kuogee Hsieh Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org, Jessica Zhang X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=2608; i=dmitry.baryshkov@oss.qualcomm.com; h=from:subject:message-id; bh=m86ld7IhIkQDXjy3Y5weZUVJI4ZHVj+c8sLf5mumz7s=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBpaJdCjtkDFa+i+6psenegKh3OkYiHeRBG1uY8b PGr671WMd2JATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCaWiXQgAKCRCLPIo+Aiko 1VQLB/95pAha7y+54mAYSqmZqac8WgGav2PRQ47+7Zke6AgWGNysjTJVTTjqoBnn66z8mDHpyJ8 Y+iPRFFzDJKxHcn3zEeU10ufB+ompE3/bJwIs0i6V30hoQUaR+BfJMkHWGdPwlinMfQZkMkinwA efV1tdiHaXjpT1iPPPTfwPZloBosQtNMYEogflSKtLPS/x8LZqdEKpVrhRiExI+OQb8R8+4B3pO HTPsIeIsMUU2OtGYHdSG0k9L8JNAO0mKHnCFGYgrZzIGNotfwSQzTL3LAAUMEhV7NLzwy1gR/qb 3UQugs9NDQ45L6Q7U7EzqccbSuxoMzLK3ocCuhyOVRqyn6fB X-Developer-Key: i=dmitry.baryshkov@oss.qualcomm.com; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A X-Authority-Analysis: v=2.4 cv=NvncssdJ c=1 sm=1 tr=0 ts=69689749 cx=c_pps a=50t2pK5VMbmlHzFWWp8p/g==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=e5mUnYsNAAAA:8 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=Q-giyGzHwlFVuBBPpRIA:9 a=QEXdDO2ut3YA:10 a=IoWCM6iH3mJn3m4BftBB:22 a=Vxmtnl_E_bksehYqCbjh:22 X-Proofpoint-ORIG-GUID: _-CviaLhBDKnghYIa4K7c9MAkrOpWVE4 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTE1MDA0OSBTYWx0ZWRfX7FB3cUo/vnou h6+9GtaMkt9ti7AfuOG8VX/ARPut9Fq/mkpAuVVEMRGwMUnI4FMTU1v5f7YsNDPs+9sev3WxEOe 3vFOJhHEOMX2xnxp6sv6GJkSjsWpAVd6EyPsCKVUjbtpJK9gCzzbEsE8XkbJYQPP8bdeEWwmRQO dpVLXgaC/XvUawNWNIvrjB1cYmzwkWpUcbddRVAK7EtFBdPcob5yLk5c8KLw6mFpap0ITd8ugyU mWmfPJnsWHH01bzOs8+Fzo07a2InwM0bbZhiAwcUh/3QTeteS8NjknwWaMT1wZimgNXy3taag0w 6XDDIr9ga2eK+IGvHOWEGNpQ8AGhVdqSkTEbhKYt/j2zQTVZJeR0dxhOBRenXLq6rKfwFGlTRFB MLAwzdoQEOGG3HEo5yDENAAkDQrZTqvp5jUmNuWwLhGU/gNkrZ7NvLGmk9dEsKWXZ++OcObeo5J /boBMBJhXmtg/gE4ZvA== X-Proofpoint-GUID: _-CviaLhBDKnghYIa4K7c9MAkrOpWVE4 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.9,FMLib:17.12.100.49 definitions=2026-01-15_02,2026-01-14_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 phishscore=0 suspectscore=0 bulkscore=0 clxscore=1015 malwarescore=0 priorityscore=1501 adultscore=0 lowpriorityscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601150049 Currently, all HPD interrupt handling must go through the HPD state machine. This has caused many issues where the DRM framework assumes that DP is in one state while the state machine is stuck in another state. As discussed here [1], this series: - Removes the state machine - Moves link training to atomic_enable() - Changes the detect() behavior to return true if a display is physically plugged in (as opposed to if the DP link is ready). - Remove event queue and move internal HPD handling to hpd_notify() I'm not completely satisfied with the PM runtime handling, I might want to review it at the next iterations or with the another series. Note: eDP is mostly untested. [1] https://patchwork.freedesktop.org/patch/656312/?series=142010&rev=2#comment_1201738 --- Changes in v3: - Take over the series (thanks, Jessica, for the previous work!) - Major rework of the series, squashed the set of patches touching the HPD states and handling, it is easier to do it this way rather than pulling the strings one by one. - Link to v2: https://lore.kernel.org/r/20250808-hpd-refactor-v2-0-7f4e1e741aa3@oss.qualcomm.com Changes in v2: - Dropped event queue (Dmitry) - Moved internal HPD handling to use hpd_notify() (Dmitry) - Reworked bridge detect() to read DPCP and sink count (Dmitry) - Moved setting of link_trained to plug/unplugged handling - Dropped msm_dp::connected (Dmitry) - Squashed all hpd state related patches (Dmitry) - Link to v1: https://lore.kernel.org/r/20250711-hpd-refactor-v1-0-33cbac823f34@oss.qualcomm.com --- Dmitry Baryshkov (1): drm/msm/dp: drop event data Jessica Zhang (7): drm/msm/dp: fix HPD state status bit shift value drm/msm/dp: Fix the ISR_* enum values drm/msm/dp: Read DPCD and sink count in bridge detect() drm/msm/dp: Move link training to atomic_enable() drm/msm/dp: Drop EV_USER_NOTIFICATION drm/msm/dp: rework HPD handling drm/msm/dp: Add sink_count and link_ready to debug logs drivers/gpu/drm/msm/dp/dp_ctrl.c | 22 -- drivers/gpu/drm/msm/dp/dp_ctrl.h | 1 - drivers/gpu/drm/msm/dp/dp_display.c | 673 +++++++++++------------------------- drivers/gpu/drm/msm/dp/dp_display.h | 2 +- drivers/gpu/drm/msm/dp/dp_drm.c | 22 +- drivers/gpu/drm/msm/dp/dp_drm.h | 2 + drivers/gpu/drm/msm/dp/dp_reg.h | 4 +- 7 files changed, 208 insertions(+), 518 deletions(-) --- base-commit: b775e489bec70895b7ef6b66927886bbac79598f change-id: 20250523-hpd-refactor-74e25b55620a Best regards, -- With best wishes Dmitry