xserver: Branch 'server-1.20-branch' - 2 commits
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Mon Jun 14 22:45:05 UTC 2021
hw/xfree86/drivers/modesetting/drmmode_display.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
New commits:
commit d16f6403153596b62c555fb511881289f59f9e81
Author: Ville Syrjälä <ville.syrjala at linux.intel.com>
Date: Tue Sep 3 16:44:56 2019 +0300
modesetting: Fix possible_crtcs
Populate outout possible_crtcs as the union of possible_crtcs from
the encoders rather than the intersection. Otherwise we're easily left
with possible_crtcs==0 when all the possible encoders have
non-overlapping possible_crtcs.
No idea what the magic 0x7f is about, but keep it around in case
it matters.
Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
(cherry picked from commit 0e4bd71d02d09c320e76280ae8f14df169387507)
diff --git a/hw/xfree86/drivers/modesetting/drmmode_display.c b/hw/xfree86/drivers/modesetting/drmmode_display.c
index 360434ebd..6f5f8caf6 100644
--- a/hw/xfree86/drivers/modesetting/drmmode_display.c
+++ b/hw/xfree86/drivers/modesetting/drmmode_display.c
@@ -2997,9 +2997,9 @@ drmmode_output_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode, drmModeResPtr mode_r
output->driver_private = drmmode_output;
output->non_desktop = nonDesktop;
- output->possible_crtcs = 0x7f;
+ output->possible_crtcs = 0;
for (i = 0; i < koutput->count_encoders; i++) {
- output->possible_crtcs &= kencoders[i]->possible_crtcs >> crtcshift;
+ output->possible_crtcs |= (kencoders[i]->possible_crtcs >> crtcshift) & 0x7f;
}
/* work out the possible clones later */
output->possible_clones = 0;
commit f1e76731a02e77c73521134933e424a17df40a1c
Author: Ville Syrjälä <ville.syrjala at linux.intel.com>
Date: Tue Aug 20 17:46:09 2019 +0300
modesetting: Update props for dynamically added outputs
Dynamically added outputs should have their properties
properly updated as well. Otherwise we're left with an output
with many of its propeties not exposed.
Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
Reviewed-by: Michel Dänzer <michel at daenzer.net>
Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1143
(cherry picked from commit 0c5179c280a193a1dbbe29160906087f06eae6f2)
diff --git a/hw/xfree86/drivers/modesetting/drmmode_display.c b/hw/xfree86/drivers/modesetting/drmmode_display.c
index 88992f521..360434ebd 100644
--- a/hw/xfree86/drivers/modesetting/drmmode_display.c
+++ b/hw/xfree86/drivers/modesetting/drmmode_display.c
@@ -3021,8 +3021,14 @@ drmmode_output_init(ScrnInfoPtr pScrn, drmmode_ptr drmmode, drmModeResPtr mode_r
"DPMS");
}
- if (dynamic)
+ if (dynamic) {
output->randr_output = RROutputCreate(xf86ScrnToScreen(pScrn), output->name, strlen(output->name), output);
+ if (output->randr_output) {
+ drmmode_output_create_resources(output);
+ RRPostPendingProperties(output->randr_output);
+ }
+ }
+
return 1;
out_free_encoders:
More information about the xorg-commit
mailing list