On Wed, Sep 24, 2025 at 7:49 AM Timur Kristóf <[email protected]> wrote:
>
> The dce100_validate_global function was verbatim exactly the
> same as dce60_validate_global and dce80_validate_global.
>
> Share dce100_validate_global between DCE6-10 to save code size.
>
> Signed-off-by: Timur Kristóf <[email protected]>

Series is:
Reviewed-by: Alex Deucher <[email protected]>

> ---
>  .../dc/resource/dce100/dce100_resource.c      |  2 +-
>  .../dc/resource/dce100/dce100_resource.h      |  4 +++
>  .../dc/resource/dce60/dce60_resource.c        | 32 +------------------
>  .../dc/resource/dce80/dce80_resource.c        | 32 +------------------
>  4 files changed, 7 insertions(+), 63 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/display/dc/resource/dce100/dce100_resource.c 
> b/drivers/gpu/drm/amd/display/dc/resource/dce100/dce100_resource.c
> index 6421a56ffd23..c4b4dc3ad8c9 100644
> --- a/drivers/gpu/drm/amd/display/dc/resource/dce100/dce100_resource.c
> +++ b/drivers/gpu/drm/amd/display/dc/resource/dce100/dce100_resource.c
> @@ -898,7 +898,7 @@ static bool dce100_validate_surface_sets(
>         return true;
>  }
>
> -static enum dc_status dce100_validate_global(
> +enum dc_status dce100_validate_global(
>                 struct dc  *dc,
>                 struct dc_state *context)
>  {
> diff --git a/drivers/gpu/drm/amd/display/dc/resource/dce100/dce100_resource.h 
> b/drivers/gpu/drm/amd/display/dc/resource/dce100/dce100_resource.h
> index 08e045601a77..dd150a4b4610 100644
> --- a/drivers/gpu/drm/amd/display/dc/resource/dce100/dce100_resource.h
> +++ b/drivers/gpu/drm/amd/display/dc/resource/dce100/dce100_resource.h
> @@ -41,6 +41,10 @@ struct resource_pool *dce100_create_resource_pool(
>
>  enum dc_status dce100_validate_plane(const struct dc_plane_state 
> *plane_state, struct dc_caps *caps);
>
> +enum dc_status dce100_validate_global(
> +               struct dc  *dc,
> +               struct dc_state *context);
> +
>  enum dc_status dce100_validate_bandwidth(
>                 struct dc  *dc,
>                 struct dc_state *context,
> diff --git a/drivers/gpu/drm/amd/display/dc/resource/dce60/dce60_resource.c 
> b/drivers/gpu/drm/amd/display/dc/resource/dce60/dce60_resource.c
> index 61ad3703461e..53c67ebe779f 100644
> --- a/drivers/gpu/drm/amd/display/dc/resource/dce60/dce60_resource.c
> +++ b/drivers/gpu/drm/amd/display/dc/resource/dce60/dce60_resource.c
> @@ -864,36 +864,6 @@ static void dce60_resource_destruct(struct 
> dce110_resource_pool *pool)
>         }
>  }
>
> -static bool dce60_validate_surface_sets(
> -               struct dc_state *context)
> -{
> -       int i;
> -
> -       for (i = 0; i < context->stream_count; i++) {
> -               if (context->stream_status[i].plane_count == 0)
> -                       continue;
> -
> -               if (context->stream_status[i].plane_count > 1)
> -                       return false;
> -
> -               if (context->stream_status[i].plane_states[0]->format
> -                               >= SURFACE_PIXEL_FORMAT_VIDEO_BEGIN)
> -                       return false;
> -       }
> -
> -       return true;
> -}
> -
> -static enum dc_status dce60_validate_global(
> -               struct dc *dc,
> -               struct dc_state *context)
> -{
> -       if (!dce60_validate_surface_sets(context))
> -               return DC_FAIL_SURFACE_VALIDATE;
> -
> -       return DC_OK;
> -}
> -
>  static void dce60_destroy_resource_pool(struct resource_pool **pool)
>  {
>         struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool);
> @@ -910,7 +880,7 @@ static const struct resource_funcs dce60_res_pool_funcs = 
> {
>         .validate_bandwidth = dce100_validate_bandwidth,
>         .validate_plane = dce100_validate_plane,
>         .add_stream_to_ctx = dce100_add_stream_to_ctx,
> -       .validate_global = dce60_validate_global,
> +       .validate_global = dce100_validate_global,
>         .find_first_free_match_stream_enc_for_link = 
> dce100_find_first_free_match_stream_enc_for_link
>  };
>
> diff --git a/drivers/gpu/drm/amd/display/dc/resource/dce80/dce80_resource.c 
> b/drivers/gpu/drm/amd/display/dc/resource/dce80/dce80_resource.c
> index 0c9a39bf7ff4..5b7769745202 100644
> --- a/drivers/gpu/drm/amd/display/dc/resource/dce80/dce80_resource.c
> +++ b/drivers/gpu/drm/amd/display/dc/resource/dce80/dce80_resource.c
> @@ -870,36 +870,6 @@ static void dce80_resource_destruct(struct 
> dce110_resource_pool *pool)
>         }
>  }
>
> -static bool dce80_validate_surface_sets(
> -               struct dc_state *context)
> -{
> -       int i;
> -
> -       for (i = 0; i < context->stream_count; i++) {
> -               if (context->stream_status[i].plane_count == 0)
> -                       continue;
> -
> -               if (context->stream_status[i].plane_count > 1)
> -                       return false;
> -
> -               if (context->stream_status[i].plane_states[0]->format
> -                               >= SURFACE_PIXEL_FORMAT_VIDEO_BEGIN)
> -                       return false;
> -       }
> -
> -       return true;
> -}
> -
> -static enum dc_status dce80_validate_global(
> -               struct dc *dc,
> -               struct dc_state *context)
> -{
> -       if (!dce80_validate_surface_sets(context))
> -               return DC_FAIL_SURFACE_VALIDATE;
> -
> -       return DC_OK;
> -}
> -
>  static void dce80_destroy_resource_pool(struct resource_pool **pool)
>  {
>         struct dce110_resource_pool *dce110_pool = TO_DCE110_RES_POOL(*pool);
> @@ -916,7 +886,7 @@ static const struct resource_funcs dce80_res_pool_funcs = 
> {
>         .validate_bandwidth = dce100_validate_bandwidth,
>         .validate_plane = dce100_validate_plane,
>         .add_stream_to_ctx = dce100_add_stream_to_ctx,
> -       .validate_global = dce80_validate_global,
> +       .validate_global = dce100_validate_global,
>         .find_first_free_match_stream_enc_for_link = 
> dce100_find_first_free_match_stream_enc_for_link
>  };
>
> --
> 2.51.0
>

Reply via email to