xfree86: don't enable anything in xf86InitialConfiguration for GPU screens
There's no point in turning on outputs connected to GPU screens during initial configuration. Not only does this cause them to just display black, it also confuses clients when these screens are attached to a master screen and RandR reports that the outputs are already on. Also, don't print the warning about no outputs being found on GPU screens, since that's expected. Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Reviewed-by: Dave Airlie <airlied@gmail.com>
This commit is contained in:
parent
f2fd8ec372
commit
dbfeaf7062
|
@ -1997,6 +1997,14 @@ xf86CollectEnabledOutputs(ScrnInfoPtr scrn, xf86CrtcConfigPtr config,
|
||||||
Bool any_enabled = FALSE;
|
Bool any_enabled = FALSE;
|
||||||
int o;
|
int o;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Don't bother enabling outputs on GPU screens: a client needs to attach
|
||||||
|
* it to a source provider before setting a mode that scans out a shared
|
||||||
|
* pixmap.
|
||||||
|
*/
|
||||||
|
if (scrn->is_gpu)
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
for (o = 0; o < config->num_output; o++)
|
for (o = 0; o < config->num_output; o++)
|
||||||
any_enabled |= enabled[o] = xf86OutputEnabled(config->output[o], TRUE);
|
any_enabled |= enabled[o] = xf86OutputEnabled(config->output[o], TRUE);
|
||||||
|
|
||||||
|
@ -2466,8 +2474,10 @@ xf86InitialConfiguration(ScrnInfoPtr scrn, Bool canGrow)
|
||||||
|
|
||||||
ret = xf86CollectEnabledOutputs(scrn, config, enabled);
|
ret = xf86CollectEnabledOutputs(scrn, config, enabled);
|
||||||
if (ret == FALSE && canGrow) {
|
if (ret == FALSE && canGrow) {
|
||||||
|
if (!scrn->is_gpu)
|
||||||
xf86DrvMsg(i, X_WARNING,
|
xf86DrvMsg(i, X_WARNING,
|
||||||
"Unable to find connected outputs - setting %dx%d initial framebuffer\n",
|
"Unable to find connected outputs - setting %dx%d "
|
||||||
|
"initial framebuffer\n",
|
||||||
NO_OUTPUT_DEFAULT_WIDTH, NO_OUTPUT_DEFAULT_HEIGHT);
|
NO_OUTPUT_DEFAULT_WIDTH, NO_OUTPUT_DEFAULT_HEIGHT);
|
||||||
have_outputs = FALSE;
|
have_outputs = FALSE;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue