Message ID | 1684185928-24195-4-git-send-email-quic_khsieh@quicinc.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | add DSC 1.2 dpu supports | expand |
On Tue, 16 May 2023 at 00:25, Kuogee Hsieh <quic_khsieh@quicinc.com> wrote: > > DPU < 7.0.0 has DPU_PINGPONG_DSC feature bit set to indicate it requires > both dpu_hw_pp_setup_dsc() and dpu_hw_pp_dsc_{enable,disable}() to be > executed to complete DSC configuration if DSC hardware block is present. > Hence test DPU_PINGPONG_DSC feature bit and assign DSC related functions > to the ops of PINGPONG block accordingly if DPU_PINGPONG_DSC bit is set. > > changes in v6: > -- split patches, this patch has function handles DPU_PINGPONG_DSC bit > > changes in v9: > -- remove un condition assign dsc related functions to pingpong ops Huh? This is beyond my parsing skills. > > Signed-off-by: Kuogee Hsieh <quic_khsieh@quicinc.com> > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> > --- > drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-)
You forgot to address the title suggestion "before assign" isn't proper English. Copying from v8 review: "Guard PINGPONG DSC ops behind DPU_PINGPONG_DSC bit" On 2023-05-15 14:25:23, Kuogee Hsieh wrote: > > DPU < 7.0.0 has DPU_PINGPONG_DSC feature bit set to indicate it requires > both dpu_hw_pp_setup_dsc() and dpu_hw_pp_dsc_{enable,disable}() to be > executed to complete DSC configuration if DSC hardware block is present. > Hence test DPU_PINGPONG_DSC feature bit and assign DSC related functions > to the ops of PINGPONG block accordingly if DPU_PINGPONG_DSC bit is set. > > changes in v6: > -- split patches, this patch has function handles DPU_PINGPONG_DSC bit > > changes in v9: > -- remove un condition assign dsc related functions to pingpong ops Remember that in the DRM subsystem, these horrible changelogs are allowed as part of the commit message. I already disagree with that, and as pointed out by Dmitry this particular one is unreadable. I typically see them through as noise, but this one could use a rewrite. I won't bother suggesting the right wording yet again though. > Signed-off-by: Kuogee Hsieh <quic_khsieh@quicinc.com> > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> For the contents: Reviewed-by: Marijn Suijten <marijn.suijten@somainline.org> > --- > drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c > index 79e4576..437d9e6 100644 > --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c > +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c > @@ -291,9 +291,12 @@ static void _setup_pingpong_ops(struct dpu_hw_pingpong *c, > c->ops.get_line_count = dpu_hw_pp_get_line_count; > c->ops.disable_autorefresh = dpu_hw_pp_disable_autorefresh; > } > - c->ops.setup_dsc = dpu_hw_pp_setup_dsc; > - c->ops.enable_dsc = dpu_hw_pp_dsc_enable; > - c->ops.disable_dsc = dpu_hw_pp_dsc_disable; > + > + if (test_bit(DPU_PINGPONG_DSC, &features)) { > + c->ops.setup_dsc = dpu_hw_pp_setup_dsc; > + c->ops.enable_dsc = dpu_hw_pp_dsc_enable; > + c->ops.disable_dsc = dpu_hw_pp_dsc_disable; > + } > > if (test_bit(DPU_PINGPONG_DITHER, &features)) > c->ops.setup_dither = dpu_hw_pp_setup_dither; > -- > 2.7.4 >
diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c index 79e4576..437d9e6 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c @@ -291,9 +291,12 @@ static void _setup_pingpong_ops(struct dpu_hw_pingpong *c, c->ops.get_line_count = dpu_hw_pp_get_line_count; c->ops.disable_autorefresh = dpu_hw_pp_disable_autorefresh; } - c->ops.setup_dsc = dpu_hw_pp_setup_dsc; - c->ops.enable_dsc = dpu_hw_pp_dsc_enable; - c->ops.disable_dsc = dpu_hw_pp_dsc_disable; + + if (test_bit(DPU_PINGPONG_DSC, &features)) { + c->ops.setup_dsc = dpu_hw_pp_setup_dsc; + c->ops.enable_dsc = dpu_hw_pp_dsc_enable; + c->ops.disable_dsc = dpu_hw_pp_dsc_disable; + } if (test_bit(DPU_PINGPONG_DITHER, &features)) c->ops.setup_dither = dpu_hw_pp_setup_dither;