[Freedreno] [PATCH v2 1/8] drm/msm/dpu: inline _setup_pingpong_ops()
Marijn Suijten
marijn.suijten at somainline.org
Sun Jul 30 19:41:10 UTC 2023
On 2023-07-30 03:35:11, Dmitry Baryshkov wrote:
> Inline the _setup_pingpong_ops() function, it makes it easier to handle
> different conditions involving PINGPONG configuration.
>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>
Reviewed-by: Marijn Suijten <marijn.suijten at somainline.org>
> ---
> .../gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c | 39 ++++++++-----------
> 1 file changed, 17 insertions(+), 22 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 437d9e62a841..9298c166b213 100644
> --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c
> +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_pingpong.c
> @@ -281,27 +281,6 @@ static int dpu_hw_pp_setup_dsc(struct dpu_hw_pingpong *pp)
> return 0;
> }
>
> -static void _setup_pingpong_ops(struct dpu_hw_pingpong *c,
> - unsigned long features)
> -{
> - if (test_bit(DPU_PINGPONG_TE, &features)) {
> - c->ops.enable_tearcheck = dpu_hw_pp_enable_te;
> - c->ops.disable_tearcheck = dpu_hw_pp_disable_te;
> - c->ops.connect_external_te = dpu_hw_pp_connect_external_te;
> - c->ops.get_line_count = dpu_hw_pp_get_line_count;
> - c->ops.disable_autorefresh = dpu_hw_pp_disable_autorefresh;
> - }
> -
> - 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;
> -};
> -
> struct dpu_hw_pingpong *dpu_hw_pingpong_init(const struct dpu_pingpong_cfg *cfg,
> void __iomem *addr)
> {
> @@ -316,7 +295,23 @@ struct dpu_hw_pingpong *dpu_hw_pingpong_init(const struct dpu_pingpong_cfg *cfg,
>
> c->idx = cfg->id;
> c->caps = cfg;
> - _setup_pingpong_ops(c, c->caps->features);
> +
> + if (test_bit(DPU_PINGPONG_TE, &cfg->features)) {
> + c->ops.enable_tearcheck = dpu_hw_pp_enable_te;
> + c->ops.disable_tearcheck = dpu_hw_pp_disable_te;
> + c->ops.connect_external_te = dpu_hw_pp_connect_external_te;
> + c->ops.get_line_count = dpu_hw_pp_get_line_count;
> + c->ops.disable_autorefresh = dpu_hw_pp_disable_autorefresh;
> + }
> +
> + if (test_bit(DPU_PINGPONG_DSC, &cfg->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, &cfg->features))
> + c->ops.setup_dither = dpu_hw_pp_setup_dither;
>
> return c;
> }
> --
> 2.39.2
>
More information about the Freedreno
mailing list