qxl: hook monitors_config updates into crtc, not encoder.
authorGerd Hoffmann <kraxel@redhat.com>
Fri, 20 Apr 2018 07:19:03 +0000 (09:19 +0200)
committerGerd Hoffmann <kraxel@redhat.com>
Fri, 27 Apr 2018 06:58:05 +0000 (08:58 +0200)
commita6d3c4d79822658e7f2f9c4b73237fe2b057ed67
tree515f73bff6567d208e3825392bea3e1dac2c157d
parent998010bfae6ebaac68af905bef9f6e276f775254
qxl: hook monitors_config updates into crtc, not encoder.

The encoder callbacks are only called in case the video mode changes.
So any layout changes without mode changes will go unnoticed.

Add qxl_crtc_update_monitors_config(), based on the old
qxl_write_monitors_config_for_encoder() function.  Hook it into the
enable, disable and flush atomic crtc callbacks.  Remove monitors_config
updates from all other places.

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1544322
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20180420071904.24276-4-kraxel@redhat.com
drivers/gpu/drm/qxl/qxl_cmd.c
drivers/gpu/drm/qxl/qxl_display.c