On 5/7/2026 6:33 PM, Dmitry Baryshkov wrote: > In order to simplify handling of UBWC minor revisions (like 3.1 or 4.3) > use version ranges instead of a case switch. > > Signed-off-by: Dmitry Baryshkov <[email protected]>
Reviewed-by: Akhil P Oommen <[email protected]> -Akhil > --- > drivers/gpu/drm/msm/adreno/a8xx_gpu.c | 32 +++++++++++++++----------------- > 1 file changed, 15 insertions(+), 17 deletions(-) > > diff --git a/drivers/gpu/drm/msm/adreno/a8xx_gpu.c > b/drivers/gpu/drm/msm/adreno/a8xx_gpu.c > index 5c73a9ebb22b..29d559fe4683 100644 > --- a/drivers/gpu/drm/msm/adreno/a8xx_gpu.c > +++ b/drivers/gpu/drm/msm/adreno/a8xx_gpu.c > @@ -286,26 +286,24 @@ static void a8xx_set_ubwc_config(struct msm_gpu *gpu) > u32 hbb, hbb_hi, hbb_lo, mode; > u8 uavflagprd_inv = 2; > > - switch (ubwc_version) { > - case UBWC_6_0: > + if (ubwc_version > UBWC_6_0) > + dev_err(&gpu->pdev->dev, "Unknown UBWC version: 0x%x\n", > ubwc_version); > + > + if (ubwc_version == UBWC_6_0) > yuvnotcomptofc = true; > - rgb565_predicator = true; > - break; > - case UBWC_5_0: > - rgb565_predicator = true; > - break; > - case UBWC_4_0: > - rgb565_predicator = true; > - fp16compoptdis = true; > + > + if (ubwc_version < UBWC_5_0 && > + ubwc_version >= UBWC_4_0) > rgba8888_lossless = true; > - break; > - case UBWC_3_0: > + > + if (ubwc_version < UBWC_4_3) > fp16compoptdis = true; > - break; > - default: > - dev_err(&gpu->pdev->dev, "Unknown UBWC version: 0x%x\n", > ubwc_version); > - break; > - } > + > + if (cfg->ubwc_enc_version >= UBWC_4_0) > + rgb565_predicator = true; > + > + if (ubwc_version < UBWC_3_0) > + dev_err(&gpu->pdev->dev, "Unsupported UBWC version: 0x%x\n", > ubwc_version); > > mode = qcom_ubwc_version_tag(cfg); > >
