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
next prev 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