From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 2D7EC105A59E for ; Thu, 12 Mar 2026 13:29:36 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 8404810E9FF; Thu, 12 Mar 2026 13:29:35 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=qualcomm.com header.i=@qualcomm.com header.b="psv9qyeE"; dkim=pass (2048-bit key; unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="L1fzLCUj"; dkim-atps=neutral Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) by gabe.freedesktop.org (Postfix) with ESMTPS id 24A6910E9F3 for ; Thu, 12 Mar 2026 13:29:34 +0000 (UTC) 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 62CDMN4T1740058 for ; Thu, 12 Mar 2026 13:29:33 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=mVLreosOAhfO1zekIJ6ufS Z7PejVizoC14J2Kq9mux4=; b=psv9qyeEXBJcmqtjTPGrgxiDKwBMrNDBh1dk9J FwLU+66q/lAFZ8mm1ZlX5BpZAGkydM0JvenYVi0WeXm2jDJgsAJl4WiyaNrh5JvF R97mxe5Gk9IVJzuS5meuMETqZE+Lo5FOp/S33BhBfBHyXzW/SDgqFI09MFkjlHXq spdONUa69jiaT05Gn2NtOgnK8qqbdwdF/BuU0HVn2u0ksdJ4lcN/JWmWFaeSuqrt 70BwSMCW55FFFR842yyjhKOkCTZOLcI+airHufTWdtw1LPBpPgpvMJHnc+YnV7Z4 7QOq56S6YPmWmGt6eqpJoC9lDnz4RRbdWDD4X7kW5EMGhcog== 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 4cumvdhjr0-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Thu, 12 Mar 2026 13:29:33 +0000 (GMT) Received: by mail-qk1-f200.google.com with SMTP id af79cd13be357-8cb0595def4so830892985a.0 for ; Thu, 12 Mar 2026 06:29:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773322172; x=1773926972; darn=lists.freedesktop.org; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:from:to:cc:subject:date:message-id:reply-to; bh=mVLreosOAhfO1zekIJ6ufSZ7PejVizoC14J2Kq9mux4=; b=L1fzLCUjln4tgbCPEstDNCHzQbR9Vjfq+r5zdyCqn7WSxZcPNSJUb0Zppfg45+TRu6 Sb+u7w76tlqU5qZYxWiqVy5AFokTO5UROdqoryZH4/FS+tsO4mFKX4OcnhF9NijvbWpw yw04xl/8X9+UQeQrwsnVg2eWh16CAazBWKJIdKMFabeLUfzDNgt1P+mPCrOL+SG6Rn+y MnXTgZwzhCJMo3S9H+gxuBsYJSPfw5/z8Cwh+nQKK7YsUHY1QYg4K3FTotXABJE4XeHE xUIVMyeNiaoRuJ3YNEaWvxSkiF5O1KiEyA0ksVR82Ja5Yj/LUdUpAri6jaJ+h4GSjoqf QLPg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773322172; x=1773926972; 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=mVLreosOAhfO1zekIJ6ufSZ7PejVizoC14J2Kq9mux4=; b=qAIp3CQS5iaBScKypUvM9nki7daO/hniIW0EW5hNxLTgfn7kX7701/R/GgorRWs+u2 tMWb3O8LOEzSv1zqWy+xUDZRqWZjHWthsygImg1WvkO+2RU25tVG/u53ux/v0Xe0Z2dL rs/GF2ufwe2I1kygFWnDV9wWO1reCafFfogm6TzMOSkyRExDDZo3dLn5/BYNi2r1d+7o s/9cgqGNYIGAMcVO5ZSEE7IDN4lHC9L3sWGBssuX32Q1ZsB4cKe+nSFBz+FitdQ5OO24 oaAyuyuo9Ch5DDLmusEGtOZQ6DYkZdNvt2nRFukxymKjtnZYXHQ1NVWkdq6zTgHLMn3q YjIg== X-Forwarded-Encrypted: i=1; AJvYcCVnBQ/sfUdizx+8IIay9eqR0L+nyrYkx/aC1f1jl3Ed6vojKYJ5LzfKjq41otS49nLcIH2PvZQzz7E=@lists.freedesktop.org X-Gm-Message-State: AOJu0Yz07nYuSng1nOI9ybSCYfhE240xhBD+H7A3ngk/Zs3AisF37MiF eHGCGk0ci8ltNeZn2l0t85yqzXTxpHAvz+kauesr5u0P/b1k4A2Xg+Q4Cpd5QSdTnPopVK2xukj ntyv8A2GPZktPl7Tu9gmL/Fv1xDPZb6P6WhbXegJzJEbRJVEuk0ZyAXzcKjWC+4yAChwqQJ8= X-Gm-Gg: ATEYQzwOtmkfQ3zjUYKHdfpI+W2R/X6OI5U6N24fqLnpiAG+RGOTfeZF4y8d/FXkseM KBpGiOspmus1Kl76/fAQB/QiolwB93e8ZB0Bf646Hy8G/cUSW6k8ByGwhH0lCGYBMhuGtAOrfz7 7ELq7jz7fypX1WIHVh6NiQGZspJ5LuSnOWN1S3vq+B5/xz5Z8U4xBeZ8qW7gVidZWvWNExBiJWE pxYkmro7zU0YHdi9A9z04m5WmPm1Pll/pAo2L2GVsOELCwAx5M43TA+FylI4lQaS7R6RMF+wz3g mjWfdrSnkaU5GR/Wu8+HHUa4K6J57y7RFFUpMwkzFT+ixKPnGIcgEE9e1rFgH7vZmxLIEfXUazp KoIlmRxGguwAWHpPCJDv+QkYKaDmNPoRN5yiQ9/ia1jCt2XtLe6seXtiJhcA1/TV5Fu4hqlH78J Uu6JKDNGRrWYyVZo7/ooK5Jk27RBjaPtBqi4c= X-Received: by 2002:a05:620a:1a06:b0:8cd:8bfb:a48 with SMTP id af79cd13be357-8cdaa84bfa8mr419298085a.28.1773322172338; Thu, 12 Mar 2026 06:29:32 -0700 (PDT) X-Received: by 2002:a05:620a:1a06:b0:8cd:8bfb:a48 with SMTP id af79cd13be357-8cdaa84bfa8mr419293485a.28.1773322171748; Thu, 12 Mar 2026 06:29:31 -0700 (PDT) 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-38a67d617e1sm8646671fa.9.2026.03.12.06.29.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Mar 2026 06:29:29 -0700 (PDT) From: Dmitry Baryshkov Subject: [PATCH v3 00/27] soc/qcom/ubwc: rework UBWC configuration database Date: Thu, 12 Mar 2026 15:29:21 +0200 Message-Id: <20260312-ubwc-rework-v3-0-b7e8f800176a@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIALK/smkC/22QzW6DMBCEXwX5XKdeA8Zw6ntUPfhnHawGaGwgi SLevY459EfxwdKuNN/szJ1EDB4j6Yo7Cbj66KcxDeVLQUyvxiNSb9NMOOOCcQC66IuhAS9T+KQ oDIKVqGvOSFJ8BXT+mmnvH/sc8Lwk6LwviVYRqZmGwc9dMeJ1fh1UnDGQ335dkd0AGPXBx92SC Scqo3UJCru1eibgXNLkT4+n27CEXeZEU9raKFZL6Faer1Sz6bOq1qax6bHWGasrV5eVk5WQSpf K1tBIEKJhQpBHmN7HeQq33NQKOU12LZn4U8oKlNHWOOsccMe1fptiPJwXdXrkPqQv49ItP4h/v a48IUTrGpCOKzDtE8S2bd/T3tgdvQEAAA== X-Change-ID: 20260211-ubwc-rework-e6ce1d8eb520 To: Rob Clark , Dmitry Baryshkov , Abhinav Kumar , Jessica Zhang , Sean Paul , Marijn Suijten , David Airlie , Simona Vetter , Bjorn Andersson , Konrad Dybcio , Akhil P Oommen Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org, Konrad Dybcio X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=openpgp-sha256; l=5125; i=dmitry.baryshkov@oss.qualcomm.com; h=from:subject:message-id; bh=7P051BDy/qn7TYYBQ2mITI8KnaxCFZB8Z9mZuSCy0Hg=; b=owEBbQGS/pANAwAKAYs8ij4CKSjVAcsmYgBpsr+0Ewu45cGDWJhFLSNZvnkJX03vOkNDPTAbN /W5B35Ik9aJATMEAAEKAB0WIQRMcISVXLJjVvC4lX+LPIo+Aiko1QUCabK/tAAKCRCLPIo+Aiko 1W6aB/4uJr187ZRPkR+qgBIzhsrxdz0rZygbS6fTcCvj5S31ZpWnGc4yLa3CRXAt/cNkO9u1g3w Ge8/Xl/67Wps34RDbxcWMzZE/WAqjPUUlEsGcS0ak486ZLh09avZ0vtSSnq++2c2vMIpgFtdwuE xsuryNqI6Rdqh2bB1aUXvIYmEIrdV1PUE05N+lDPux0JPqM4N4ysHTxMWDii6XtNKwgXELS2mF6 dwgEsVIrXCpOj0PtPHKRWmY5xKqvrXbTJ834ffF4zdwtIXvRV9x3R22wCa6dghOL8yqOC+5SyzM ETLFikKZmVg/mTQzsxUK+doOaT+ALCpQy/Yg0g+ddqddHSbi X-Developer-Key: i=dmitry.baryshkov@oss.qualcomm.com; a=openpgp; fpr=8F88381DD5C873E4AE487DA5199BF1243632046A X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzEyMDEwNyBTYWx0ZWRfX3ZIAunZrOxiH j3ae8N1UvdOe9n/BiU2nD05BraDCDFhQCp6YhJuyyz3KC8psYq5ymDlgMIdF8FLJ0HhcfTtkD6r gxTh9ybovglTO7PEs9CC2PjolFMkpl3Bir+rZFG0dZv4gBk7d3XtWbMXmEV6VCGtBIeZJnOg1ux a73I5+RO6MPL4TBk9RnWMrsZY0QQ1VQpcCnWiteJMWum73Ru4iE5F9mej9pz0gbA/IycccT3Osi ehmqU/QEXnMLT3l9hQqSvNtUJrvZPNsg5g/XsHNq34Phdd1bEflgbdFi2JtR+PUiGJ2gMX9YSKc fiu6paiG9Nz4ETzG0s+QKkW9ACIA874VtEif0ynGBNiN3OObFWqHuQy+bOdr6vyNaYgQsWnbmmQ OsHrTyPpmxnBfJr8ApZJFuy8WHc+DFJl7UkMKpRPXuSNdSheBkBsQ6ZqJBweZItvD0RhSo3/pKe pzm7HAO9Rvi+yO0IIWg== X-Proofpoint-GUID: B64cGe2PSrNZnd0JS2sHRPJ3RdWw1FeF X-Proofpoint-ORIG-GUID: B64cGe2PSrNZnd0JS2sHRPJ3RdWw1FeF X-Authority-Analysis: v=2.4 cv=XsT3+FF9 c=1 sm=1 tr=0 ts=69b2bfbd cx=c_pps a=hnmNkyzTK/kJ09Xio7VxxA==:117 a=xqWC_Br6kY4A:10 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=gowsoOTTUOVcmtlkKump:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=PwpGZ1U_RRFY7T7CT1sA:9 a=QEXdDO2ut3YA:10 a=PEH46H7Ffwr30OY-TuGO:22 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-03-12_01,2026-03-12_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 spamscore=0 bulkscore=0 clxscore=1015 adultscore=0 priorityscore=1501 impostorscore=0 lowpriorityscore=0 malwarescore=0 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2603050001 definitions=main-2603120107 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" Currently we store several settings in the configuration database. Some of them are incorrect or not completely matching the expected configuration settings. Others are directly derivable from the UBWC version. Rework how we handle the values in the database, trimming it down to the UBWC version, HBB and several flags. Note: I don't have a good merge strategy for the sieres, it depends on other SoC/UBWC patches [1], which are probably going to be merged through linux-media. Any suggestions are appreciated. Maybe the best option would be to: - merge SoC patches from that series and this series to the Bjorn's tree - create an immutable tag to be used by linux-media and drm/msm - Merge relevant drm/msm and linux-media patches to corresponding trees after merging the immutable tag - Merge the rest of SoC patches in the next cycle after drm/msm and media changes are in WDYT? [1] https://lore.kernel.org/r/20260125-iris-ubwc-v4-0-1ff30644ac81@oss.qualcomm.com Signed-off-by: Dmitry Baryshkov --- Changes in v3: - Corrected UWBC_STATIC programming for MDSS 5.x platforms (Konrad) - Switched MDSS 6.x+ to qcom_ubwc_min_acc_length_64b() too - Added qcom_ubwc_enable_amsbc() helper - Reworked the DPU handling of UBWC config, making it simpler to handle minor revisions. - Removed the comment regarding the best guess for min_acc_length - Link to v2: https://lore.kernel.org/r/20260311-ubwc-rework-v2-0-69f718f2a1c9@oss.qualcomm.com Changes in v2: - Renamed MDSS UBWC programming function to make it more obvious that they are related to the MDSS revision rather than UBWC version (Konrad) - Brought back the patch to use qcom_ubwc_version_tag() in msm_mdss.c, got lost in rebases (Konrad) - Link to v1: https://lore.kernel.org/r/20260306-ubwc-rework-v1-0-9cfdff12f2bb@oss.qualcomm.com --- Dmitry Baryshkov (26): drm/msm/mdss: correct UBWC programming sequences soc: qcom: ubwc: define UBWC 3.1 soc: qcom: ubwc: define helper for MDSS and Adreno drivers soc: qcom: ubwc: add helper controlling AMSBC enablement drm/msm/adreno: use qcom_ubwc_version_tag() helper drm/msm/mdss: use qcom_ubwc_version_tag() helper drm/msm/adreno: use new helper to set min_acc length drm/msm/mdss: use new helper to set min_acc length drm/msm/adreno: use new helper to set macrotile_mode drm/msm/mdss: use new helper to set macrotile_mode drm/msm/mdss: use new helper to set UBWC bank spreading drm/msm/adreno: use new helper to set ubwc_swizzle drm/msm/dpu: use new helper to set ubwc_swizzle drm/msm/mdss: use new helper to set ubwc_swizzle drm/msm/adreno: use new helper to set amsbc drm/msm/mdss: use new helper to set amsbc drm/msm/dpu: drop ubwc_dec_version drm/msm/dpu: invert the order of UBWC checks drm/msm/adreno: adapt for UBWC 3.1 support soc: qcom: ubwc: set min_acc length to 64 for all UBWC 1.0 targets soc: qcom: ubwc: drop ubwc_dec_version soc: qcom: ubwc: drop ubwc_bank_spread soc: qcom: ubwc: drop macrotile_mode from the database soc: qcom: ubwc: use fixed values for UBWC swizzle for UBWC < 4.0 soc: qcom: ubwc: sort out the rest of the UBWC swizzle settings soc: qcom: ubwc: deduplicate UBWC configuration data Konrad Dybcio (1): drm/msm/adreno: Trust the SSoT UBWC config drivers/gpu/drm/msm/adreno/a5xx_gpu.c | 11 +- drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 93 +-------- drivers/gpu/drm/msm/adreno/a8xx_gpu.c | 19 +- drivers/gpu/drm/msm/adreno/adreno_gpu.c | 4 +- drivers/gpu/drm/msm/adreno/adreno_gpu.h | 5 - drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c | 39 ++-- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 3 +- drivers/gpu/drm/msm/msm_mdss.c | 120 ++++-------- drivers/soc/qcom/ubwc_config.c | 281 +++++++--------------------- include/linux/soc/qcom/ubwc.h | 103 ++++++---- 10 files changed, 217 insertions(+), 461 deletions(-) --- base-commit: a0ae2a256046c0c5d3778d1a194ff2e171f16e5f change-id: 20260211-ubwc-rework-e6ce1d8eb520 prerequisite-change-id: 20260110-iris-ubwc-06f64cbb31ae:v4 prerequisite-patch-id: 258496117b2e498200190910a37776be2ced6382 prerequisite-patch-id: 50f58e5d9c6cd2b520d17a7e7b2e657faa7d0847 prerequisite-patch-id: af2ff44a7b919da2ee06cc40893fbcd3f65d32f7 prerequisite-patch-id: f3a2b9ef97be3fa250ea0a6467b2d5a782315aa5 prerequisite-patch-id: 6bdd2119448e84aacbdc6a54d999d47fc69dac81 prerequisite-patch-id: 38cc9502c93c71324f1a11a1fd438374fc41ca84 prerequisite-patch-id: 059d1f35274246575ca4fa9b4ee33cd4801479d1 prerequisite-patch-id: 1cf4ea774a145cdba617eb8be5c1f7afe5817772 prerequisite-patch-id: 46375dcd0da4629e6031336351b9cf688691d7c5 prerequisite-change-id: 20260228-fix-glymur-ubwc-f673d5ca0581:v2 prerequisite-patch-id: 7982b5ad797f83303a7fc6c932c0c6973114e2a4 prerequisite-patch-id: 5bc7dddd09fcdb4f534f8468ab3ad51781667066 Best regards, -- With best wishes Dmitry