summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichel Dänzer <michel.daenzer@amd.com>2017-05-25 16:19:35 +0900
committerMichel Dänzer <michel.daenzer@amd.com>2017-06-05 18:18:53 +0900
commitd164c10850609c96fd46c8441efd40940b06dfe0 (patch)
tree76e9595009ea66b821fe570f2c965e3e5d6feb1b
parent87db150d8a572d8983a234663aaaab9cb8b6c98d (diff)
xfree86: Add Option "PreferCloneMode"
When the default behaviour was changed from clone mode to horizontal extended layout, a boolean ScrnInfoRec member preferClone was introduced to choose the old default behaviour. Option "PreferCloneMode" allows setting this preferClone member. Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--hw/xfree86/man/xorg.conf.man5
-rw-r--r--hw/xfree86/modes/xf86Crtc.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/hw/xfree86/man/xorg.conf.man b/hw/xfree86/man/xorg.conf.man
index 0c39062e6..ec8d07c65 100644
--- a/hw/xfree86/man/xorg.conf.man
+++ b/hw/xfree86/man/xorg.conf.man
@@ -1495,6 +1495,11 @@ option.
.BI "Option \*qModeDebug\*q \*q" boolean \*q
Enable printing of additional debugging information about modesetting to
the server log.
+.TP 7
+.BI "Option \*qPreferCloneMode\*q \*q" boolean \*q
+If enabled, bring up monitors of a screen in clone mode instead of horizontal
+extended layout by default. (Defaults to off; the video driver can change the
+default value, but this option can always override it)
.ig
.TP 7
This optional entry allows an IRQ number to be specified.
diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c
index 3f9857b4a..fa404d9d4 100644
--- a/hw/xfree86/modes/xf86Crtc.c
+++ b/hw/xfree86/modes/xf86Crtc.c
@@ -469,10 +469,12 @@ static OptionInfoRec xf86OutputOptions[] = {
enum {
OPTION_MODEDEBUG,
+ OPTION_PREFER_CLONEMODE,
};
static OptionInfoRec xf86DeviceOptions[] = {
{OPTION_MODEDEBUG, "ModeDebug", OPTV_BOOLEAN, {0}, FALSE},
+ {OPTION_PREFER_CLONEMODE, "PreferCloneMode", OPTV_BOOLEAN, {0}, FALSE},
{-1, NULL, OPTV_NONE, {0}, FALSE},
};
@@ -2134,6 +2136,8 @@ xf86TargetRightOf(ScrnInfoPtr scrn, xf86CrtcConfigPtr config,
Bool has_tile = FALSE;
uint32_t configured_outputs;
+ xf86GetOptValBool(config->options, OPTION_PREFER_CLONEMODE,
+ &scrn->preferClone);
if (scrn->preferClone)
return FALSE;