diff options
author | Martin Peres <martin.peres@linux.intel.com> | 2017-04-10 16:48:21 +0300 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2017-08-18 14:40:19 +0900 |
commit | 0472a605e0ec8fec1892bbc3a84698b7ef9c5296 (patch) | |
tree | 3910a4ac8dfd2c98a74845ded68a42abab82938f /configure.ac | |
parent | d822a0f47070374ad0c1a97b559bae27724dc52a (diff) |
modesetting: re-set the crtc's mode when link-status goes BAD
Despite all the careful planning of the kernel, a link may become
insufficient to handle the currently-set mode. At this point, the
kernel should mark this particular configuration as being broken
and potentially prune the mode before setting the offending connector's
link-status to BAD and send the userspace a hotplug event. This may
happen right after a modeset or later on.
Upon receiving a hot-plug event, we iterate through the connectors to
re-apply the currently-set mode on all the connectors that have a
link-status property set to BAD. The kernel may be able to get the
link to work by dropping to using a lower link bpp (with the same
display bpp). However, the modeset may fail if the kernel has pruned
the mode, so to make users aware of this problem a warning is outputed
in the logs to warn about having a potentially-black display.
This patch does not modify the current behaviour of always propagating
the events to the randr clients. This allows desktop environments to
re-probe the connectors and select a new resolution based on the new
(currated) mode list if a mode disapeared. This behaviour is expected in
order to pass the Display Port compliance tests.
(Ported from xserver commit bcee1b76aa0db8525b491485e90b8740763d7de6)
[ Michel: Bump libdrm dependency to >= 2.4.78 for
DRM_MODE_LINK_STATUS_BAD ]
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac index c9bc0a95..170f42ef 100644 --- a/configure.ac +++ b/configure.ac @@ -70,7 +70,7 @@ XORG_DRIVER_CHECK_EXT(XV, videoproto) XORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto) # Checks for libraries. -PKG_CHECK_MODULES(LIBDRM, [libdrm >= 2.4.60]) +PKG_CHECK_MODULES(LIBDRM, [libdrm >= 2.4.78]) PKG_CHECK_MODULES(LIBDRM_RADEON, [libdrm_radeon]) # Obtain compiler/linker options for the driver dependencies |