Message ID | 20241127-mdss_qcs8300-v1-3-29b2c3ee95b8@quicinc.com |
---|---|
State | Superseded |
Headers | show |
Series | Display enablement changes for Qualcomm QCS8300 platform | expand |
On 2024/11/27 21:46, Dmitry Baryshkov wrote: > On Wed, Nov 27, 2024 at 03:05:03PM +0800, Yongxing Mou wrote: >> Add Mobile Display Subsystem (MDSS) support for the QCS8300 platform. > > Please mention, why do you need it at all. I see that the UBWC swizzle > and HBB settings are different. Is this really the case? Is it because > of the different memory being used on those platforms? > Thanks, will modify the comment to add more information .QCS8300 UBWC setting is quite different with SA8775P,it use different memory,so their recommended configurations are not quite the same.this is really setting. >> >> Signed-off-by: Yongxing Mou <quic_yongmou@quicinc.com> >> --- >> drivers/gpu/drm/msm/msm_mdss.c | 11 +++++++++++ >> 1 file changed, 11 insertions(+) >> >> diff --git a/drivers/gpu/drm/msm/msm_mdss.c b/drivers/gpu/drm/msm/msm_mdss.c >> index b7bd899ead44bf86998e7295bccb31a334fa6811..90d8fe469d3134ec73f386153509ac257d75930a 100644 >> --- a/drivers/gpu/drm/msm/msm_mdss.c >> +++ b/drivers/gpu/drm/msm/msm_mdss.c >> @@ -568,6 +568,16 @@ static const struct msm_mdss_data qcm2290_data = { >> .reg_bus_bw = 76800, >> }; >> >> +static const struct msm_mdss_data qcs8300_data = { >> + .ubwc_enc_version = UBWC_4_0, >> + .ubwc_dec_version = UBWC_4_0, >> + .ubwc_swizzle = 6, >> + .ubwc_static = 1, >> + .highest_bank_bit = 3, >> + .macrotile_mode = 1, >> + .reg_bus_bw = 74000, >> +}; >> + >> static const struct msm_mdss_data sa8775p_data = { >> .ubwc_enc_version = UBWC_4_0, >> .ubwc_dec_version = UBWC_4_0, >> @@ -715,6 +725,7 @@ static const struct of_device_id mdss_dt_match[] = { >> { .compatible = "qcom,mdss" }, >> { .compatible = "qcom,msm8998-mdss", .data = &msm8998_data }, >> { .compatible = "qcom,qcm2290-mdss", .data = &qcm2290_data }, >> + { .compatible = "qcom,qcs8300-mdss", .data = &qcs8300_data }, >> { .compatible = "qcom,sa8775p-mdss", .data = &sa8775p_data }, >> { .compatible = "qcom,sdm670-mdss", .data = &sdm670_data }, >> { .compatible = "qcom,sdm845-mdss", .data = &sdm845_data }, >> >> -- >> 2.34.1 >> >
On Fri, 29 Nov 2024 at 11:56, Yongxing Mou <quic_yongmou@quicinc.com> wrote: > > > > On 2024/11/27 21:46, Dmitry Baryshkov wrote: > > On Wed, Nov 27, 2024 at 03:05:03PM +0800, Yongxing Mou wrote: > >> Add Mobile Display Subsystem (MDSS) support for the QCS8300 platform. > > > > Please mention, why do you need it at all. I see that the UBWC swizzle > > and HBB settings are different. Is this really the case? Is it because > > of the different memory being used on those platforms? > > > Thanks, will modify the comment to add more information .QCS8300 UBWC > setting is quite different with SA8775P,it use different memory,so their > recommended configurations are not quite the same.this is really setting. We had several cases where the platform should be using different HBB if it uses different memory type. Is that the case here? If so, rather than adding another compat entry please extend the msm_mdss to read memory type and select HBB based on that. This will also fix several TODO items in the driver. As a side note, I see that your config has different ubwc_swizzle. If that's actually different, then maybe you are right and there should be a separate entry. > >> > >> Signed-off-by: Yongxing Mou <quic_yongmou@quicinc.com> > >> --- > >> drivers/gpu/drm/msm/msm_mdss.c | 11 +++++++++++ > >> 1 file changed, 11 insertions(+) > >> > >> diff --git a/drivers/gpu/drm/msm/msm_mdss.c b/drivers/gpu/drm/msm/msm_mdss.c > >> index b7bd899ead44bf86998e7295bccb31a334fa6811..90d8fe469d3134ec73f386153509ac257d75930a 100644 > >> --- a/drivers/gpu/drm/msm/msm_mdss.c > >> +++ b/drivers/gpu/drm/msm/msm_mdss.c > >> @@ -568,6 +568,16 @@ static const struct msm_mdss_data qcm2290_data = { > >> .reg_bus_bw = 76800, > >> }; > >> > >> +static const struct msm_mdss_data qcs8300_data = { > >> + .ubwc_enc_version = UBWC_4_0, > >> + .ubwc_dec_version = UBWC_4_0, > >> + .ubwc_swizzle = 6, > >> + .ubwc_static = 1, > >> + .highest_bank_bit = 3, > >> + .macrotile_mode = 1, > >> + .reg_bus_bw = 74000, > >> +}; > >> + > >> static const struct msm_mdss_data sa8775p_data = { > >> .ubwc_enc_version = UBWC_4_0, > >> .ubwc_dec_version = UBWC_4_0, > >> @@ -715,6 +725,7 @@ static const struct of_device_id mdss_dt_match[] = { > >> { .compatible = "qcom,mdss" }, > >> { .compatible = "qcom,msm8998-mdss", .data = &msm8998_data }, > >> { .compatible = "qcom,qcm2290-mdss", .data = &qcm2290_data }, > >> + { .compatible = "qcom,qcs8300-mdss", .data = &qcs8300_data }, > >> { .compatible = "qcom,sa8775p-mdss", .data = &sa8775p_data }, > >> { .compatible = "qcom,sdm670-mdss", .data = &sdm670_data }, > >> { .compatible = "qcom,sdm845-mdss", .data = &sdm845_data }, > >> > >> -- > >> 2.34.1 > >> > > >
On Wed, Nov 27, 2024 at 03:05:03PM +0800, Yongxing Mou wrote: > Add Mobile Display Subsystem (MDSS) support for the QCS8300 platform. > > Signed-off-by: Yongxing Mou <quic_yongmou@quicinc.com> > --- > drivers/gpu/drm/msm/msm_mdss.c | 11 +++++++++++ > 1 file changed, 11 insertions(+) Once rebased on top of [1]: Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> [1] https://lore.kernel.org/dri-devel/20241127-msm-mdss-ubwc-v3-0-9782a7c2b023@linaro.org/ > > diff --git a/drivers/gpu/drm/msm/msm_mdss.c b/drivers/gpu/drm/msm/msm_mdss.c > index b7bd899ead44bf86998e7295bccb31a334fa6811..90d8fe469d3134ec73f386153509ac257d75930a 100644 > --- a/drivers/gpu/drm/msm/msm_mdss.c > +++ b/drivers/gpu/drm/msm/msm_mdss.c > @@ -568,6 +568,16 @@ static const struct msm_mdss_data qcm2290_data = { > .reg_bus_bw = 76800, > }; > > +static const struct msm_mdss_data qcs8300_data = { > + .ubwc_enc_version = UBWC_4_0, > + .ubwc_dec_version = UBWC_4_0, > + .ubwc_swizzle = 6, > + .ubwc_static = 1, > + .highest_bank_bit = 3, > + .macrotile_mode = 1, > + .reg_bus_bw = 74000, > +}; > + > static const struct msm_mdss_data sa8775p_data = { > .ubwc_enc_version = UBWC_4_0, > .ubwc_dec_version = UBWC_4_0, > @@ -715,6 +725,7 @@ static const struct of_device_id mdss_dt_match[] = { > { .compatible = "qcom,mdss" }, > { .compatible = "qcom,msm8998-mdss", .data = &msm8998_data }, > { .compatible = "qcom,qcm2290-mdss", .data = &qcm2290_data }, > + { .compatible = "qcom,qcs8300-mdss", .data = &qcs8300_data }, > { .compatible = "qcom,sa8775p-mdss", .data = &sa8775p_data }, > { .compatible = "qcom,sdm670-mdss", .data = &sdm670_data }, > { .compatible = "qcom,sdm845-mdss", .data = &sdm845_data }, > > -- > 2.34.1 >
diff --git a/drivers/gpu/drm/msm/msm_mdss.c b/drivers/gpu/drm/msm/msm_mdss.c index b7bd899ead44bf86998e7295bccb31a334fa6811..90d8fe469d3134ec73f386153509ac257d75930a 100644 --- a/drivers/gpu/drm/msm/msm_mdss.c +++ b/drivers/gpu/drm/msm/msm_mdss.c @@ -568,6 +568,16 @@ static const struct msm_mdss_data qcm2290_data = { .reg_bus_bw = 76800, }; +static const struct msm_mdss_data qcs8300_data = { + .ubwc_enc_version = UBWC_4_0, + .ubwc_dec_version = UBWC_4_0, + .ubwc_swizzle = 6, + .ubwc_static = 1, + .highest_bank_bit = 3, + .macrotile_mode = 1, + .reg_bus_bw = 74000, +}; + static const struct msm_mdss_data sa8775p_data = { .ubwc_enc_version = UBWC_4_0, .ubwc_dec_version = UBWC_4_0, @@ -715,6 +725,7 @@ static const struct of_device_id mdss_dt_match[] = { { .compatible = "qcom,mdss" }, { .compatible = "qcom,msm8998-mdss", .data = &msm8998_data }, { .compatible = "qcom,qcm2290-mdss", .data = &qcm2290_data }, + { .compatible = "qcom,qcs8300-mdss", .data = &qcs8300_data }, { .compatible = "qcom,sa8775p-mdss", .data = &sa8775p_data }, { .compatible = "qcom,sdm670-mdss", .data = &sdm670_data }, { .compatible = "qcom,sdm845-mdss", .data = &sdm845_data },
Add Mobile Display Subsystem (MDSS) support for the QCS8300 platform. Signed-off-by: Yongxing Mou <quic_yongmou@quicinc.com> --- drivers/gpu/drm/msm/msm_mdss.c | 11 +++++++++++ 1 file changed, 11 insertions(+)