Re: [PATCH v1 23/35] drm/vc4: vec: Convert to the new TV mode property
From: Maxime Ripard <hidden>
Date: 2022-08-24 15:27:08
Also in:
dri-devel, linux-amlogic, linux-sunxi, lkml
From: Maxime Ripard <hidden>
Date: 2022-08-24 15:27:08
Also in:
dri-devel, linux-amlogic, linux-sunxi, lkml
Hi, On Sat, Aug 20, 2022 at 07:22:48PM +0200, Noralf Trønnes wrote:
Den 29.07.2022 18.35, skrev Maxime Ripard:quoted
Now that the core can deal fine with analog TV modes, let's convert the vc4 VEC driver to leverage those new features. We've added some backward compatibility to support the old TV mode property and translate it into the new TV norm property. Signed-off-by: Maxime Ripard <redacted>diff --git a/drivers/gpu/drm/vc4/vc4_vec.c b/drivers/gpu/drm/vc4/vc4_vec.cquoted
static int vc4_vec_connector_get_modes(struct drm_connector *connector) { - struct drm_connector_state *state = connector->state; struct drm_display_mode *mode; - mode = drm_mode_duplicate(connector->dev, - vc4_vec_tv_modes[state->tv.mode].mode); + mode = drm_mode_duplicate(connector->dev, &drm_mode_480i); + if (!mode) { + DRM_ERROR("Failed to create a new display mode\n"); + return -ENOMEM; + } + + drm_mode_probed_add(connector, mode); + + mode = drm_mode_duplicate(connector->dev, &drm_mode_576i);Maybe the mode that matches tv.norm should be marked as preferred so userspace knows which one to pick?
I'm not sure how realistic that would be. Doing this based on the driver / cmdline preference is going to be fairly easy, but then it's a property, it's going to be updated, and we probably don't want to mess around the mode flags based on new property values? Maxime