xorg-x11-server/N_Disable-HW-Cursor-for-cirrus-and-mgag200-kernel-modules.patch
Stefan Dirsch c2276ffaed Accepting request 731423 from home:iznogood:branches:X11:XOrg
- Add U_xwayland-Separate-DamagePtr-into-separate-window-data.patch
  and U_xwayland-Allow-passing-a-fd.patch: Needed for gnome 3.34
  new and experimental xwayland on demand feature.
- Rebase patches with quilt.

OBS-URL: https://build.opensuse.org/request/show/731423
OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/xorg-x11-server?expand=0&rev=744
2019-09-18 12:48:07 +00:00

36 lines
1.4 KiB
Diff

From: Egbert Eich <eich@suse.de>
Date: Mon May 16 21:22:31 2016 +0200
Subject: [PATCH]Disable HW Cursor for cirrus and mgag200 kernel modules.
Patch-mainline: N/A
Git-commit: 265e92915c8182369a50c89f9ca0d36b9baab8b6
References: boo#980124
Signed-off-by: Egbert Eich <eich@suse.com>
Signed-off-by: Egbert Eich <eich@suse.de>
---
hw/xfree86/drivers/modesetting/driver.c | 11 +++++++++++
1 file changed, 11 insertions(+)
Index: xorg-server-1.20.5/hw/xfree86/drivers/modesetting/driver.c
===================================================================
--- xorg-server-1.20.5.orig/hw/xfree86/drivers/modesetting/driver.c
+++ xorg-server-1.20.5/hw/xfree86/drivers/modesetting/driver.c
@@ -980,6 +980,17 @@ PreInit(ScrnInfoPtr pScrn, int flags)
if (xf86ReturnOptValBool(ms->drmmode.Options, OPTION_SW_CURSOR, FALSE)) {
ms->drmmode.sw_cursor = TRUE;
+ } else {
+ /* hw cursor still considered broken on cirrus */
+ drmVersionPtr drm_version = drmGetVersion(ms->fd);
+ if (drm_version) {
+ if (strncmp("cirrus", drm_version->name,
+ min(7,drm_version->name_len)) == 0 ||
+ strncmp("mgag200", drm_version->name,
+ min(8,drm_version->name_len)) == 0)
+ ms->drmmode.sw_cursor = TRUE;
+ drmFreeVersion(drm_version);
+ }
}
ms->cursor_width = 64;