[PATCH v6 14/23] drm/modes: Properly generate a drm_display_mode from a named mode
Mateusz Kwiatkowski
kfyatek at gmail.com
Wed Oct 26 21:25:20 UTC 2022
Hi Maxime,
> +static struct drm_display_mode *drm_named_mode(struct drm_device *dev,
> + struct drm_cmdline_mode *cmd)
> +{
> + struct drm_display_mode *mode;
> + unsigned int i;
> +
> + for (i = 0; i < ARRAY_SIZE(drm_named_modes); i++) {
> + const struct drm_named_mode *named_mode = &drm_named_modes[i];
> +
> + if (strcmp(cmd->name, named_mode->name))
> + continue;
> +
> + if (!named_mode->tv_mode)
> + continue;
> +
> + mode = drm_analog_tv_mode(dev,
> + named_mode->tv_mode,
> + named_mode->pixel_clock_khz * 1000,
> + named_mode->xres,
> + named_mode->yres,
> + named_mode->flags & DRM_MODE_FLAG_INTERLACE);
> + if (!mode)
> + return NULL;
> +
> + return mode;
> + }
> +
> + return NULL;
> +}
> +
You didn't add tv_mode_specified to struct drm_named_mode, and left the
if (!named_mode->tv_mode) condition here. This will break on NTSC.
Best regards,
Mateusz Kwiatkowski
More information about the dri-devel
mailing list