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 7B10E221FDE for ; Mon, 26 Jan 2026 10:49:11 +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=1769424552; cv=none; b=ZF4uD5NN11gVigjhEQ3Q82r28QLAloDl9cYqEUH+pdPDd2EUEEqekirsYoQKUZvJdDl47JIyTMeX1NU+LafNLCvd6N8oufEWTVT9e4DiX3dVaXbgsD113lTUCH0tMVDovtspD7mjS1zo0g6kgqmcD3P/N2R4ij04aFWDDnWbldY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1769424552; c=relaxed/simple; bh=Al+O00g/Lo/6wCI7FAJmfSBrMekQ3KPMQimabdZnAC4=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=A8O0gwyoBdDk4s11VGzIpm9P3RowqhYlWfpBittWSUg0PEYqNLeHcBB7yVcAqi/PVLMTB7iXcMec2YkJgrLCxnIcchjlcb2LUDi27kTVJcXM6COlTCzYj407FbF3oD6VuSI3GxEMfO/Snd/shjXsbtFQNg3Uzk6+w9TzL6mtt0c= 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=dm4xNN6a; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=b5R7PPqO; 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="dm4xNN6a"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="b5R7PPqO" Received: from pps.filterd (m0279870.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 60Q6T9ux054682 for ; Mon, 26 Jan 2026 10:49:10 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= 0wM+WE9prT1wwArZUSke8alVwSaN9+rfvAM9XmMAVqM=; b=dm4xNN6ahl/BNMUM SylQa7q8d+tnoYNSiwnlQuphMK2eJ2uo+RSLbNaFxqr0rIlAOg5hhlXGyunrZg3G Pj0pBLZiUii9I1uMtNBGQCujR88h9DllZ2gAz/J9QfNNNkwXOmWKUOzoiAEnxNzi EwjDA+rwlj28TUsw1KXvF1Hv31xAJ+rQ77NUj07daoTl5epb22+bLmU1rzVyyTCq MaS6BvwfzCfXSxfFFm5juhfV/Us8t8U50C06z6EvKosjK/eCDsGxzBABm23PL/NX wpmqeMeYPw1NGF+OHadejRlBhN77MKSIK6tGQtXcDIZMPtBhzTsg18Q3tzLWja7W 4y9QUw== Received: from mail-vs1-f69.google.com (mail-vs1-f69.google.com [209.85.217.69]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4bvq3hc8dy-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Mon, 26 Jan 2026 10:49:10 +0000 (GMT) Received: by mail-vs1-f69.google.com with SMTP id ada2fe7eead31-5f55092e3fdso8836692137.0 for ; Mon, 26 Jan 2026 02:49:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1769424550; x=1770029350; 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=0wM+WE9prT1wwArZUSke8alVwSaN9+rfvAM9XmMAVqM=; b=b5R7PPqOB5BwfNm7AhICPLwZlu6baQ//AMrlBVN5I2pZmKTT9ESOcz4LONFr/nOEXW 0fyHR4hk/bhtyW+9+sgtDdKz0g/2UrCdLpyTFD98YQayyKJoLSClX2TLP0054qDSBoux a2JIg9mPZvJ/QPJcgj6/pBo0dbjChvvzz3plc0kxmSN3ipdYLySrhyGRysWzEE68EdQK Ltp1u2UI8C3mFhKJcZMu8tNHGjRirMBomxz4krX4EUd4SpwoL+RpKcXaj5T64QpkXx63 qOfwZQ/Vh8pm2OncPK+BbSRkN7EhddgjohnPS5omCTtZ8ECUJAau9im9tVRxnIsppBhN Eu8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1769424550; x=1770029350; 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=0wM+WE9prT1wwArZUSke8alVwSaN9+rfvAM9XmMAVqM=; b=BH2PsZbV/4YnlhrJcfFy/mfydOBUXlJrnTjfMXmNrMcepICG+rGCqzV1hBr8wY+iNc KAJleGjjvfIDvVlLZ9C4brzi9BXA19p5pAHR+DrPo6sgTtUHCwvhP1RR0XjQ+JY7aTPZ Hlfy5m8LWrDL37/KGRZu6uvs7bK0JeAS0EVcDLi5u2PgkMzS5pxlpDkaL3JfLl4Ddk4M 7HbTHTd8fNucErmecYeBZuSgV5Xgxle3AUQDgT2ZcMXKmG3I4/Uk7gKkWWNcl/zc4uuV NQ5NnD/+VJXeYkuaTdGBt/+LQ48oSw+Xxt8TxRcdFZQ10ijE5HaxVZsOypgMDwbkrGKY af4Q== X-Forwarded-Encrypted: i=1; AJvYcCW3FbgoRS+pgzQqo9e+WSMGHGmPYKHgoVCpIF3A4Jn6meJ79knkqZku0Tk7umBUGv1H3FWL1xkwKwLCabU=@vger.kernel.org X-Gm-Message-State: AOJu0YxUTT8lbsem0c4uvyEWPFxWhGh7qWlgGJMcVz/gMWdanLnOp5cF OmrgKKk+GXM2c1U1lrPq1m6hobXnj05BOHu1EXJq66vMYKXRA9axdo1fqh5Z5DO266AZCooS6yr TV4HEWn/b47PYo0HSjn+dmMiPBHMpURMojngK2YY/V68MN8ngCb//yZLD9ISBRY0d86o= X-Gm-Gg: AZuq6aKrRxVvvqTXXbT8Wdg9LAzji5fGtLiZmNlf1PSSDCecET/zvnSwOHX+bqvxa2a upZ+4+Pd8OreTucfCSwaCMQ1EMiguQWd5FxnjA35ClQbbpu1F8idKnyacInAlFOPyWeiXOo3/fh islQvqNm3YAYPEPuw3xqkpqV1qQwne9GNYBctTTcvnMreIerGPVMfBCgZIGz/lNcbqyd+4U0liO ieeb6wFnKlVCYCS9DIWFyDKjkY7i1n+C9bpxckvsx3t4+XrxWA0aYIEw5WbTcPSbXmugt+S+6Ht XbTuVsi5y0UfUCg7E1Bx69djjbwaziiuwsVJsBVJ+qGd0Kf8Zsu+3TC/NoIWc7nzX4kgXEl+vOG llNPG/FKMqJ1RbMUkCwhHbbeljsVkZCLg0Tzm0VOewzqcw2FA5E7T6BsITl5fTVYl X-Received: by 2002:a05:6102:419e:b0:5f5:259b:66e1 with SMTP id ada2fe7eead31-5f5771b013bmr1458820137.3.1769424549880; Mon, 26 Jan 2026 02:49:09 -0800 (PST) X-Received: by 2002:a05:6102:419e:b0:5f5:259b:66e1 with SMTP id ada2fe7eead31-5f5771b013bmr1458811137.3.1769424549455; Mon, 26 Jan 2026 02:49:09 -0800 (PST) Received: from [10.205.56.101] (84-253-213-87.bb.dnainternet.fi. [84.253.213.87]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-59de491f9besm2544066e87.73.2026.01.26.02.49.08 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 26 Jan 2026 02:49:08 -0800 (PST) Message-ID: Date: Mon, 26 Jan 2026 12:49:07 +0200 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 v17 2/4] drm/msm/dpu: Defer SSPP allocation until CRTC check To: Jun Nie Cc: Abhinav Kumar , Dmitry Baryshkov , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter , Rob Clark , Neil Armstrong , linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org References: <20260121-msm-next-quad-pipe-split-v17-0-6eb6d8675ca2@linaro.org> <20260121-msm-next-quad-pipe-split-v17-2-6eb6d8675ca2@linaro.org> <6kzd2g4hgffqz5ipaqbourgiefuxxh3njj44n35blo37z6hhhj@us7lzlgmjuld> <91d590de-fa00-4df3-923f-b49ad00cd9da@oss.qualcomm.com> Content-Language: en-US From: Dmitry Baryshkov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMTI2MDA5MSBTYWx0ZWRfX8Y4TPzfU2iSh ACi7swT7jcUjsGKKLPJRBPKqu5VKQITAb8jVsNpTH5aYeGfpn4BPqAYoUxH1/0qSrjQzRZtemz8 8ZGoKpZLLBdoGDC0/sDyfHmRsCCaHlAEpxR1SkgOGM55bhhs/YE/2ySkkdSsPgY+pQgkbs+/2zg gsOl1+jIthTpLYDBLLJ8/g30qxCj9YntPDZyrxrOUuujRl2V0MeSGC2zdZl1CbaS3DqZ0m33ytB WI+jvbjtGrRA6ahbCJo47c9Xvmd3SReh/juLczt+76xK+0NZjrzZsYJggwQmc5+apPUg6cgaHIp FbqAgFY5DqbOFOHtglxcbkMdP8xwdWqhT3auemJP+3xw+kjHvnXZSts3BICknSNdyQP29QsAAfe Inhtr6qi90w07DLU6R4RuKMHW36BY8QJVdd+YFbvaPqYVcxfWi1xzfVJE0Ac9JUivtqmo7JjCiM oT3aENSACQj6COVmDGA== X-Proofpoint-ORIG-GUID: BYvg6wm6KWxdwW1EQcNrxYBM33z5KQZk X-Proofpoint-GUID: BYvg6wm6KWxdwW1EQcNrxYBM33z5KQZk X-Authority-Analysis: v=2.4 cv=c/imgB9l c=1 sm=1 tr=0 ts=697746a6 cx=c_pps a=5HAIKLe1ejAbszaTRHs9Ug==:117 a=oW9j1mrv7lfAxSiOe78TcA==:17 a=IkcTkHD0fZMA:10 a=vUbySO9Y5rIA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=EUspDBNiAAAA:8 a=_F_Q2RQ5sgb5A98PVdQA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=gYDTvv6II1OnSo0itH1n:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.20,FMLib:17.12.100.49 definitions=2026-01-26_02,2026-01-22_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 bulkscore=0 spamscore=0 malwarescore=0 lowpriorityscore=0 suspectscore=0 priorityscore=1501 clxscore=1015 phishscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2601150000 definitions=main-2601260091 On 26/01/2026 12:29, Jun Nie wrote: > Dmitry Baryshkov 于2026年1月26日周一 18:13写道: >> >> On 26/01/2026 12:06, Jun Nie wrote: >>> Dmitry Baryshkov 于2026年1月22日周四 18:22写道: >>>> >>>> On Thu, Jan 22, 2026 at 02:03:25PM +0800, Jun Nie wrote: >>>>> Dmitry Baryshkov 于2026年1月21日周三 17:30写道: >>>>>> >>>>>> On Wed, Jan 21, 2026 at 04:01:51PM +0800, Jun Nie wrote: >>>>>>> Currently, plane splitting and SSPP allocation occur during the plane >>>>>>> check phase. Defer these operations until dpu_assign_plane_resources() >>>>>>> is called from the CRTC side to ensure the topology information from >>>>>>> the CRTC check is available. >>>>>> >>>>>> Why is it important? What is broken otherwise? >>>>> >>>>> I see. Thanks! Will add below lines in next version. >>>>> >>>>> By default, the plane check occurs before the CRTC check. >>>>> Without topology information from the CRTC, plane splitting >>>>> cannot be properly executed. Consequently, the SSPP >>>>> engine starts without a valid memory address, which triggers >>>>> an IOMMU warning. >>>> >>>> What is plane splitting? Write commit message for somebody who doesn't >>>> exactly know what is going on. >>> >>> Thanks for the suggestion! Any more revise is needed? >> >> Sadly enough the text below is not a significant improvement. >> >>> >>> Currently, splitting plane into SSPP rectangles the allocation occur >>> during the plane check phase, so that a plane can be supported by >>> multiple hardware pipe. >> >> What does this mean? Without virtual planes in place, there are no >> multiple hardware pipes. >> >>> While pipe topology is decided in CRTC check. >> >> ?? What does it mean here? >> >>> By default, the plane check occurs before the CRTC check in DRM >>> framework. Without topology information from the CRTC, plane splitting >>> cannot be properly executed. >> >> What does 'properly' mean here? How is it executed? What happens? >> >>> Consequently, the SSPP engine starts >>> without a valid memory address, which triggers IOMMU warning. >> >> IOMMU faults. There are no "warnings". >> >>> >>> Defer above plane operations until dpu_assign_plane_resources() >>> is called from the CRTC side to ensure the topology information from >>> the CRTC check is available. >> >> > Thanks for the patience! > > > Currently, splitting plane into SSPP rectangles and allocation occur > during the plane check phase. When virtual plane is enabled to support > quad-pipe topology later, 2 SSPPs with 4 rect will be needed, so that > a plane can be supported by 4 hardware pipes. And pipe number is number of pipes > decided in CRTC check per interface number, resolution and hardware > feature. Okay, but IOMMU errors were reported with virtual planes being disabled. So how is it relevant? > > By default, the plane check occurs before the CRTC check in DRM > framework. Without topology information from the CRTC, plane splitting WHat is plane splitting? > will be skipped for the first time as pipe number is 0. Consequently, > the SSPP engine starts without a valid memory address, which triggers > IOMMU fault. > > Defer above plane related operations until dpu_assign_plane_resources() > is called from the CRTC side to ensure the topology information from > the CRTC check is available. > > Regards, > Jun >> >> -- >> With best wishes >> Dmitry -- With best wishes Dmitry