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 AFE8C338595 for ; Tue, 9 Jun 2026 09:46:40 +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=1780998401; cv=none; b=gufzFwLxW1BXPmtIAkURK/46+H9XD+VfN633KrXSIq1wPmABfpN4iBzV8cEUWKBfT3eBk1srqI2+faSJtJCbSQoEbz5TPHzebqg6pjMkLcgJ0cDd0nh3k/u8UXSlkj2taO4cul7mj9vyhpqawgW3xhqu1R3EHFKeow+gpeHjRKU= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780998401; c=relaxed/simple; bh=Be/+PZJfQrdccu2rFfueIgde382kPm+vs/NQWA3++Hw=; h=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc; b=ae1YLPP26Mge7ohWv42vJu9EHvCTejjbr1EGjomUUHROd/a6GuNVUXnRxVdOeBmz0gpYjjrLRsQonYK9ccPTWWiktaxq+k37jwySkglbB6uwoMZW2kaxqW5BRS3YcWSvNIuNtagO6o2KPVZZ9vn+oVBm/tglRRKioUj82+TBDDA= 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=Htq4LEXK; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=hTQCjrnO; 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="Htq4LEXK"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="hTQCjrnO" Received: from pps.filterd (m0279865.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 65985Ug0006903 for ; Tue, 9 Jun 2026 09:46:40 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=41ORP2MeswFXH5m5KFacwW q0dcdcSXNSZxua2whrjlA=; b=Htq4LEXKMmyVYnH528VzMdZ+JVZhrlrxAhZJp+ CQSEEp3FJX/DXqOS/cM31xpUk4DYKq6DDDNTmH0CELTKcwHoVzg16l5ATrarYdxB HahCjfgfAWPslgGN0moX+ozbD9o+VJq+iRoSWQCbZDTYnCfKIeNBphwfhxZYX2L9 X5jBYWgiDY0KL7nIvu1SfKCri/LNg7k+IXR/ni7hWz/ChyQkRV9TYpkAyHX5ssZb R9LwONB2a/b6cUX7EEApcxFoV+cmux1OvrWs+caiL/4HYvooKNM4yTjoPfYVvdC2 kU//oS/mqM0OlAJUvoAYrv9TVwYQc6k7rg9YjxyLkeBQVITA== Received: from mail-qv1-f69.google.com (mail-qv1-f69.google.com [209.85.219.69]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4epf0srdg0-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 09 Jun 2026 09:46:39 +0000 (GMT) Received: by mail-qv1-f69.google.com with SMTP id 6a1803df08f44-8cceaca5671so127995196d6.0 for ; Tue, 09 Jun 2026 02:46:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1780998399; x=1781603199; 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=41ORP2MeswFXH5m5KFacwWq0dcdcSXNSZxua2whrjlA=; b=hTQCjrnO/B01jhPWIADdix9+h2+1NOQKB2WIt0WbfgS4i4ZI7eS3FsL97RQCMBW6jJ pviDGtLEq/WBH8Peki7y3xQY10qEd5cd0CETJ9Q4RnLF/WukJvT1RdKv1XdlTMF0QWTB l5Nl3vmfyidwhhw5viGQ7R6o8uCBpMQypRUDyw61CewxaZOVIQJMbCjYvnj09ZkXR+bl lR5BVXi269I+U5YDDdGUOS9xbMq3huf8XjqtwcIyh0evYhFWmzcJm6pSNTmBEOkpiLpB J4Gt76ChGRslKdFgVzOgtNVlSrNpeqckSUThiY7bd5hKwp/3fqKkYMYeyi5nAe70AcG7 XCfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780998399; x=1781603199; 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=41ORP2MeswFXH5m5KFacwWq0dcdcSXNSZxua2whrjlA=; b=BA6QLFYAPHQWVgTaV3BuxIjJO8DD51bmgyvwIlTgZTNQutx/lKO8f0XX/O3JPpBElc Tj0GaauOCEEpePNCtQSpWKtJGp0vPRBNKVN1BTtK0dmoRkI+aKtIa1ZHJhl+Hx5RC0ga FX3d53j4rnBCNUYcaUQei8Nl9k59LdEhbleYlkdrQOpACF+jcnbbzrFvxyQ1oaFi/EzR zlSG4nwV8vAU7j+gYMseww3j75+r7xxntDkTSwdfqFMRF479amjroAdumBgLwOh8br3X U/GUM2ix3/Q5/xCReeup7i9Ng1xIAjUHrhjEFndHTCnF2dAy9ZO6nnHcHsbtLaCxUs5H d1Zw== X-Forwarded-Encrypted: i=1; AFNElJ+SkVACugqvGC9mPeeBlZ27EGFEHy3F6Xk080/0ljnKlCKvn5muAxzzYbnUYoLAvBzSw5bYbhrOgRb9/Kk=@vger.kernel.org X-Gm-Message-State: AOJu0Yz9CeypMHJ1AAZ+WzpyKAldzMw3/+cY3srjFBOPL0XkK/6mnZbZ vObfepPUGFvwK+LYn8pSael2whxulErKGZZUYYBIwrMi74Rtyi93i/2KE5MVBT1N63nTpuBa6SN 0nHKwqrDTYJXAiYH/ClP5S3DnkaarmoCPooVL6zw4HKMk0uG4tqBvcjTMm5yvJsa/jSI= X-Gm-Gg: Acq92OGUY/iQFJ788Rxxe3RuOzQpn9rvZOlC6nhm9RLtwTCpxxonzDibFZjt+DjBqbc 1/+rXAUN8Xts30tyYH730nF3xVS737K6Z5RadHBCFj/vuwrj93Kog48iqR9akPVTH0CunUeFrU6 oszZKtye0pgN3ocfK1KLFYz+iD+eI6XII1AHR9MyU0tbWY2nf+8wmefjYtC3Mt6f0Y2rJHKP3sc 79DgaRnXErCJwx696vLnOh/b75VNVfTszpJwtiCY1zR9pLxZznZ+hq/DAiMXPK6dYqsZAnqMYDQ QoTE5v3SzVVzUGf5bds32kZIXPebyWbjYUmGSiBtMOGbqDzFYq0Q9F8NxNv4H/lwc/fU1xWQaYZ jcJzEyTk2rD2AtDeMPCoujI3AwCfs0T2GRTNrSd6GELOhEvitAfyYUm9LQfHeD+2RpNkSYg+1hx 8wCDQa8x/S8/tOQYRZrQ== X-Received: by 2002:a05:620a:1794:b0:915:d5cd:8ce5 with SMTP id af79cd13be357-915e82543f5mr233084085a.20.1780998398887; Tue, 09 Jun 2026 02:46:38 -0700 (PDT) X-Received: by 2002:a05:620a:1794:b0:915:d5cd:8ce5 with SMTP id af79cd13be357-915e82543f5mr233079885a.20.1780998398298; Tue, 09 Jun 2026 02:46:38 -0700 (PDT) Received: from yongmou2.ap.qualcomm.com (Global_NAT1_IAD_FW.qualcomm.com. [129.46.232.65]) by smtp.gmail.com with ESMTPSA id af79cd13be357-9158a00afafsm2047489485a.2.2026.06.09.02.46.33 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 09 Jun 2026 02:46:37 -0700 (PDT) From: Yongxing Mou Subject: [PATCH v7 00/15] drm/msm/dp: Prerequisite cleanup for upcoming MST support Date: Tue, 09 Jun 2026 17:46:22 +0800 Message-Id: <20260609-dp_mstclean-v7-0-ea04113e8233@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=H4sIAO7gJ2oC/23OwYrDIBAG4FcJnteioxm1p77HshRjxq3QJK2mo UvJu69ND8tCLwP/wHzzP1ihnKiwffNgmZZU0jTWYD4aFk5+/Cae+poZCEDRguX95TiUOZzJjzw KpwN5GzxoVi8umWK6b9rn1ytnut4qOr+WrPOFeJiGIc37hkxvhCCpndKENlpUyoYWpQgRPBk0z naIij2tUyrzlH+2oku7YW87LS0X3DsAGWSUUXWHqZTd9ebPz7e7OjZuwT8CBfwnsBIQpIlRC+8 6eEOs6/oLW/VZADwBAAA= X-Change-ID: 20260528-dp_mstclean-f094cea8ca24 To: Rob Clark , Dmitry Baryshkov , Abhinav Kumar , Jessica Zhang , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org, Yongxing Mou , Dmitry Baryshkov , Abhinav Kumar X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1780998392; l=3468; i=yongxing.mou@oss.qualcomm.com; s=20250910; h=from:subject:message-id; bh=Be/+PZJfQrdccu2rFfueIgde382kPm+vs/NQWA3++Hw=; b=yVfbiBr6+L9sSo2yi7XTtFRsXQuPIPyYRDyYy1ANqCEi31RwGrI3hC70IBjGklX5BMjQ3HOEc Fkr/Clx8tkTCReYi1JNpS5pWX28Nqrg4YhOkSqxCsQak0C83/I8U4qi X-Developer-Key: i=yongxing.mou@oss.qualcomm.com; a=ed25519; pk=rAy5J1eP+V7OXqH5FJ7ngMCtUrnHhut30ZTldOj52UM= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjA5MDA5MCBTYWx0ZWRfX7IzuIn34c8tR g5AtOZpOdhElqNx+ORjEDP4EY2HMWN6MLWYx516seUQKrxGrg79d3gt9m2sYYO5405xgBGhAUyO wpFIIL690vWAqWBn8Qd54w7GLJcTeHjzrXb0uBkJyGp/Do9ive8Sln8JR+0zWK/1YIIbYV6STaz yJYJghGtPzrZeKYmitburfz2SMyUM3o3WoLDN6MvTKYP3Ksq0MmRJAvUtRSXapHFr7Fj309w3ij W37oBdmyZMPxL5hyM+dmiOEi9LQ89w0uOrLeThLlaiW9rViULm0v/YF+kgNFTBuozZ67z5jCIGp qc5K5ausEiwEAugJ64Aat68+0Vx9ruY/ljOYGCv+Z7VFLb2TvI3TKz8PXMgNSysBH/p02/M7dSS ax20SjkRYB+UNNtgUARWfnngzpq7Ohleh6k39DMlPOVsrO39oNHwT8unglCXfrqn4PFXLaxFuSO 4bGxtS5JwigQ25uW74w== X-Proofpoint-ORIG-GUID: RTQrW3pwW1dYmV7FhlFlFQPrhCQbU3rZ X-Proofpoint-GUID: RTQrW3pwW1dYmV7FhlFlFQPrhCQbU3rZ X-Authority-Analysis: v=2.4 cv=GeonWwXL c=1 sm=1 tr=0 ts=6a27e0ff cx=c_pps a=wEM5vcRIz55oU/E2lInRtA==:117 a=C3Dk8TwHQYyIj7nOf9RCJw==:17 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=Um2Pa8k9VHT-vaBCBUpS:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=vykuwZLdp5Yjkddl-pAA:9 a=QEXdDO2ut3YA:10 a=OIgjcC2v60KrkQgK7BGD:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-09_02,2026-06-09_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 adultscore=0 malwarescore=0 clxscore=1015 spamscore=0 lowpriorityscore=0 impostorscore=0 priorityscore=1501 suspectscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605210000 definitions=main-2606090090 This series is the SST-only prerequisite portion of the MSM DP MST work. It refactors the existing DP code paths so that MST can plug in cleanly in a follow-up series, without bundling the cleanup with MST functionality in the same submission. SST behaviour is preserved end-to-end; no new functionality is added here. The intent is to land these refactors first to keep the follow-up MST series focused, smaller, and easier to review. Signed-off-by: Yongxing Mou --- Changes in v7: - patch 7: Use WARN_ON_ONCE() when pixel clock is already on. [Konrad] - Link to v6: https://lore.kernel.org/r/20260602-dp_mstclean-v6-0-2c17ff40a9b2@oss.qualcomm.com Changes in v6: - patch 4: fixed the RMW comments. [Dmitry] - patch 10: do not rename the existing struct. [Dmitry] - Link to v5: https://lore.kernel.org/r/20260528-dp_mstclean-v5-0-a9221c1f1f3b@oss.qualcomm.com Changes in v5: - Split out from v4: only the SST prerequisite cleanup (patches 1-15) is sent here; the MST implementation will follow on top. - Rebased onto linux-next-20260527; adapted bridge callbacks to the new drm_atomic_commit* API. - patch 3: added Suggested-by: Dmitry Baryshkov. - patch 4: fixed "splite" typo, reworded body, added RMW comment covering both SST and MST paths. [Dmitry] - patch 10: drop cached panel from msm_dp_ctrl_private; pass panel explicitly to all stream-related dp_ctrl APIs. [Dmitry] - patch 13/14: introduce bridge wrappers and atomic_prepare with drm_atomic_commit* from the start to preserve bisectability. - patch 15: fixed pass panel inside the func. [Dmitry] - Link to v4: https://lore.kernel.org/all/20260410-msm-dp-mst-v4-0-b20518dea8de@oss.qualcomm.com/ --- Abhinav Kumar (6): drm/msm/dp: break up dp_display_enable into two parts drm/msm/dp: re-arrange dp_display_disable() into functional parts drm/msm/dp: allow dp_ctrl stream APIs to use any panel passed to it drm/msm/dp: split dp_ctrl_off() into stream and link parts drm/msm/dp: make bridge helpers use dp_display to allow re-use drm/msm/dp: separate dp_display_prepare() into its own API Yongxing Mou (9): drm/msm/dp: remove cached drm_edid from panel drm/msm/dp: drop deprecated .mode_set() and use .atomic_enable drm/msm/dp: move mode setup into msm_dp_panel_init_panel_info() drm/msm/dp: split msm_dp_ctrl_config_ctrl() into link parts and stream parts drm/msm/dp: extract MISC1_MISC0 configuration into a separate function drm/msm/dp: split link setup from source params drm/msm/dp: move the pixel clock control to its own API drm/msm/dp: simplify link and clock disable sequence drm/msm/dp: pass panel to display enable/disable helpers drivers/gpu/drm/msm/dp/dp_ctrl.c | 382 ++++++++++++++++++++---------------- drivers/gpu/drm/msm/dp/dp_ctrl.h | 30 ++- drivers/gpu/drm/msm/dp/dp_display.c | 273 +++++++++++++------------- drivers/gpu/drm/msm/dp/dp_display.h | 8 + drivers/gpu/drm/msm/dp/dp_drm.c | 43 +++- drivers/gpu/drm/msm/dp/dp_drm.h | 12 -- drivers/gpu/drm/msm/dp/dp_panel.c | 75 ++----- drivers/gpu/drm/msm/dp/dp_panel.h | 17 +- 8 files changed, 451 insertions(+), 389 deletions(-) --- base-commit: e7d700e14934e68f86338c5610cf2ae76798b663 change-id: 20260528-dp_mstclean-f094cea8ca24 Best regards, -- Yongxing Mou