public inbox for drm-ai-reviews@public-inbox.freedesktop.org
 help / color / mirror / Atom feed
From: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
To: Rob Clark <robin.clark@oss.qualcomm.com>,
	Dmitry Baryshkov <lumag@kernel.org>,
	Abhinav Kumar <abhinav.kumar@linux.dev>,
	Jessica Zhang <jesszhan0024@gmail.com>,
	Sean Paul <sean@poorly.run>,
	Marijn Suijten <marijn.suijten@somainline.org>,
	David Airlie <airlied@gmail.com>, Simona Vetter <simona@ffwll.ch>,
	Bjorn Andersson <andersson@kernel.org>,
	Konrad Dybcio <konradybcio@kernel.org>,
	Akhil P Oommen <akhilpo@oss.qualcomm.com>
Cc: linux-arm-msm@vger.kernel.org, dri-devel@lists.freedesktop.org,
	freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org,
	Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Subject: [PATCH 05/24] drm/msm/adreno: use qcom_ubwc_version_tag() helper
Date: Fri, 06 Mar 2026 18:47:11 +0200	[thread overview]
Message-ID: <20260306-ubwc-rework-v1-5-9cfdff12f2bb@oss.qualcomm.com> (raw)
In-Reply-To: <20260306-ubwc-rework-v1-0-9cfdff12f2bb@oss.qualcomm.com>

Use new helper defined to program UBWC version to the hardware.

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
---
 drivers/gpu/drm/msm/adreno/a8xx_gpu.c |  8 +++-----
 drivers/gpu/drm/msm/msm_mdss.c        | 16 +---------------
 2 files changed, 4 insertions(+), 20 deletions(-)

diff --git a/drivers/gpu/drm/msm/adreno/a8xx_gpu.c b/drivers/gpu/drm/msm/adreno/a8xx_gpu.c
index b1887e0cf698..6dc1d81fcaeb 100644
--- a/drivers/gpu/drm/msm/adreno/a8xx_gpu.c
+++ b/drivers/gpu/drm/msm/adreno/a8xx_gpu.c
@@ -272,35 +272,33 @@ static void a8xx_set_ubwc_config(struct msm_gpu *gpu)
 	bool rgb565_predicator = false, amsbc = false;
 	bool ubwc_mode = qcom_ubwc_get_ubwc_mode(cfg);
 	u32 ubwc_version = cfg->ubwc_enc_version;
-	u32 hbb, hbb_hi, hbb_lo, mode = 1;
+	u32 hbb, hbb_hi, hbb_lo, mode;
 	u8 uavflagprd_inv = 2;
 
 	switch (ubwc_version) {
 	case UBWC_6_0:
 		yuvnotcomptofc = true;
-		mode = 5;
 		break;
 	case UBWC_5_0:
 		amsbc = true;
 		rgb565_predicator = true;
-		mode = 4;
 		break;
 	case UBWC_4_0:
 		amsbc = true;
 		rgb565_predicator = true;
 		fp16compoptdis = true;
 		rgba8888_lossless = true;
-		mode = 2;
 		break;
 	case UBWC_3_0:
 		amsbc = true;
-		mode = 1;
 		break;
 	default:
 		dev_err(&gpu->pdev->dev, "Unknown UBWC version: 0x%x\n", ubwc_version);
 		break;
 	}
 
+	mode = qcom_ubwc_version_tag(cfg);
+
 	/*
 	 * We subtract 13 from the highest bank bit (13 is the minimum value
 	 * allowed by hw) and write the lowest two bits of the remaining value
diff --git a/drivers/gpu/drm/msm/msm_mdss.c b/drivers/gpu/drm/msm/msm_mdss.c
index 9f81f43283b9..798a23fbc906 100644
--- a/drivers/gpu/drm/msm/msm_mdss.c
+++ b/drivers/gpu/drm/msm/msm_mdss.c
@@ -204,7 +204,7 @@ static void msm_mdss_setup_ubwc_v6(struct msm_mdss *msm_mdss)
 	const struct qcom_ubwc_cfg_data *data = msm_mdss->mdss_data;
 	u32 value = MDSS_UBWC_STATIC_UBWC_SWIZZLE(data->ubwc_swizzle) |
 		    MDSS_UBWC_STATIC_HIGHEST_BANK_BIT(data->highest_bank_bit - 13);
-	u32 ver, prediction_mode;
+	u32 prediction_mode;
 
 	if (data->ubwc_bank_spread)
 		value |= MDSS_UBWC_STATIC_UBWC_BANK_SPREAD;
@@ -222,20 +222,6 @@ static void msm_mdss_setup_ubwc_v6(struct msm_mdss *msm_mdss)
 	else
 		prediction_mode = 1;
 
-	if (data->ubwc_enc_version >= UBWC_6_0)
-		ver = 5;
-	else if (data->ubwc_enc_version >= UBWC_5_0)
-		ver = 4;
-	else if (data->ubwc_enc_version >= UBWC_4_3)
-		ver = 3;
-	else if (data->ubwc_enc_version >= UBWC_4_0)
-		ver = 2;
-	else if (data->ubwc_enc_version >= UBWC_3_0)
-		ver = 1;
-	else /* UBWC 1.0 and 2.0 */
-		ver = 0;
-
-	writel_relaxed(ver, msm_mdss->mmio + REG_MDSS_UBWC_CTRL_2);
 	writel_relaxed(prediction_mode, msm_mdss->mmio + REG_MDSS_UBWC_PREDICTION_MODE);
 }
 

-- 
2.47.3


  parent reply	other threads:[~2026-03-06 16:47 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-06 16:47 [PATCH 00/24] soc/qcom/ubwc: rework UBWC configuration database Dmitry Baryshkov
2026-03-06 16:47 ` [PATCH 01/24] drm/msm/mdss: correct UBWC programming sequences Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 02/24] soc: qcom: ubwc: define UBWC 3.1 Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 03/24] soc: qcom: ubwc: define helper for MDSS and Adreno drivers Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 04/24] drm/msm/adreno: Trust the SSoT UBWC config Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` Dmitry Baryshkov [this message]
2026-03-08 22:32   ` Claude review: drm/msm/adreno: use qcom_ubwc_version_tag() helper Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 06/24] drm/msm/adreno: use new helper to set min_acc length Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 07/24] drm/msm/mdss: " Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 08/24] drm/msm/adreno: use new helper to set macrotile_mode Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 09/24] drm/msm/mdss: " Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 10/24] drm/msm/mdss: use new helper to set UBWC bank spreading Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 11/24] drm/msm/adreno: use new helper to set ubwc_swizzle Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 12/24] drm/msm/dpu: " Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 13/24] drm/msm/mdss: " Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 14/24] drm/msm/dpu: drop ubwc_dec_version Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 15/24] drm/msm/adreno: adapt for UBWC 3.1 support Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 16/24] drm/msm/mdss: " Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 17/24] drm/msm/dpu: " Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 18/24] soc: qcom: ubwc: set min_acc length to 64 for all UBWC 1.0 targets Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 19/24] soc: qcom: ubwc: drop ubwc_dec_version Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 20/24] soc: qcom: ubwc: drop ubwc_bank_spread Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 21/24] soc: qcom: ubwc: drop macrotile_mode from the database Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 22/24] soc: qcom: ubwc: use fixed values for UBWC swizzle for UBWC < 4.0 Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 23/24] soc: qcom: ubwc: sort out the rest of the UBWC swizzle settings Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-06 16:47 ` [PATCH 24/24] soc: qcom: ubwc: deduplicate UBWC configuration data Dmitry Baryshkov
2026-03-08 22:32   ` Claude review: " Claude Code Review Bot
2026-03-08 22:32 ` Claude review: soc/qcom/ubwc: rework UBWC configuration database Claude Code Review Bot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260306-ubwc-rework-v1-5-9cfdff12f2bb@oss.qualcomm.com \
    --to=dmitry.baryshkov@oss.qualcomm.com \
    --cc=abhinav.kumar@linux.dev \
    --cc=airlied@gmail.com \
    --cc=akhilpo@oss.qualcomm.com \
    --cc=andersson@kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=freedreno@lists.freedesktop.org \
    --cc=jesszhan0024@gmail.com \
    --cc=konrad.dybcio@oss.qualcomm.com \
    --cc=konradybcio@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lumag@kernel.org \
    --cc=marijn.suijten@somainline.org \
    --cc=robin.clark@oss.qualcomm.com \
    --cc=sean@poorly.run \
    --cc=simona@ffwll.ch \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox