On Wed, Sep 24, 2025 at 12:24 PM Mario Limonciello
<mario.limoncie...@amd.com> wrote:
>
> [Why]
> When DC adds common modes it adds modes with a string to match what
> they are. Non-DC doesn't. This can be inconsistent when turning on/off
> DC support.
>
> [How]
> Add a name member to common_modes[] and copy it into the drm display
> mode.
>
> Cc: Timur Kristóf <timur.kris...@gmail.com>
> Signed-off-by: Mario Limonciello <mario.limoncie...@amd.com>

Series is:
Reviewed-by: Alex Deucher <alexander.deuc...@amd.com>

> ---
>  .../gpu/drm/amd/amdgpu/amdgpu_connectors.c    | 26 ++++++++++---------
>  1 file changed, 14 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
> index 8c085ed703dd..120d8017b6f4 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
> @@ -399,21 +399,22 @@ static void amdgpu_connector_add_common_modes(struct 
> drm_encoder *encoder,
>         struct drm_display_mode *native_mode = &amdgpu_encoder->native_mode;
>         int i;
>         int n;
> -       static const struct mode_size {
> +       struct mode_size {
> +               char name[DRM_DISPLAY_MODE_LEN];
>                 int w;
>                 int h;
>         } common_modes[] = {
> -               { 640,  480},
> -               { 800,  600},
> -               {1024,  768},
> -               {1280,  720},
> -               {1280,  800},
> -               {1280, 1024},
> -               {1440,  900},
> -               {1680, 1050},
> -               {1600, 1200},
> -               {1920, 1080},
> -               {1920, 1200}
> +               {  "640x480",  640,  480},
> +               {  "800x600",  800,  600},
> +               { "1024x768", 1024,  768},
> +               { "1280x720", 1280,  720},
> +               { "1280x800", 1280,  800},
> +               {"1280x1024", 1280, 1024},
> +               { "1440x900", 1440,  900},
> +               {"1680x1050", 1680, 1050},
> +               {"1600x1200", 1600, 1200},
> +               {"1920x1080", 1920, 1080},
> +               {"1920x1200", 1920, 1200}
>         };
>
>         n = ARRAY_SIZE(common_modes);
> @@ -435,6 +436,7 @@ static void amdgpu_connector_add_common_modes(struct 
> drm_encoder *encoder,
>                 mode = drm_cvt_mode(dev, common_modes[i].w, 
> common_modes[i].h, 60, false, false, false);
>                 if (!mode)
>                         return;
> +               strscpy(mode->name, common_modes[i].name, 
> DRM_DISPLAY_MODE_LEN);
>
>                 drm_mode_probed_add(connector, mode);
>         }
> --
> 2.51.0
>

Reply via email to