From nobody Sun Feb 8 18:09:28 2026 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 B94C3310762 for ; Thu, 15 Jan 2026 20:05:48 +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=1768507550; cv=none; b=ZyU8w5IMGU9AjORjvmrphl0rmNshVl/PxSbotbJbUE1wHLXcLXVSF/MuFfqdFko6cXxAWB/YAs0GxXtLlMhqG42DBNRhtEERrlemp5002dlwtPcYNodwqNdiw67BCUXGUlK8z8h8l8kGAZDk8pd42o5Fd3fuVVCfmeT/oPETw4g= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768507550; c=relaxed/simple; bh=xCYpyxz2Y++3bSOvFHpWng3+Lz48nC4C6QeLJXM/NFw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=H9AhgilkUFeAvo4Fm7w8FCPCJ9yWPtlni+8POuXLDWRy9yWFkm1nLmv09v4QktAp4JAP0jIldN/wbE6HlruPkpQfob4VPCzL3+T2mZ7xNz6N72e0YDhOs4SfIWvgochfc6N72oq00xzcVLw2QNpXruTpBDvKSjFDx1R9ur0yndg= 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=mthU4qzs; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=QLabAuMS; 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="mthU4qzs"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="QLabAuMS" Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 60FFYGG62866215 for ; Thu, 15 Jan 2026 20:05:45 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= f/enLxHnBBykrdCL+IaxgmW7qNcWXutcZNBdtd7FtnY=; b=mthU4qzsZz5I+ucW iwOjZiK+6bpkiJYpr3K1jN9WMMhX0GecJZafQhvWcnZ4y6ISfXbi9LvyhwdwQzz3 Zvceu9KKl+LjCe9Rc3jcikWQKWqjHZyEMe7wFmo+s2W+oOGfXF+9MPDMZI/ldXEa S96Q5CuUPAgJXooNYrSJB9cREwe8eDxYEArZb+UarrATR6qLpfXI9r3F4T2XRr2q 5Hri9h5F6MQ2/U51rIj220xByDC603EDvNbUkYkOIHkOwOCQMLZZ9tLZ9H+hncxy APDmLubeRqOQaNVtUdE1IoReNmbLkrg4APq1jC4TC313JMgKt/mqEdNoc4hjBWv1 hq987w== Received: from mail-qk1-f199.google.com (mail-qk1-f199.google.com [209.85.222.199]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bptu2japh-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 15 Jan 2026 20:05:45 +0000 (GMT) Received: by mail-qk1-f199.google.com with SMTP id af79cd13be357-8b9fa6f808cso422738585a.1 for ; Thu, 15 Jan 2026 12:05:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1768507545; x=1769112345; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=f/enLxHnBBykrdCL+IaxgmW7qNcWXutcZNBdtd7FtnY=; b=QLabAuMSSStXGvOUvEsJZZ5HMutmJVUALh3tRKcFOxqS3uLOtimXjtKcln3obzsz8o UtUs1p84aBCdPNIfD7deCRDo/QVESj6m9TBZOBfx2S9qifG9KG3qOP1G0EZ0GiQNmlOF A5jTKLVyVceTdO7w8ps9uzK7wfrFeacffClLvvmGnMB7Sb0beqfuSBLHnVa3MKkhmqOz qsMews/UUEtxm2MHgkgzuxTU4XDdQ6e4ETRvuRwUK76qSY/fcig3fiFmozrXem8yT2sX n9bT24BcDJpjr0R4OGYGZIsUBoM5IP2mbnXdAg3egO4ojgvUtkTCoaQjGcqhGlvIbM+h qVfw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768507545; x=1769112345; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=f/enLxHnBBykrdCL+IaxgmW7qNcWXutcZNBdtd7FtnY=; b=sU9GShq5U+TvDIoQFrteu0FiCYEoO0LLEpY0pVFwHGxsxSRrtZ0Y+BfQJCXSXdeKAZ 4qeLSQt8OUYZSDum2AFDjJ7wUAi9Bay63nx9DCZRAdX/hdugg3LJDLaab4BEY/MIDqEs maqgGCrbndn2kNJyevf7Gp+mhXmy6Uiom8e70247klgeUyicAFOAOKmvh17jaLiXa1N7 bc/2BZbgk3VgRltkKFGAt4q13jXgIwd01m7lv6oe82mxNmZxssiO8uD6Id0bm8qvej7z wAE36dwf3u5D4LrpklJ4A3tMR/D94qlgPv3TNgO+2EHes/yNrUIDaj6UBulV2F1ak+bG DRtg== X-Forwarded-Encrypted: i=1; AJvYcCXFLQjqv7zsYdj1Z480sHXsTHzdLQcwsLaaLr6JDy5O8QMmJqdHW+Q4yA/vGpiZ+6GdLGnazsAvYKxWkRM=@vger.kernel.org X-Gm-Message-State: AOJu0YwkIXtuXWkzOCekz/xCf3vvP7VppUyaty9bXfgRremrh1rR9HF6 Jv95HemEpfQSS6pbfuwePDWh1df0sRtdPC17QCn4Nt7yKHm3Ej7+XpHmkfzyGsI2qToLYzITFsX KPqr+Wo6dUKwBaRxuEN0Ab2Fo2YpzqQkVWS+/CLxL5LfhJrSzbkzmc+c1Tg9oqWP7M8s= X-Gm-Gg: AY/fxX7+ol6SdZJ0qeZonUfv6s8005EzZgMU+r/mORwxCJIaGJqkIZQI5sX05k6ga84 nozXCWHdJLvcIamrfGFO0ZhHyQGOskqSKUx1SdVzXNrxe0LDb1s0taNN7wpiadH2i93jEfjhVjB GaYx4mYSEUZ/FSdbH4kPQJJ1luIc5ixjKpod/0Q6sRsjTn5qv8q9w8yLn05Ku7MJ7MID88CMmLB GSPkCfiR5CfnFrivZfTybf9TGohMqbkzOg9XTqUcYHnWwRPmKPpQEWzu0FLcoVZl/puXha/9VvR LeoEjTiVJ/AUeuQfEk626A4d+6njPgvI7/ZGq9BABA5X/Bx8uqOJ2WUvG9Gr6oOd+0bEbtUgkV0 VOeXOMr2o3d1h2On56qd/PPb1807Urb83/ONaBDKCpDUS1zZNgPJPjXpKx6TBTAjJZ/MA25UvuU B4tHyyFqjhiDtLQmMzPohpU0M= X-Received: by 2002:a05:620a:3910:b0:8c5:2dbc:6244 with SMTP id af79cd13be357-8c6a678e8c1mr113035885a.47.1768507544928; Thu, 15 Jan 2026 12:05:44 -0800 (PST) X-Received: by 2002:a05:620a:3910:b0:8c5:2dbc:6244 with SMTP id af79cd13be357-8c6a678e8c1mr113028585a.47.1768507544295; Thu, 15 Jan 2026 12:05:44 -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-38384e790casm1381901fa.29.2026.01.15.12.05.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jan 2026 12:05:42 -0800 (PST) From: Dmitry Baryshkov Date: Thu, 15 Jan 2026 22:05:38 +0200 Subject: [PATCH 1/2] drm/msm/dpu: correct error messages in RM 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: quoted-printable Message-Id: <20260115-dpu-fix-dspp-v1-1-b73152c147b3@oss.qualcomm.com> References: <20260115-dpu-fix-dspp-v1-0-b73152c147b3@oss.qualcomm.com> In-Reply-To: <20260115-dpu-fix-dspp-v1-0-b73152c147b3@oss.qualcomm.com> 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 X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=3115; i=dmitry.baryshkov@oss.qualcomm.com; h=from:subject:message-id; bh=xCYpyxz2Y++3bSOvFHpWng3+Lz48nC4C6QeLJXM/NFw=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBpaUiSa+LQBrNcwNslYVUlAqVNZ9NlLmdtfWaaX ubVvRo2GlWJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCaWlIkgAKCRCLPIo+Aiko 1YLOB/93x1oEBQn3+4s4f1V4tQPtT/OFmIEoQR9Ac8P7YDJB+7Bom8kDcNhCOQ4BpxRcqnLccuS P/vLOepyMeMebSCIr7TINb/ZkxAToBK4uhUIH1z/A/8AdAPh+hribG5/jifPfqM6kNGVGNI5jAh /zL4kS2z33raiR74Mdmkzy8K+XTpIu8tHIH8VhptRoyizb9ojl0iomwRbHTzx3Cy+x2w6HfSB/y TntlP5sesrUtoTOTLjlNrwLP83+TeJKmNc8Pxqc0BarIA2Mo0aMiR1QvJ84Jyu1zUVu1C939I7y y8UoHyMT1Jf0PBlphk6nxG3X3xpAopNPQ04vPFJ6pJNnE8+q X-Developer-Key: i=dmitry.baryshkov@oss.qualcomm.com; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTE1MDE1NyBTYWx0ZWRfXyAk3Tizf9PlY x6Jp75UDF74vlRCgjUrOpsYHk+UmSfWnr8F7UJO5mndiLKZXU1rTbyf4sOxjUc/CpdRCMxGvWKJ Vjimu+hYZB7K81Ngg7M33ofIB796VdIkraYlDTKzBpmNZImrO9mcpFJGvzgMSP+4gVw8aVpMgFF Sl0jiZazr9T32uHn7Gio51+tK0fobfFF/jojYqtOOgRpuq6z8dcH+wMVYHLD/+4jW2r/8FUSn8A OYrkTCpf0bLITsMNIPTy0H3fSU3NkUaqsADBIzKQKRtyjOeIoM0+kpXGtwiIBboNs2sSZj+ST1l Glj005f43XEqqpKB/B70dj31zpV2S5dESu432lwYsEqwfVMbVPFYOlH6Ls7A46gpeZxf0L3AHvN wF8ByjJobRuePg6WA7jVObj1rsWdedK6ava240zXqgXtXx78TUWMNSTPWwRqgFntDf3cQcTD41R DlqfCSLQb8kXzEj4eKQ== X-Proofpoint-ORIG-GUID: spPXLeLNN8UN5pSFieD_DcooOgapORXL X-Authority-Analysis: v=2.4 cv=W6Y1lBWk c=1 sm=1 tr=0 ts=69694899 cx=c_pps a=HLyN3IcIa5EE8TELMZ618Q==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=LiGtz_15ZcBlpgV9qhMA:9 a=QEXdDO2ut3YA:10 a=bTQJ7kPSJx9SKPbeHEYW:22 X-Proofpoint-GUID: spPXLeLNN8UN5pSFieD_DcooOgapORXL 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_06,2026-01-15_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 priorityscore=1501 phishscore=0 suspectscore=0 lowpriorityscore=0 spamscore=0 impostorscore=0 malwarescore=0 clxscore=1015 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601150157 Some of error messages in RM reference block index, while other print the enum value (which is shifted by 1), not to mention that some of the messages are misleading. Reformat the messages, making them more clear and also always printing the hardware block name. Signed-off-by: Dmitry Baryshkov Reviewed-by: Konrad Dybcio --- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c b/drivers/gpu/drm/msm/d= isp/dpu1/dpu_rm.c index f6568ed8375f..7e77d88f8959 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c @@ -315,20 +315,19 @@ static bool _dpu_rm_check_lm_and_get_connected_blks(s= truct dpu_rm *rm, =20 /* Already reserved? */ if (reserved_by_other(global_state->mixer_to_crtc_id, lm_idx, crtc_id)) { - DPU_DEBUG("lm %d already reserved\n", lm_idx + LM_0); + DPU_DEBUG("LM_%d already reserved\n", lm_idx); return false; } =20 lm_cfg =3D to_dpu_hw_mixer(rm->mixer_blks[lm_idx])->cap; idx =3D lm_cfg->pingpong - PINGPONG_0; - if (idx < 0 || idx >=3D ARRAY_SIZE(rm->pingpong_blks)) { - DPU_ERROR("failed to get pp on lm %d\n", lm_cfg->pingpong); + if (idx < 0 || idx >=3D ARRAY_SIZE(rm->pingpong_blks) || !rm->pingpong_bl= ks[idx]) { + DPU_ERROR("LM_%d, invalid PP_%d\n", lm_idx, idx); return false; } =20 if (reserved_by_other(global_state->pingpong_to_crtc_id, idx, crtc_id)) { - DPU_DEBUG("lm %d pp %d already reserved\n", lm_cfg->id, - lm_cfg->pingpong); + DPU_DEBUG("LM_%d PP_%d already reserved\n", lm_idx, idx); return false; } *pp_idx =3D idx; @@ -337,14 +336,13 @@ static bool _dpu_rm_check_lm_and_get_connected_blks(s= truct dpu_rm *rm, return true; =20 idx =3D lm_cfg->dspp - DSPP_0; - if (idx < 0 || idx >=3D ARRAY_SIZE(rm->dspp_blks)) { - DPU_ERROR("failed to get dspp on lm %d\n", lm_cfg->dspp); + if (idx < 0 || idx >=3D ARRAY_SIZE(rm->dspp_blks) || !rm->dspp_blks[idx])= { + DPU_ERROR("LM_%d, invalid DSPP_%d\n", lm_idx, idx); return false; } =20 if (reserved_by_other(global_state->dspp_to_crtc_id, idx, crtc_id)) { - DPU_DEBUG("lm %d dspp %d already reserved\n", lm_cfg->id, - lm_cfg->dspp); + DPU_DEBUG("LM_%d DSPP_%d already reserved\n", lm_idx, idx); return false; } *dspp_idx =3D idx; @@ -364,7 +362,7 @@ static int _dpu_rm_reserve_lms(struct dpu_rm *rm, int i, lm_count =3D 0; =20 if (!topology->num_lm) { - DPU_ERROR("invalid number of lm: %d\n", topology->num_lm); + DPU_ERROR("zero LMs in topology\n"); return -EINVAL; } =20 @@ -468,13 +466,13 @@ static int _dpu_rm_reserve_ctls( features =3D ctl->caps->features; has_split_display =3D BIT(DPU_CTL_SPLIT_DISPLAY) & features; =20 - DPU_DEBUG("ctl %d caps 0x%lX\n", j + CTL_0, features); + DPU_DEBUG("CTL_%d caps 0x%lX\n", j, features); =20 if (needs_split_display !=3D has_split_display) continue; =20 ctl_idx[i] =3D j; - DPU_DEBUG("ctl %d match\n", j + CTL_0); + DPU_DEBUG("CTL_%d match\n", j); =20 if (++i =3D=3D num_ctls) break; --=20 2.47.3 From nobody Sun Feb 8 18:09:28 2026 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 B94392EAB82 for ; Thu, 15 Jan 2026 20:05:48 +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=1768507550; cv=none; b=jzlGteDo2Zcoy2V9ezbTutLsCYZTEoYn/Qe58nCmZHouJDdqZNlg9B069/ANJeWzU7huf3zFzU0eeuQH8/9rV4mQHJQb49FwohaNsxS91ihLAVqGjM1wYGofIia2YF1mStek+96hB2z+eVzGENKBAdQlsXsud5DaSGUtyrWvJsY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768507550; c=relaxed/simple; bh=F6xYL/L+rt7LV4dkOFjr+7V2E+S4X2JsuEZcSii4Ri8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=SrENiKtihj2y/5z9Gf3xkAKw6J/cK+lgzVAO49tqk9wwOeEMdyf+tXOJ3SKOB+/x/bu0sp2/YTRWB2EuPpDhxJASrYcjmk0Z2wXL/GMBZLRKvBgx0AklFqMrq1oFTfJ5OFnNXDwgCGH5op/CNuZuDWzgGkmeXbU8/CZd2pI6fBs= 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=NBbcOpvn; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=VnPIDEKS; 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="NBbcOpvn"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="VnPIDEKS" Received: from pps.filterd (m0279873.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 60FFYAdS1722643 for ; Thu, 15 Jan 2026 20:05:47 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= mEUYQxV96PnR8jNNyLBEH4rtFWeaUZ6wJwqJC8OGj6Q=; b=NBbcOpvnUfE/+xRo /JctWD51ZYlKt+wisjifw7TeAA99aUyoW/4r2kfNw9AnoeZDPuVaN1zG14to5qiY lq9JHTNbPr08dg/h8ZjxbJHueGmcHDtQqBIFX4rfDY/uVoZ7hugIi4rGFmIa1eOd /KGZ66OpNiQ/lUsVCOXwJx+FzutTMoBv1kvPUXfm6CdZnefJskkcai7u90G55Oq3 HMzy3KnCl6yV/5jk6oGs1PRtwsd9Q3cANGrUhkfBdSs3lcE+btvvcj9P1T8I3UsA KZp/TTpVNbzLDQMDlnWzvv/5c+cGGWiN+YYOrHW5RiXidUiaEzHLIfS9MLWvtUGa fophKw== Received: from mail-qk1-f200.google.com (mail-qk1-f200.google.com [209.85.222.200]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bptna2ayg-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 15 Jan 2026 20:05:47 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-8c2a3a614b5so330543385a.0 for ; Thu, 15 Jan 2026 12:05:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1768507547; x=1769112347; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=mEUYQxV96PnR8jNNyLBEH4rtFWeaUZ6wJwqJC8OGj6Q=; b=VnPIDEKSly/K5CMn+nQ+Bj2KieOJopByWJkFDG1CRFt1s501kFB0t9TrCDA0CKw3go vhhGA889bvB6n0+zVym3GGKi1a9OTPrvMcw/vWlt0EWxLIPOFLrXW0zM/+ME5C74GYt2 rU6/pgbfLrpYSmpvGbFtnZU0UeCrinreWufkWlxf+1q4RuRPC3EiBY3XK5E2mynlu0QE TPjTiU3ikJUIwoq4MM8TOa4Hpor1w8JgstQTurB0p1bDDu/Mwa0+322+HfJKSC23F45I WpThKKb2XV5tFwWwU2kRx2JzX5VqFnblIBea4pw2MpsPVcAEVlYFPHBkKiB3VgkGqrxi iPpg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1768507547; x=1769112347; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=mEUYQxV96PnR8jNNyLBEH4rtFWeaUZ6wJwqJC8OGj6Q=; b=CHQFaqL9AlKgyvA7KZlWvz5BKvtYkI/SpmkQMQI8Epd7pNWLxfZwSL/IX7cbqRP4eO ZRaktbCbNRvnzCRcHclc0HdHMNI8Ama3ePHAze586c6O6qxua8SUXWUb7LCJH+OU4RaM s38DPNJuDs+wbsK6+vkExAVOLXUailfb5ff7BXv6Z0BPjFPbwVZ7lkNWG5CFad0NjfFs aDnmWjK7LEdHStMxkerAUi/iot+4l7dlFvrWJsHgZZ2a2EcxR7g9KQ2itJNuck/10kkl JBj7USJ6vdC7fahxE9OppM685uKF17AmcbxZjrdBZ0VzhQu0XgMWda+zOAS7k2Si6Keq k8iQ== X-Forwarded-Encrypted: i=1; AJvYcCVEQg528+1uYcXlZL4JWhhEdNF/r1y/2gwIiDLJruJALQN3Jfn67QWHh33nHk6fZRdtQo3QPu0kWxsnyMg=@vger.kernel.org X-Gm-Message-State: AOJu0Yz5GItUoZxRzb2+VYffPPhtYbwUYn7mGzoSOJQoLSugaCS+Xoob qHWIq0Juya5vvS5ThP5gcaO9ki4j5H+292pkr6b7IOBN+70Jb+cwra8hxvC76+UHrhVVACvNW8R J62uXDetW9O4pPkdVldTzWcE1D/qtKidxYVkRp9TUZ7zQIwosuCgnF7O8gWhAbRCRZG0= X-Gm-Gg: AY/fxX75+C9e/plV5HvPtUoFBCH9QAuxWLcUopkMEWelWEAvCcB0oIO5gQ0C+xIRlww f6cPPRbYOZDrkjpoWVdCTf2vAQUOua0j2Fzsp2LuSjuRRHbjlgocfDxLAHXA2cbTNWdypNsDDho u+T2nsAvijQNvJGdkMpJPbxqkxjrtZkfklp7KEdOlrh9Z/jq1/6IA1uywEEikNDSQtjEpb7S/tP RrUARWnssY+HiD5anbHCK3ByAUnFNoqotMPRWiLMoLPnvHH+T69SQzLxP12/WN7jLePmRgN5kQf IHBc0Op4DF20VKkOLW3Y5F56vPaXNSi4tD2Xxb5GwHE00JPdzBVnWWt4Y5opWHT+SZKmkPCxegy baZfPgn8j5dumSiwM9237y1dAI2jpc6/HmY55FILsdI9B7fM5DvtEybB+fpqM/Y+g1JxV1deEDy uWVAbtsWCEnn4K4DnebU0XQXg= X-Received: by 2002:a05:620a:44d3:b0:8ac:70cd:8727 with SMTP id af79cd13be357-8c589b97336mr642831685a.11.1768507547096; Thu, 15 Jan 2026 12:05:47 -0800 (PST) X-Received: by 2002:a05:620a:44d3:b0:8ac:70cd:8727 with SMTP id af79cd13be357-8c589b97336mr642825485a.11.1768507546536; Thu, 15 Jan 2026 12:05:46 -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-38384e790casm1381901fa.29.2026.01.15.12.05.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 15 Jan 2026 12:05:44 -0800 (PST) From: Dmitry Baryshkov Date: Thu, 15 Jan 2026 22:05:39 +0200 Subject: [PATCH 2/2] drm/msm/dpu: try reserving the DSPP-less LM first 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: quoted-printable Message-Id: <20260115-dpu-fix-dspp-v1-2-b73152c147b3@oss.qualcomm.com> References: <20260115-dpu-fix-dspp-v1-0-b73152c147b3@oss.qualcomm.com> In-Reply-To: <20260115-dpu-fix-dspp-v1-0-b73152c147b3@oss.qualcomm.com> 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 X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=3109; i=dmitry.baryshkov@oss.qualcomm.com; h=from:subject:message-id; bh=F6xYL/L+rt7LV4dkOFjr+7V2E+S4X2JsuEZcSii4Ri8=; b=owGbwMvMwMXYbdNlx6SpcZXxtFoSQ2amx6T0XMXHt5W2C0ulpAcnvv4znSnHVbeJgbHqxbKkq UfFtcI6GY1ZGBi5GGTFFFl8ClqmxmxKDvuwY2o9zCBWJpApDFycAjAR/Vj2f6r9LJ76Ajmz18wy ez7hZ3H681ct9uXzGdeEvnt4RPXzxPq5T103lH/OeP3+T862zR7q3Clij2ezLn90a1dQSc+xOTH 7J65wm3vzNQ+b6cpod4kQn3CRuXflz72+GfXvU/byspY/5QJaMul7ai+f8lGK+M74NT9zyfefEx yYAvIEJtusLpHUemdR0C6bXR8UNudc4vRFftErWR9U6L1YvDW38mB8VdnW9FvcfwxliypbF4nbh Jvr5+7duO2t+ZLqEJ+japNMIovKche9n2Rh5TInjsVHUFL2wNuEJwanusQLkqsUWd0SxBn2RzR2 s5maHD7qIHc3V9T213Vr92ye7o5zR1geaGy+s6PbIXQSAA== X-Developer-Key: i=dmitry.baryshkov@oss.qualcomm.com; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A X-Proofpoint-GUID: rfaBrwZnbr_NpgKjdJdHZzGUw8CNXigX X-Proofpoint-ORIG-GUID: rfaBrwZnbr_NpgKjdJdHZzGUw8CNXigX X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTE1MDE1NyBTYWx0ZWRfX2WmqAeYV01k+ xCfq+PlCeA1GYoEGub1n5Sd8P/5uAueOhJJW69fB01XfMnkcqaMNWg0+7B2OWF6IZktPJt25Fta UQmlWNb5XF1eOBOAuvyI5nNF9Om81fHtSen/IcZLSNg14i8Xsl1JDv+ToaewFGGovogNTL6lZP5 HuRCKmZgBlE7JR+I/ELrl9h4Dv3dXMKvTmyPOdVwTbfmR4inopN1c3jPYLnVUPBtZA8oqktipu5 nm8ZF97LoLOupjV4sGr0hn0G5ZeXd27+cCgNbSJ+oZQOPShPKBAw3Jy/0GbqdZPCP05gNknHbIy g/g5pEL2TnrbstMLuPafHJJhxY0HUiUXilr/jskG6SW+90KQNvyRWxNCBEsIncBjFiJTUvyjvuz aforQnBKYhsP18tt4FD1fMUjMr2+8/KsLQN2ygKCx97U0P0ECHtYpUg0t8VcP2DuG7Yi99fDzj1 9R6ZJzw+7v3bO2IjcYg== X-Authority-Analysis: v=2.4 cv=fsHRpV4f c=1 sm=1 tr=0 ts=6969489b cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=8oFmcx1cRZW0fiqr4cUA:9 a=QEXdDO2ut3YA:10 a=PEH46H7Ffwr30OY-TuGO:22 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_06,2026-01-15_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 priorityscore=1501 bulkscore=0 adultscore=0 spamscore=0 clxscore=1015 impostorscore=0 phishscore=0 lowpriorityscore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2512120000 definitions=main-2601150157 On most of the platforms only some mixers have connected DSPP blocks. If DSPP is not required for the CRTC, try looking for the LM with no DSSP block, leaving DSPP-enabled LMs to CRTCs which actually require those. Signed-off-by: Dmitry Baryshkov Reviewed-by: Konrad Dybcio --- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c | 52 +++++++++++++++++++++++++-----= ---- 1 file changed, 38 insertions(+), 14 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c b/drivers/gpu/drm/msm/d= isp/dpu1/dpu_rm.c index 7e77d88f8959..451a4fcf3e65 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c @@ -350,28 +350,26 @@ static bool _dpu_rm_check_lm_and_get_connected_blks(s= truct dpu_rm *rm, return true; } =20 -static int _dpu_rm_reserve_lms(struct dpu_rm *rm, - struct dpu_global_state *global_state, - uint32_t crtc_id, - struct msm_display_topology *topology) +static bool dpu_rm_find_lms(struct dpu_rm *rm, + struct dpu_global_state *global_state, + uint32_t crtc_id, bool skip_dspp, + struct msm_display_topology *topology, + int *lm_idx, int *pp_idx, int *dspp_idx) =20 { - int lm_idx[MAX_BLOCKS]; - int pp_idx[MAX_BLOCKS]; - int dspp_idx[MAX_BLOCKS] =3D {0}; int i, lm_count =3D 0; =20 - if (!topology->num_lm) { - DPU_ERROR("zero LMs in topology\n"); - return -EINVAL; - } - /* Find a primary mixer */ for (i =3D 0; i < ARRAY_SIZE(rm->mixer_blks) && lm_count < topology->num_lm; i++) { if (!rm->mixer_blks[i]) continue; =20 + if (skip_dspp && to_dpu_hw_mixer(rm->mixer_blks[i])->cap->dspp) { + DPU_DEBUG("Skipping LM_%d, skipping LMs with DSPPs\n", i); + continue; + } + /* * Reset lm_count to an even index. This will drop the previous * primary mixer if failed to find its peer. @@ -410,12 +408,38 @@ static int _dpu_rm_reserve_lms(struct dpu_rm *rm, } } =20 - if (lm_count !=3D topology->num_lm) { + return lm_count =3D=3D topology->num_lm; +} + +static int _dpu_rm_reserve_lms(struct dpu_rm *rm, + struct dpu_global_state *global_state, + uint32_t crtc_id, + struct msm_display_topology *topology) + +{ + int lm_idx[MAX_BLOCKS]; + int pp_idx[MAX_BLOCKS]; + int dspp_idx[MAX_BLOCKS] =3D {0}; + int i; + bool found; + + if (!topology->num_lm) { + DPU_ERROR("zero LMs in topology\n"); + return -EINVAL; + } + + /* Try using non-DSPP LM blocks first */ + found =3D dpu_rm_find_lms(rm, global_state, crtc_id, !topology->num_dspp, + topology, lm_idx, pp_idx, dspp_idx); + if (!found && !topology->num_dspp) + found =3D dpu_rm_find_lms(rm, global_state, crtc_id, false, + topology, lm_idx, pp_idx, dspp_idx); + if (!found) { DPU_DEBUG("unable to find appropriate mixers\n"); return -ENAVAIL; } =20 - for (i =3D 0; i < lm_count; i++) { + for (i =3D 0; i < topology->num_lm; i++) { global_state->mixer_to_crtc_id[lm_idx[i]] =3D crtc_id; global_state->pingpong_to_crtc_id[pp_idx[i]] =3D crtc_id; global_state->dspp_to_crtc_id[dspp_idx[i]] =3D --=20 2.47.3