mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-08-30 19:13:03 -04:00
soc: qcom: ubwc: deduplicate UBWC configuration data
After removing all extra entries from the UBWC database it is easy to define generic entries, common for all machine classes. Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260520-ubwc-rework-v5-28-72f2749bc807@oss.qualcomm.com [bjorn: Dropped unused "ubwc_3_0_hbb16", per compiler warning] Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
committed by
Bjorn Andersson
parent
31e1c32485
commit
d39d5ff3e5
@@ -16,30 +16,70 @@ static const struct qcom_ubwc_cfg_data no_ubwc_data = {
|
||||
/* no UBWC, no HBB */
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data eliza_data = {
|
||||
static const struct qcom_ubwc_cfg_data ubwc_0_0_hbb15 = {
|
||||
/* no UBWC */
|
||||
.highest_bank_bit = 15,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data ubwc_1_0_hbb14 = {
|
||||
.ubwc_enc_version = UBWC_1_0,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data ubwc_1_0_hbb15 = {
|
||||
.ubwc_enc_version = UBWC_1_0,
|
||||
.highest_bank_bit = 15,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data ubwc_2_0_hbb14 = {
|
||||
.ubwc_enc_version = UBWC_2_0,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data ubwc_2_0_hbb15 = {
|
||||
.ubwc_enc_version = UBWC_2_0,
|
||||
.highest_bank_bit = 15,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data ubwc_3_0_hbb15 = {
|
||||
.ubwc_enc_version = UBWC_3_0,
|
||||
.highest_bank_bit = 15,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data ubwc_3_1_hbb13 = {
|
||||
.ubwc_enc_version = UBWC_3_1,
|
||||
.highest_bank_bit = 13,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data ubwc_3_1_hbb14 = {
|
||||
.ubwc_enc_version = UBWC_3_1,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data ubwc_3_1_hbb16 = {
|
||||
.ubwc_enc_version = UBWC_3_1,
|
||||
.highest_bank_bit = 16,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data ubwc_4_0_hbb16 = {
|
||||
.ubwc_enc_version = UBWC_4_0,
|
||||
.highest_bank_bit = 16,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data ubwc_5_0_hbb15 = {
|
||||
.ubwc_enc_version = UBWC_5_0,
|
||||
/* TODO: highest_bank_bit = 14 for LP_DDR4 */
|
||||
.highest_bank_bit = 15,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data kaanapali_data = {
|
||||
.ubwc_enc_version = UBWC_6_0,
|
||||
static const struct qcom_ubwc_cfg_data ubwc_5_0_hbb16 = {
|
||||
.ubwc_enc_version = UBWC_5_0,
|
||||
.highest_bank_bit = 16,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data msm8937_data = {
|
||||
.ubwc_enc_version = UBWC_1_0,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data msm8998_data = {
|
||||
.ubwc_enc_version = UBWC_1_0,
|
||||
.highest_bank_bit = 15,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data qcm2290_data = {
|
||||
/* no UBWC */
|
||||
.highest_bank_bit = 15,
|
||||
static const struct qcom_ubwc_cfg_data ubwc_6_0_hbb16 = {
|
||||
.ubwc_enc_version = UBWC_6_0,
|
||||
.highest_bank_bit = 16,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sa8775p_data = {
|
||||
@@ -48,95 +88,6 @@ static const struct qcom_ubwc_cfg_data sa8775p_data = {
|
||||
.highest_bank_bit = 13,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sar2130p_data = {
|
||||
.ubwc_enc_version = UBWC_3_1,
|
||||
.highest_bank_bit = 13,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sc7180_data = {
|
||||
.ubwc_enc_version = UBWC_2_0,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sc7280_data = {
|
||||
.ubwc_enc_version = UBWC_3_1,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sc8180x_data = {
|
||||
.ubwc_enc_version = UBWC_3_1,
|
||||
.highest_bank_bit = 16,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sc8280xp_data = {
|
||||
.ubwc_enc_version = UBWC_4_0,
|
||||
.highest_bank_bit = 16,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sdm670_data = {
|
||||
.ubwc_enc_version = UBWC_2_0,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sdm845_data = {
|
||||
.ubwc_enc_version = UBWC_2_0,
|
||||
.highest_bank_bit = 15,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sm6115_data = {
|
||||
.ubwc_enc_version = UBWC_1_0,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sm6125_data = {
|
||||
.ubwc_enc_version = UBWC_1_0,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sm6150_data = {
|
||||
.ubwc_enc_version = UBWC_2_0,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sm6350_data = {
|
||||
.ubwc_enc_version = UBWC_2_0,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sm7150_data = {
|
||||
.ubwc_enc_version = UBWC_2_0,
|
||||
.highest_bank_bit = 14,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sm8150_data = {
|
||||
.ubwc_enc_version = UBWC_3_0,
|
||||
.highest_bank_bit = 15,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sm8250_data = {
|
||||
.ubwc_enc_version = UBWC_4_0,
|
||||
/* TODO: highest_bank_bit = 15 for LP_DDR4 */
|
||||
.highest_bank_bit = 16,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sm8350_data = {
|
||||
.ubwc_enc_version = UBWC_4_0,
|
||||
/* TODO: highest_bank_bit = 15 for LP_DDR4 */
|
||||
.highest_bank_bit = 16,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sm8550_data = {
|
||||
.ubwc_enc_version = UBWC_4_0,
|
||||
/* TODO: highest_bank_bit = 15 for LP_DDR4 */
|
||||
.highest_bank_bit = 16,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data sm8750_data = {
|
||||
.ubwc_enc_version = UBWC_5_0,
|
||||
/* TODO: highest_bank_bit = 15 for LP_DDR4 */
|
||||
.highest_bank_bit = 16,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data glymur_data = {
|
||||
.ubwc_enc_version = UBWC_5_0,
|
||||
.flags = UBWC_FLAG_DISABLE_SWIZZLE_LVL2 |
|
||||
@@ -149,61 +100,61 @@ static const struct of_device_id qcom_ubwc_configs[] __maybe_unused = {
|
||||
{ .compatible = "qcom,apq8016", .data = &no_ubwc_data },
|
||||
{ .compatible = "qcom,apq8026", .data = &no_ubwc_data },
|
||||
{ .compatible = "qcom,apq8074", .data = &no_ubwc_data },
|
||||
{ .compatible = "qcom,apq8096", .data = &msm8998_data },
|
||||
{ .compatible = "qcom,eliza", .data = &eliza_data, },
|
||||
{ .compatible = "qcom,kaanapali", .data = &kaanapali_data, },
|
||||
{ .compatible = "qcom,apq8096", .data = &ubwc_1_0_hbb15 },
|
||||
{ .compatible = "qcom,eliza", .data = &ubwc_5_0_hbb15 },
|
||||
{ .compatible = "qcom,glymur", .data = &glymur_data},
|
||||
{ .compatible = "qcom,kaanapali", .data = &ubwc_6_0_hbb16 },
|
||||
{ .compatible = "qcom,mahua", .data = &glymur_data },
|
||||
{ .compatible = "qcom,msm8226", .data = &no_ubwc_data },
|
||||
{ .compatible = "qcom,msm8916", .data = &no_ubwc_data },
|
||||
{ .compatible = "qcom,msm8917", .data = &no_ubwc_data },
|
||||
{ .compatible = "qcom,msm8937", .data = &msm8937_data },
|
||||
{ .compatible = "qcom,msm8937", .data = &ubwc_1_0_hbb14 },
|
||||
{ .compatible = "qcom,msm8929", .data = &no_ubwc_data },
|
||||
{ .compatible = "qcom,msm8939", .data = &no_ubwc_data },
|
||||
{ .compatible = "qcom,msm8953", .data = &msm8937_data },
|
||||
{ .compatible = "qcom,msm8953", .data = &ubwc_1_0_hbb14 },
|
||||
{ .compatible = "qcom,msm8956", .data = &no_ubwc_data },
|
||||
{ .compatible = "qcom,msm8974", .data = &no_ubwc_data },
|
||||
{ .compatible = "qcom,msm8976", .data = &no_ubwc_data },
|
||||
{ .compatible = "qcom,msm8996", .data = &msm8998_data },
|
||||
{ .compatible = "qcom,msm8998", .data = &msm8998_data },
|
||||
{ .compatible = "qcom,qcm2290", .data = &qcm2290_data, },
|
||||
{ .compatible = "qcom,qcm6490", .data = &sc7280_data, },
|
||||
{ .compatible = "qcom,qcs8300", .data = &sc8280xp_data, },
|
||||
{ .compatible = "qcom,sa8155p", .data = &sm8150_data, },
|
||||
{ .compatible = "qcom,sa8540p", .data = &sc8280xp_data, },
|
||||
{ .compatible = "qcom,msm8996", .data = &ubwc_1_0_hbb15 },
|
||||
{ .compatible = "qcom,msm8998", .data = &ubwc_1_0_hbb15 },
|
||||
{ .compatible = "qcom,qcm2290", .data = &ubwc_0_0_hbb15, },
|
||||
{ .compatible = "qcom,qcm6490", .data = &ubwc_3_1_hbb14, },
|
||||
{ .compatible = "qcom,qcs8300", .data = &ubwc_4_0_hbb16, },
|
||||
{ .compatible = "qcom,sa8155p", .data = &ubwc_3_0_hbb15, },
|
||||
{ .compatible = "qcom,sa8540p", .data = &ubwc_4_0_hbb16, },
|
||||
{ .compatible = "qcom,sa8775p", .data = &sa8775p_data, },
|
||||
{ .compatible = "qcom,sar2130p", .data = &sar2130p_data },
|
||||
{ .compatible = "qcom,sc7180", .data = &sc7180_data },
|
||||
{ .compatible = "qcom,sc7280", .data = &sc7280_data, },
|
||||
{ .compatible = "qcom,sc8180x", .data = &sc8180x_data, },
|
||||
{ .compatible = "qcom,sc8280xp", .data = &sc8280xp_data, },
|
||||
{ .compatible = "qcom,sda660", .data = &msm8937_data },
|
||||
{ .compatible = "qcom,sdm450", .data = &msm8937_data },
|
||||
{ .compatible = "qcom,sdm630", .data = &msm8937_data },
|
||||
{ .compatible = "qcom,sdm632", .data = &msm8937_data },
|
||||
{ .compatible = "qcom,sdm636", .data = &msm8937_data },
|
||||
{ .compatible = "qcom,sdm660", .data = &msm8937_data },
|
||||
{ .compatible = "qcom,sdm670", .data = &sdm670_data, },
|
||||
{ .compatible = "qcom,sdm845", .data = &sdm845_data, },
|
||||
{ .compatible = "qcom,sm4250", .data = &sm6115_data, },
|
||||
{ .compatible = "qcom,sm6115", .data = &sm6115_data, },
|
||||
{ .compatible = "qcom,sm6125", .data = &sm6125_data, },
|
||||
{ .compatible = "qcom,sm6150", .data = &sm6150_data, },
|
||||
{ .compatible = "qcom,sm6350", .data = &sm6350_data, },
|
||||
{ .compatible = "qcom,sm6375", .data = &sm6350_data, },
|
||||
{ .compatible = "qcom,sm7125", .data = &sc7180_data },
|
||||
{ .compatible = "qcom,sm7150", .data = &sm7150_data, },
|
||||
{ .compatible = "qcom,sm7225", .data = &sm6350_data, },
|
||||
{ .compatible = "qcom,sm7325", .data = &sc7280_data, },
|
||||
{ .compatible = "qcom,sm8150", .data = &sm8150_data, },
|
||||
{ .compatible = "qcom,sm8250", .data = &sm8250_data, },
|
||||
{ .compatible = "qcom,sm8350", .data = &sm8350_data, },
|
||||
{ .compatible = "qcom,sm8450", .data = &sm8350_data, },
|
||||
{ .compatible = "qcom,sm8550", .data = &sm8550_data, },
|
||||
{ .compatible = "qcom,sm8650", .data = &sm8550_data, },
|
||||
{ .compatible = "qcom,sm8750", .data = &sm8750_data, },
|
||||
{ .compatible = "qcom,x1e80100", .data = &sm8550_data, },
|
||||
{ .compatible = "qcom,x1p42100", .data = &sm8550_data, },
|
||||
{ .compatible = "qcom,sar2130p", .data = &ubwc_3_1_hbb13 },
|
||||
{ .compatible = "qcom,sc7180", .data = &ubwc_2_0_hbb14, },
|
||||
{ .compatible = "qcom,sc7280", .data = &ubwc_3_1_hbb14, },
|
||||
{ .compatible = "qcom,sc8180x", .data = &ubwc_3_1_hbb16, },
|
||||
{ .compatible = "qcom,sc8280xp", .data = &ubwc_4_0_hbb16, },
|
||||
{ .compatible = "qcom,sda660", .data = &ubwc_1_0_hbb14 },
|
||||
{ .compatible = "qcom,sdm450", .data = &ubwc_1_0_hbb14 },
|
||||
{ .compatible = "qcom,sdm630", .data = &ubwc_1_0_hbb14 },
|
||||
{ .compatible = "qcom,sdm632", .data = &ubwc_1_0_hbb14 },
|
||||
{ .compatible = "qcom,sdm636", .data = &ubwc_1_0_hbb14 },
|
||||
{ .compatible = "qcom,sdm660", .data = &ubwc_1_0_hbb14 },
|
||||
{ .compatible = "qcom,sdm670", .data = &ubwc_2_0_hbb14, },
|
||||
{ .compatible = "qcom,sdm845", .data = &ubwc_2_0_hbb15, },
|
||||
{ .compatible = "qcom,sm4250", .data = &ubwc_1_0_hbb14, },
|
||||
{ .compatible = "qcom,sm6115", .data = &ubwc_1_0_hbb14, },
|
||||
{ .compatible = "qcom,sm6125", .data = &ubwc_1_0_hbb14, },
|
||||
{ .compatible = "qcom,sm6150", .data = &ubwc_2_0_hbb14, },
|
||||
{ .compatible = "qcom,sm6350", .data = &ubwc_2_0_hbb14, },
|
||||
{ .compatible = "qcom,sm6375", .data = &ubwc_2_0_hbb14, },
|
||||
{ .compatible = "qcom,sm7125", .data = &ubwc_2_0_hbb14, },
|
||||
{ .compatible = "qcom,sm7150", .data = &ubwc_2_0_hbb14, },
|
||||
{ .compatible = "qcom,sm7225", .data = &ubwc_2_0_hbb14, },
|
||||
{ .compatible = "qcom,sm7325", .data = &ubwc_3_1_hbb14, },
|
||||
{ .compatible = "qcom,sm8150", .data = &ubwc_3_0_hbb15, },
|
||||
{ .compatible = "qcom,sm8250", .data = &ubwc_4_0_hbb16, },
|
||||
{ .compatible = "qcom,sm8350", .data = &ubwc_4_0_hbb16, },
|
||||
{ .compatible = "qcom,sm8450", .data = &ubwc_4_0_hbb16, },
|
||||
{ .compatible = "qcom,sm8550", .data = &ubwc_4_0_hbb16, },
|
||||
{ .compatible = "qcom,sm8650", .data = &ubwc_4_0_hbb16, },
|
||||
{ .compatible = "qcom,sm8750", .data = &ubwc_5_0_hbb16, },
|
||||
{ .compatible = "qcom,x1e80100", .data = &ubwc_4_0_hbb16, },
|
||||
{ .compatible = "qcom,x1p42100", .data = &ubwc_4_0_hbb16, },
|
||||
{ }
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user