[Nouveau] [PATCH 1/2] drm/nouveau/disp/nv50-: force scaler for any non-default LVDS/eDP modes
Ben Skeggs
skeggsb at gmail.com
Mon May 27 06:24:45 UTC 2019
On Sun, 26 May 2019 at 08:41, Ilia Mirkin <imirkin at alum.mit.edu> wrote:
>
> Higher layers tend to add a lot of modes not actually in the EDID, such
> as the standard DMT modes. Changing this would be extremely intrusive to
> everyone, so just force the scaler more often. There are no practical
> cases we're aware of where a LVDS/eDP panel has multiple resolutions
> exposed, and i915 already does it this way.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110660
> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
Thanks Ilia, grabbed both patches.
> ---
>
> Untested for now, hoping that the bugzilla filer will test it out. Seems
> obvious though.
>
> drivers/gpu/drm/nouveau/dispnv50/disp.c | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/nouveau/dispnv50/disp.c b/drivers/gpu/drm/nouveau/dispnv50/disp.c
> index 134701a837c8..ef8d7a71564a 100644
> --- a/drivers/gpu/drm/nouveau/dispnv50/disp.c
> +++ b/drivers/gpu/drm/nouveau/dispnv50/disp.c
> @@ -322,8 +322,13 @@ nv50_outp_atomic_check_view(struct drm_encoder *encoder,
> switch (connector->connector_type) {
> case DRM_MODE_CONNECTOR_LVDS:
> case DRM_MODE_CONNECTOR_eDP:
> - /* Force use of scaler for non-EDID modes. */
> - if (adjusted_mode->type & DRM_MODE_TYPE_DRIVER)
> + /* Don't force scaler for EDID modes with
> + * same size as the native one (e.g. different
> + * refresh rate)
> + */
> + if (adjusted_mode->hdisplay == native_mode->hdisplay &&
> + adjusted_mode->vdisplay == native_mode->vdisplay &&
> + adjusted_mode->type & DRM_MODE_TYPE_DRIVER)
> break;
> mode = native_mode;
> asyc->scaler.full = true;
> --
> 2.21.0
>
> _______________________________________________
> Nouveau mailing list
> Nouveau at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/nouveau
More information about the Nouveau
mailing list