Den 26.10.2022 17.33, skrev max...@cerno.tech:
> We'll need to get the pixel clock to generate proper display modes for
> all the current named modes. Let's add it to struct drm_cmdline_mode and
> fill it when parsing the named mode.
> 
> Signed-off-by: Maxime Ripard <max...@cerno.tech>
> ---

I would just squash this with the previous patch, either way:

Reviewed-by: Noralf Trønnes <nor...@tronnes.org>

>  drivers/gpu/drm/drm_modes.c | 9 ++++++---
>  include/drm/drm_connector.h | 7 +++++++
>  2 files changed, 13 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c
> index acee23e1a8b7..c826f9583a1d 100644
> --- a/drivers/gpu/drm/drm_modes.c
> +++ b/drivers/gpu/drm/drm_modes.c
> @@ -2226,22 +2226,24 @@ static int drm_mode_parse_cmdline_options(const char 
> *str,
>  
>  struct drm_named_mode {
>       const char *name;
> +     unsigned int pixel_clock_khz;
>       unsigned int xres;
>       unsigned int yres;
>       unsigned int flags;
>  };
>  
> -#define NAMED_MODE(_name, _x, _y, _flags)            \
> +#define NAMED_MODE(_name, _pclk, _x, _y, _flags)     \
>       {                                               \
>               .name = _name,                          \
> +             .pixel_clock_khz = _pclk,               \
>               .xres = _x,                             \
>               .yres = _y,                             \
>               .flags = _flags,                        \
>       }
>  
>  static const struct drm_named_mode drm_named_modes[] = {
> -     NAMED_MODE("NTSC", 720, 480, DRM_MODE_FLAG_INTERLACE),
> -     NAMED_MODE("PAL", 720, 576, DRM_MODE_FLAG_INTERLACE),
> +     NAMED_MODE("NTSC", 13500, 720, 480, DRM_MODE_FLAG_INTERLACE),
> +     NAMED_MODE("PAL", 13500, 720, 576, DRM_MODE_FLAG_INTERLACE),
>  };
>  
>  static int drm_mode_parse_cmdline_named_mode(const char *name,
> @@ -2282,6 +2284,7 @@ static int drm_mode_parse_cmdline_named_mode(const char 
> *name,
>                       continue;
>  
>               strcpy(cmdline_mode->name, mode->name);
> +             cmdline_mode->pixel_clock = mode->pixel_clock_khz;
>               cmdline_mode->xres = mode->xres;
>               cmdline_mode->yres = mode->yres;
>               cmdline_mode->interlace = !!(mode->flags & 
> DRM_MODE_FLAG_INTERLACE);
> diff --git a/include/drm/drm_connector.h b/include/drm/drm_connector.h
> index 96b2e4e12334..5c5e67de2296 100644
> --- a/include/drm/drm_connector.h
> +++ b/include/drm/drm_connector.h
> @@ -1273,6 +1273,13 @@ struct drm_cmdline_mode {
>        */
>       bool bpp_specified;
>  
> +     /**
> +      * @pixel_clock:
> +      *
> +      * Pixel Clock in kHz. Optional.
> +      */
> +     unsigned int pixel_clock;
> +
>       /**
>        * @xres:
>        *
> 

Reply via email to