modesetting: Disable reverse prime offload mode for displays running on evdi,udl
This mode for displays running on evdi/udl as side effect of failed glamor_egl_init reverse_prime_offload_mode was initialized to FALSE After Mesa upgrade to 21.0.0 GL_RENDERER is not llvmpipe that results in successful glamor_egl_init and reverse_prime_offload_mode enabled. This commit is explicitly disabling reverse_prime_offload_mode for evdi and udl drivers Signed-off-by: Łukasz Spintzyk <lukasz.spintzyk@synaptics.com>
This commit is contained in:
parent
c468d34c72
commit
7e7c147105
|
@ -1934,18 +1934,30 @@ ScreenInit(ScreenPtr pScreen, int argc, char **argv)
|
|||
}
|
||||
|
||||
/* enable reverse prime if we are a GPU screen, and accelerated, and not
|
||||
* i915. i915 is happy scanning out from sysmem. */
|
||||
* i915, evdi or udl. i915 is happy scanning out from sysmem.
|
||||
* evdi and udl are virtual drivers scanning out from sysmem
|
||||
* backed dumb buffers.
|
||||
*/
|
||||
if (pScreen->isGPU) {
|
||||
drmVersionPtr version;
|
||||
|
||||
/* enable if we are an accelerated GPU screen */
|
||||
ms->drmmode.reverse_prime_offload_mode = TRUE;
|
||||
|
||||
/* disable if we detect i915 */
|
||||
if ((version = drmGetVersion(ms->drmmode.fd))) {
|
||||
if (!strncmp("i915", version->name, version->name_len)) {
|
||||
ms->drmmode.reverse_prime_offload_mode = FALSE;
|
||||
}
|
||||
if (!strncmp("evdi", version->name, version->name_len)) {
|
||||
ms->drmmode.reverse_prime_offload_mode = FALSE;
|
||||
}
|
||||
if (!strncmp("udl", version->name, version->name_len)) {
|
||||
ms->drmmode.reverse_prime_offload_mode = FALSE;
|
||||
}
|
||||
if (!ms->drmmode.reverse_prime_offload_mode) {
|
||||
xf86DrvMsg(pScrn->scrnIndex, X_INFO,
|
||||
"Disable reverse prime offload mode for %s.\n", version->name);
|
||||
}
|
||||
drmFreeVersion(version);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue