mirror of
https://github.com/torvalds/linux.git
synced 2026-11-07 06:17:02 +01:00
soc: qcom: ubwc: Add configuration for Hawi
Add UBWC configuration data for the Hawi platform, which uses UBWC 7.0 and enables the required flags and highest bank bit settings. This allows drivers to query the correct UBWC capabilities on Hawi. Also add UBWC 7.0 support to the version tag helper so that qcom_ubwc_version_tag() returns the correct tag for UBWC 7.0. Signed-off-by: Wangao Wang <wangao.wang@oss.qualcomm.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260812-ubwc_for_hawi_maili-v1-1-c29edecb3bd8@oss.qualcomm.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
parent
8f206c85f3
commit
5909d98ef5
|
|
@ -105,6 +105,13 @@ static const struct qcom_ubwc_cfg_data milos_data = {
|
|||
.highest_bank_bit = 15,
|
||||
};
|
||||
|
||||
static const struct qcom_ubwc_cfg_data ubwc_7_0_hbb16 = {
|
||||
.ubwc_enc_version = UBWC_7_0,
|
||||
.flags = UBWC_SWIZZLE_ENABLE_LVL2 |
|
||||
UBWC_SWIZZLE_ENABLE_LVL3,
|
||||
.highest_bank_bit = 16,
|
||||
};
|
||||
|
||||
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 },
|
||||
|
|
@ -112,6 +119,7 @@ static const struct of_device_id qcom_ubwc_configs[] __maybe_unused = {
|
|||
{ .compatible = "qcom,apq8096", .data = &ubwc_1_0_hbb15 },
|
||||
{ .compatible = "qcom,eliza", .data = &ubwc_5_0_hbb15 },
|
||||
{ .compatible = "qcom,glymur", .data = &glymur_data},
|
||||
{ .compatible = "qcom,hawi", .data = &ubwc_7_0_hbb16 },
|
||||
{ .compatible = "qcom,kaanapali", .data = &ubwc_6_0_hbb16 },
|
||||
{ .compatible = "qcom,mahua", .data = &glymur_data },
|
||||
{ .compatible = "qcom,milos", .data = &milos_data },
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@ struct qcom_ubwc_cfg_data {
|
|||
#define UBWC_4_3 0x40030000
|
||||
#define UBWC_5_0 0x50000000
|
||||
#define UBWC_6_0 0x60000000
|
||||
#define UBWC_7_0 0x70000000
|
||||
|
||||
#if IS_ENABLED(CONFIG_QCOM_UBWC_CONFIG)
|
||||
const struct qcom_ubwc_cfg_data *qcom_ubwc_config_get_data(void);
|
||||
|
|
@ -108,6 +109,8 @@ static inline u32 qcom_ubwc_swizzle(const struct qcom_ubwc_cfg_data *cfg)
|
|||
|
||||
static inline u32 qcom_ubwc_version_tag(const struct qcom_ubwc_cfg_data *cfg)
|
||||
{
|
||||
if (cfg->ubwc_enc_version >= UBWC_7_0)
|
||||
return 6;
|
||||
if (cfg->ubwc_enc_version >= UBWC_6_0)
|
||||
return 5;
|
||||
if (cfg->ubwc_enc_version >= UBWC_5_0)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user