Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

soc: qcom: ubwc: Add config for Kaanapali

Add the ubwc configuration for Kaanapali chipset. This chipset brings
support for UBWC v6 version. The rest of the configurations remains
as usual.

Signed-off-by: Akhil P Oommen <akhilpo@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com>
Link: https://lore.kernel.org/r/20250930-kaana-gpu-support-v1-1-73530b0700ed@oss.qualcomm.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>

authored by

Akhil P Oommen and committed by
Bjorn Andersson
85d55d8c 40360803

+12
+11
drivers/soc/qcom/ubwc_config.c
··· 16 16 /* no UBWC, no HBB */ 17 17 }; 18 18 19 + static const struct qcom_ubwc_cfg_data kaanapali_data = { 20 + .ubwc_enc_version = UBWC_6_0, 21 + .ubwc_dec_version = UBWC_6_0, 22 + .ubwc_swizzle = UBWC_SWIZZLE_ENABLE_LVL2 | 23 + UBWC_SWIZZLE_ENABLE_LVL3, 24 + .ubwc_bank_spread = true, 25 + .highest_bank_bit = 16, 26 + .macrotile_mode = true, 27 + }; 28 + 19 29 static const struct qcom_ubwc_cfg_data msm8937_data = { 20 30 .ubwc_enc_version = UBWC_1_0, 21 31 .ubwc_dec_version = UBWC_1_0, ··· 244 234 { .compatible = "qcom,apq8026", .data = &no_ubwc_data }, 245 235 { .compatible = "qcom,apq8074", .data = &no_ubwc_data }, 246 236 { .compatible = "qcom,apq8096", .data = &msm8998_data }, 237 + { .compatible = "qcom,kaanapali", .data = &kaanapali_data, }, 247 238 { .compatible = "qcom,glymur", .data = &glymur_data}, 248 239 { .compatible = "qcom,msm8226", .data = &no_ubwc_data }, 249 240 { .compatible = "qcom,msm8916", .data = &no_ubwc_data },
+1
include/linux/soc/qcom/ubwc.h
··· 52 52 #define UBWC_4_0 0x40000000 53 53 #define UBWC_4_3 0x40030000 54 54 #define UBWC_5_0 0x50000000 55 + #define UBWC_6_0 0x60000000 55 56 56 57 #if IS_ENABLED(CONFIG_QCOM_UBWC_CONFIG) 57 58 const struct qcom_ubwc_cfg_data *qcom_ubwc_config_get_data(void);