summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 3ba7c3f)
raw | patch | inline | side by side (parent: 3ba7c3f)
author | Tomi Valkeinen <tomi.valkeinen@ti.com> | |
Wed, 11 Nov 2015 18:50:55 +0000 (20:50 +0200) | ||
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | |
Wed, 11 Nov 2015 18:50:55 +0000 (20:50 +0200) |
If libdrm was missing DRM_CLIENT_CAP_ATOMIC, but the driver still
supported atomic modesetting, m_has_atomic was set to true. The end
result was that test apps thought they can use atomic modesetting, but
it wasn't functional in the libkmsxx.
supported atomic modesetting, m_has_atomic was set to true. The end
result was that test apps thought they can use atomic modesetting, but
it wasn't functional in the libkmsxx.
libkms++/card.cpp | patch | blob | history |
diff --git a/libkms++/card.cpp b/libkms++/card.cpp
index 2bb6673b494901614e72c89c75b92dc5944d0be5..a0e395eb19acf40eb5ff8f76073d37444cfdd8b2 100644 (file)
--- a/libkms++/card.cpp
+++ b/libkms++/card.cpp
#include "kms++.h"
-#ifndef DRM_CLIENT_CAP_ATOMIC
-#define DRM_CLIENT_CAP_ATOMIC 3
-#endif
-
using namespace std;
namespace kms
m_has_universal_planes = false;
}
+#ifdef DRM_CLIENT_CAP_ATOMIC
if (getenv("LIBKMSXX_DISABLE_ATOMIC") == 0) {
r = drmSetClientCap(m_fd, DRM_CLIENT_CAP_ATOMIC, 1);
m_has_atomic = r == 0;
} else {
m_has_atomic = false;
}
+#else
+ m_has_atomic = false;
+#endif
uint64_t has_dumb;
r = drmGetCap(fd, DRM_CAP_DUMB_BUFFER, &has_dumb);