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 CE95223394C for ; Wed, 20 May 2026 08:54:21 +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=1779267263; cv=none; b=p5sKsBdXRABF49ILlc37ZCxQp/5QmsM1X79aCf/9CiR8eux6Q0aQJWdTaNtJMwyr3In6h0mUvHG7O9iE1rmXqZRI1RkSmsdPwFWcKCiqm/0TOkBKOdFt+YymFjn/rlW4hZlAi5C2Irxj2zXkOh79GiuQL1fM/5wUwKm+xGn7RPs= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779267263; c=relaxed/simple; bh=7An8c9nez3n9dxLsRCedOchskMKrSIkuHi4iVa7MiDw=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=F7tyPq/xgSnxIl+pPtPOfnV5uClTsxoh4ab0iI2HiOWmB637l85PPwfl2lu5+7djNNszDZGVVKw9IvIkiIsjvTT8By9psM9q2VSUdhkXrglw9zJ5VoXkySIRvbDfUNIc2X3QnvKD4KILeQyy+RUKleS22qk9bh1xAKCQPm3qNJQ= 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=DNeZXWX7; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=gQgAktIz; 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="DNeZXWX7"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="gQgAktIz" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 64K7NGCH1963410 for ; Wed, 20 May 2026 08:54:21 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= Tj56qRj45Q6wqrEcPX6AbsU+eMkJuuBDYfmrRyMaOao=; b=DNeZXWX7x0Rk52O2 pRXcDPKBfRoUfRpF/VzEBbXLT1cf24oA6sGBtXUlZLnH7N6zgHUCiJ8lk7/xkdLt QMQrL3Vm635K+p0XCgxHOB1wBoRDnbxoq4Nl113tpi286CS49+FLKuEqljH3aPXH mlxrk+YrUOElqnrxj/44tIimmitx7p0gZ9fQrJXvjOH9trd4fpsBp+sqcQVEIabj xR2LIWIzlyu7QK62ennytxiDElUMmhAsrwUru3Sbgoc8w7IKq7AvT+nAQmKWTKV+ JSl+c4ZyHCSE5imoe3pYI55HeH+2cGm0ou+oHl5dyrg3RmSiYs2NLjQ5J0RKrC1U viqFLQ== Received: from mail-pj1-f71.google.com (mail-pj1-f71.google.com [209.85.216.71]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4e8t3t3uxa-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 20 May 2026 08:54:20 +0000 (GMT) Received: by mail-pj1-f71.google.com with SMTP id 98e67ed59e1d1-3662990c03fso4091925a91.0 for ; Wed, 20 May 2026 01:54:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1779267260; x=1779872060; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=Tj56qRj45Q6wqrEcPX6AbsU+eMkJuuBDYfmrRyMaOao=; b=gQgAktIzWIB6mearjVPdN3vRCAx0rqR8YIaGxm1XFRJ8XhYP9huc4fUMqTEN2ffoOS p/V9X0PNSj1Xe+iMD7tAJMj8rO/WC9G1NRWyRXkHwbjsr25JubEIPmWGqVDEGI+XBQU8 nQMQ1Osdj+noKDoQb08fLf/XAgIfM95n2uYXE7AMrCCq5oyZtcY4TCKOALkyWMc/c07Z B/3yO1RZZLxWqu4LVor7quG/yxeWp2p+PVkhFDBcaoGGASsoRCO48mz7MvNWtpTcBHHc XcGxHHj/6R/zQiFxV6ROLQytUGyaLteXOf7Ov3u2otGTsnjAZ4HMXS1eWrmSKLKH05u+ Wz8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779267260; x=1779872060; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=Tj56qRj45Q6wqrEcPX6AbsU+eMkJuuBDYfmrRyMaOao=; b=YZY9dvXzhR6IR8B5ak8ORcTEYkR9qHs5iVXUTUV7iklxS0wDwgSSpvtKf3BGgybdi1 RQFMAkM1mR2OaUuvA1+3GZPQCdCB8o3vrCBvp36bFhjNGkXdsCZ9tUsPA1jy/F3g1OVj o3PubDiVMI84dShsGO5sLgaT+bHE7Cnhu7oLq0E5NAvD3ObAzUQgO8NkV/ZfzwTa9UBc HFUPL1SIUzATdFNwXvAk/aydDvQPk/pnVxVJVmv8IuofrQQoyVm9PzknS/Dlm8ytHB96 aMT4GRXToNglbKY6jqqQ/DqI+qrEICvlGmaZFBfnWgTe1tHyMVO2LFVyoaQ9DMZsiwOf /9dQ== X-Forwarded-Encrypted: i=1; AFNElJ/a0Q4EmPGW1tte+qN1fXDWnR0wGaJFtclC+jq0/wr9gUjQ37MnIMFmZ1q6i1guwf+Za6bB888ZX89kgDs=@vger.kernel.org X-Gm-Message-State: AOJu0Yzbb2veV+qTZhkiv/9CT+YVYq6Jy2dap0NeAzTKH3lLf9Tk6s7L e1okYJH0qHcEoAbFMznKKUuNS9gR5wvNTBVfeMuoF8VXN3tVVI4mpgNudbjckYZOKHHLp8C77dv xeoYCcMoQ9rDtVzJaGGn6rqV/+55UQHlii751t0xpjJvOv259mBziHtLj2HLAfvdMzNU= X-Gm-Gg: Acq92OG6f1m75OZgXPiMJZ1ydsIBXo91C+/Dz7tNS0HIfcQ9LGTqX/27v6SxTniWZ/c qRzTGa7vBA/z2KOyEdg5BU+bi57E7IqfOTkUewII1rJanzxGKJkpIx7KeOOB/LjVWrWegSxeEAl +j8hQFB8EIkKZm3DlsO93yqxcVLCQR9Af54rykhHQms54tI9o3bQy3meCGu9t7brq27eAYXjTTl +8zcQI3XELfLkRp63c8Syr31AOSpP0t2PUgJR79FHQtphMSzHRgylN8fPLyez0sIbvoOGqTLyTv i2VUABk7BOY5rIaYP5AM94e7Jyyq9Gf0waMTQzaj1WjZ6N7FJSu4C2oYWp2lWSqfKHAlGaubjKY 28/2HUmlSqzgfQqlUa7xWOy39v2D/mThRSNbmcyKbuGBbbZRHynT1DjROevFs6v/S503I9JK4sx QTQVowo6x/Lip2ub3cuQ== X-Received: by 2002:a17:90b:4f81:b0:368:65d1:893 with SMTP id 98e67ed59e1d1-3692344690amr23209189a91.5.1779267259569; Wed, 20 May 2026 01:54:19 -0700 (PDT) X-Received: by 2002:a17:90b:4f81:b0:368:65d1:893 with SMTP id 98e67ed59e1d1-3692344690amr23209169a91.5.1779267259085; Wed, 20 May 2026 01:54:19 -0700 (PDT) Received: from [10.133.33.114] (tpe-colo-wan-fw-bordernet.qualcomm.com. [103.229.16.4]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-369514aecaesm17276282a91.17.2026.05.20.01.54.14 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 20 May 2026 01:54:18 -0700 (PDT) Message-ID: Date: Wed, 20 May 2026 16:54:13 +0800 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v4 13/39] drm/msm/dp: introduce stream_id for each DP panel To: Dmitry Baryshkov 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 References: <20260410-msm-dp-mst-v4-0-b20518dea8de@oss.qualcomm.com> <20260410-msm-dp-mst-v4-13-b20518dea8de@oss.qualcomm.com> <4z23aj2mzpgvaoqodncmi47uhydgtrzagh4j7uog565qm2t4in@mrkummd4vp6q> Content-Language: en-US From: Yongxing Mou In-Reply-To: <4z23aj2mzpgvaoqodncmi47uhydgtrzagh4j7uog565qm2t4in@mrkummd4vp6q> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Proofpoint-ORIG-GUID: JCPgTi_cSrrdm-jyZSBJACwabX55BAz6 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNTIwMDA4NCBTYWx0ZWRfX4cho5bDDazW5 gUtkLkZlLSQrRFZL0qek/exZGZjGmeVVz27aGa1h2f8XZ94sVEV//Ng5kBkcQGK9Y2MNW3D6goy gwMkhQtXTLY/iIjnrSzihNmGnCrLEmmDKfCxxpja+KrPfz0sFFPTSq/C+fCB3XYUP4NX+wLfx3o KZzuczd1NJC+0zqwcMZUBYX6FDGS/lu0h3N39bXnleG0UWSgDJtEk4wF3SWaK0GjIAvMP9XK9B9 2DLKqvVdxuMq2WJTA6jvr1qByXhoEMGQUqEpiJULfzi8tW1p5pBYJeOLy384ZqOgcPpEjXOH0V7 ppK6inhUrnrAa/xZKrYy+Qaf+Qwlz3p7dMt75zFmGZRQ+O9520G3fh3nKf/0YYi3m3qInYwZSGY OBn2Jx+qqfY4zNSSzH0wASw1Ah3etKmjBL17b0pk5OWPu4Uu3uRm28/3uXLotv+gQpSlq55haz8 omyjyrpTg/rtNoBFy7A== X-Authority-Analysis: v=2.4 cv=Y/bIdBeN c=1 sm=1 tr=0 ts=6a0d76bc cx=c_pps a=UNFcQwm+pnOIJct1K4W+Mw==:117 a=nuhDOHQX5FNHPW3J6Bj6AA==:17 a=IkcTkHD0fZMA:10 a=NGcC8JguVDcA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=ZpdpYltYx_vBUK5n70dp:22 a=COk6AnOGAAAA:8 a=EUspDBNiAAAA:8 a=8Wk7F6lNGgSB0avDr_YA:9 a=QEXdDO2ut3YA:10 a=uKXjsCUrEbL0IQVhDsJ9:22 a=TjNXssC_j7lpFel5tvFf:22 X-Proofpoint-GUID: JCPgTi_cSrrdm-jyZSBJACwabX55BAz6 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-05-20_01,2026-05-18_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=0 bulkscore=0 adultscore=0 phishscore=0 priorityscore=1501 impostorscore=0 lowpriorityscore=0 clxscore=1015 malwarescore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605130000 definitions=main-2605200084 On 4/12/2026 2:04 AM, Dmitry Baryshkov wrote: > On Fri, Apr 10, 2026 at 05:33:48PM +0800, Yongxing Mou wrote: >> From: Abhinav Kumar >> >> With MST, each DP controller can handle multiple streams. >> There shall be one dp_panel for each stream but the dp_display >> object shall be shared among them. To represent this abstraction, >> create a stream_id for each DP panel which shall be set by the >> MST stream. For SST, default this to stream 0. >> >> Use the stream ID to control the pixel clock of that respective >> stream by extending the clock handles and state tracking of the >> DP pixel clock to an array of max supported streams. The maximum >> streams currently is 4. >> >> Signed-off-by: Abhinav Kumar >> Signed-off-by: Yongxing Mou >> --- >> drivers/gpu/drm/msm/dp/dp_ctrl.c | 57 +++++++++++++++++++++++-------------- >> drivers/gpu/drm/msm/dp/dp_ctrl.h | 2 +- >> drivers/gpu/drm/msm/dp/dp_display.c | 24 ++++++++++++++-- >> drivers/gpu/drm/msm/dp/dp_display.h | 2 ++ >> drivers/gpu/drm/msm/dp/dp_panel.h | 11 +++++++ >> 5 files changed, 71 insertions(+), 25 deletions(-) >> @@ -2735,9 +2740,17 @@ static int msm_dp_ctrl_clk_init(struct msm_dp_ctrl *msm_dp_ctrl) >> if (rc) >> return rc; >> >> - ctrl->pixel_clk = devm_clk_get(dev, "stream_pixel"); >> - if (IS_ERR(ctrl->pixel_clk)) >> - return PTR_ERR(ctrl->pixel_clk); >> + for (i = DP_STREAM_0; i < DP_STREAM_MAX; i++) { >> + ctrl->pixel_clk[i] = devm_clk_get(dev, pixel_clks[i]); >> + >> + if (i == 0 && IS_ERR(ctrl->pixel_clk[i])) >> + return PTR_ERR(ctrl->pixel_clk[i]); >> + >> + if (IS_ERR(ctrl->pixel_clk[i])) { >> + DRM_DEBUG_DP("stream %d pixel clock not exist", i); >> + break; >> + } > > Almost missed it. If it is -EPROBE_DEFER, we must return an error. In > fact, I'd rather check for -ENOENT (or is it -ENODEV?) and pass all > other errors to the caller. > Thanks, will fix next version. i add logs change check this, if no this stream clk in dts, will return -ENOENT.. >> + } >> >> return 0; >> } >