summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/platformsupport/kmsconvenience/qkmsdevice.cpp1
-rw-r--r--src/platformsupport/kmsconvenience/qkmsdevice_p.h6
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/CMakeLists.txt40
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms-plugin.pro17
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms.pro33
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms_gbm_support.pro25
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor.cpp6
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor_p.h (renamed from src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor.h)11
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.cpp15
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice_p.h (renamed from src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.h)18
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp10
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration_p.h (renamed from src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.h)15
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmmain.cpp2
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.cpp6
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen_p.h (renamed from src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.h)21
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp6
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow_p.h (renamed from src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.h)13
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevice.h2
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.h2
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevicescreen.h2
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/.prev_CMakeLists.txt11
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/CMakeLists.txt11
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/eglfs_kms_support.pro12
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice.cpp4
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice_p.h (renamed from src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice.h)13
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmseventreader.cpp4
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmseventreader_p.h (renamed from src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmseventreader.h)11
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmshelpers_p.h (renamed from src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmshelpers.h)11
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.cpp21
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration_p.h (renamed from src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.h)14
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen.cpp4
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen_p.h (renamed from src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen.h)11
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2device.h2
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2integration.h2
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2screen.cpp2
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2screen.h2
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qlinuxmediadevice.cpp2
-rw-r--r--src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.cpp2
-rw-r--r--src/plugins/platforms/linuxfb/qlinuxfbdrmscreen.cpp1
-rw-r--r--sync.profile2
40 files changed, 280 insertions, 113 deletions
diff --git a/src/platformsupport/kmsconvenience/qkmsdevice.cpp b/src/platformsupport/kmsconvenience/qkmsdevice.cpp
index 1ec9c869d7..4206b20a83 100644
--- a/src/platformsupport/kmsconvenience/qkmsdevice.cpp
+++ b/src/platformsupport/kmsconvenience/qkmsdevice.cpp
@@ -1033,7 +1033,6 @@ QKmsScreenConfig::QKmsScreenConfig()
, m_pbuffers(false)
, m_virtualDesktopLayout(VirtualDesktopLayoutHorizontal)
{
- loadConfig();
}
void QKmsScreenConfig::loadConfig()
diff --git a/src/platformsupport/kmsconvenience/qkmsdevice_p.h b/src/platformsupport/kmsconvenience/qkmsdevice_p.h
index b7233b29f9..edc7e61e01 100644
--- a/src/platformsupport/kmsconvenience/qkmsdevice_p.h
+++ b/src/platformsupport/kmsconvenience/qkmsdevice_p.h
@@ -111,6 +111,7 @@ public:
};
QKmsScreenConfig();
+ virtual ~QKmsScreenConfig() {}
QString devicePath() const { return m_devicePath; }
@@ -122,10 +123,9 @@ public:
VirtualDesktopLayout virtualDesktopLayout() const { return m_virtualDesktopLayout; }
QMap<QString, QVariantMap> outputSettings() const { return m_outputSettings; }
+ virtual void loadConfig();
-private:
- void loadConfig();
-
+protected:
QString m_devicePath;
bool m_headless;
QSize m_headlessSize;
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/CMakeLists.txt b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/CMakeLists.txt
index 3f27a9c397..a790a01c62 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/CMakeLists.txt
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/CMakeLists.txt
@@ -1,6 +1,35 @@
# Generated from eglfs_kms.pro.
#####################################################################
+## EglFsKmsGbmSupport Module:
+#####################################################################
+
+qt_internal_add_module(EglFsKmsGbmSupport
+ INTERNAL_MODULE
+ SOURCES
+ qeglfskmsgbmcursor.cpp qeglfskmsgbmcursor_p.h
+ qeglfskmsgbmdevice.cpp qeglfskmsgbmdevice_p.h
+ qeglfskmsgbmintegration.cpp qeglfskmsgbmintegration_p.h
+ qeglfskmsgbmscreen.cpp qeglfskmsgbmscreen_p.h
+ qeglfskmsgbmwindow.cpp qeglfskmsgbmwindow_p.h
+ DEFINES
+ QT_EGL_NO_X11
+ INCLUDE_DIRECTORIES
+ ../../api
+ ../eglfs_kms_support
+ PUBLIC_LIBRARIES
+ Libdrm::Libdrm
+ Qt::Core
+ Qt::CorePrivate
+ Qt::EglFSDeviceIntegrationPrivate
+ Qt::EglFsKmsSupportPrivate
+ Qt::Gui
+ Qt::GuiPrivate
+ Qt::KmsSupportPrivate
+ gbm::gbm
+)
+
+#####################################################################
## QEglFSKmsGbmIntegrationPlugin Plugin:
#####################################################################
@@ -8,22 +37,15 @@ qt_internal_add_plugin(QEglFSKmsGbmIntegrationPlugin
OUTPUT_NAME qeglfs-kms-integration
TYPE egldeviceintegrations
SOURCES
- qeglfskmsgbmcursor.cpp qeglfskmsgbmcursor.h
- qeglfskmsgbmdevice.cpp qeglfskmsgbmdevice.h
- qeglfskmsgbmintegration.cpp qeglfskmsgbmintegration.h
qeglfskmsgbmmain.cpp
- qeglfskmsgbmscreen.cpp qeglfskmsgbmscreen.h
- qeglfskmsgbmwindow.cpp qeglfskmsgbmwindow.h
DEFINES
QT_EGL_NO_X11
- INCLUDE_DIRECTORIES
- ../../api
- ../eglfs_kms_support
PUBLIC_LIBRARIES
Libdrm::Libdrm
Qt::Core
Qt::CorePrivate
Qt::EglFSDeviceIntegrationPrivate
+ Qt::EglFsKmsGbmSupportPrivate
Qt::EglFsKmsSupportPrivate
Qt::Gui
Qt::GuiPrivate
@@ -31,5 +53,5 @@ qt_internal_add_plugin(QEglFSKmsGbmIntegrationPlugin
gbm::gbm
)
-#### Keys ignored in scope 1:.:.:eglfs_kms.pro:<TRUE>:
+#### Keys ignored in scope 1:.:.:eglfs_kms-plugin.pro:<TRUE>:
# OTHER_FILES = "$$PWD/eglfs_kms.json"
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms-plugin.pro b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms-plugin.pro
new file mode 100644
index 0000000000..37c0e09c74
--- /dev/null
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms-plugin.pro
@@ -0,0 +1,17 @@
+TARGET = qeglfs-kms-integration
+
+PLUGIN_TYPE = egldeviceintegrations
+PLUGIN_CLASS_NAME = QEglFSKmsGbmIntegrationPlugin
+load(qt_plugin)
+
+QT += core-private gui-private eglfsdeviceintegration-private eglfs_kms_support-private kms_support-private eglfs_kms_gbm_support-private
+
+# Avoid X11 header collision, use generic EGL native types
+DEFINES += QT_EGL_NO_X11
+
+QMAKE_USE += gbm drm
+CONFIG += egl
+
+SOURCES += $$PWD/qeglfskmsgbmmain.cpp
+
+OTHER_FILES += $$PWD/eglfs_kms.json
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms.pro b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms.pro
index caf723155a..23063c052e 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms.pro
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms.pro
@@ -1,30 +1,5 @@
-TARGET = qeglfs-kms-integration
+TEMPLATE = subdirs
+CONFIG += ordered
-PLUGIN_TYPE = egldeviceintegrations
-PLUGIN_CLASS_NAME = QEglFSKmsGbmIntegrationPlugin
-load(qt_plugin)
-
-QT += core-private gui-private eglfsdeviceintegration-private eglfs_kms_support-private kms_support-private
-
-INCLUDEPATH += $$PWD/../../api $$PWD/../eglfs_kms_support
-
-# Avoid X11 header collision, use generic EGL native types
-DEFINES += QT_EGL_NO_X11
-
-QMAKE_USE += gbm drm
-CONFIG += egl
-
-SOURCES += $$PWD/qeglfskmsgbmmain.cpp \
- $$PWD/qeglfskmsgbmintegration.cpp \
- $$PWD/qeglfskmsgbmdevice.cpp \
- $$PWD/qeglfskmsgbmscreen.cpp \
- $$PWD/qeglfskmsgbmcursor.cpp \
- $$PWD/qeglfskmsgbmwindow.cpp
-
-HEADERS += $$PWD/qeglfskmsgbmintegration.h \
- $$PWD/qeglfskmsgbmdevice.h \
- $$PWD/qeglfskmsgbmscreen.h \
- $$PWD/qeglfskmsgbmcursor.h \
- $$PWD/qeglfskmsgbmwindow.h
-
-OTHER_FILES += $$PWD/eglfs_kms.json
+SUBDIRS += eglfs_kms_gbm_support.pro
+SUBDIRS += eglfs_kms-plugin.pro
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms_gbm_support.pro b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms_gbm_support.pro
new file mode 100644
index 0000000000..7fde6f81d7
--- /dev/null
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/eglfs_kms_gbm_support.pro
@@ -0,0 +1,25 @@
+TARGET = QtEglFsKmsGbmSupport
+CONFIG += internal_module
+load(qt_module)
+
+QT += core-private gui-private eglfsdeviceintegration-private eglfs_kms_support-private kms_support-private
+
+INCLUDEPATH += $$PWD/../../api $$PWD/../eglfs_kms_support
+
+# Avoid X11 header collision, use generic EGL native types
+DEFINES += QT_EGL_NO_X11
+
+QMAKE_USE += gbm drm
+CONFIG += egl
+
+SOURCES += $$PWD/qeglfskmsgbmintegration.cpp \
+ $$PWD/qeglfskmsgbmdevice.cpp \
+ $$PWD/qeglfskmsgbmscreen.cpp \
+ $$PWD/qeglfskmsgbmcursor.cpp \
+ $$PWD/qeglfskmsgbmwindow.cpp
+
+HEADERS += $$PWD/qeglfskmsgbmintegration_p.h \
+ $$PWD/qeglfskmsgbmdevice_p.h \
+ $$PWD/qeglfskmsgbmscreen_p.h \
+ $$PWD/qeglfskmsgbmcursor_p.h \
+ $$PWD/qeglfskmsgbmwindow_p.h
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor.cpp
index c802b8e112..b6d2a17079 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor.cpp
@@ -39,9 +39,9 @@
**
****************************************************************************/
-#include "qeglfskmsgbmcursor.h"
-#include "qeglfskmsgbmscreen.h"
-#include "qeglfskmsgbmdevice.h"
+#include "qeglfskmsgbmcursor_p.h"
+#include "qeglfskmsgbmscreen_p.h"
+#include "qeglfskmsgbmdevice_p.h"
#include <QtCore/QFile>
#include <QtCore/QJsonDocument>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor_p.h
index 55420cef62..0d4a472d79 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmcursor_p.h
@@ -40,6 +40,17 @@
#ifndef QEGLFSKMSGBMCURSOR_H
#define QEGLFSKMSGBMCURSOR_H
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
#include <qpa/qplatformcursor.h>
#include <QtCore/QList>
#include <QtGui/QImage>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.cpp
index d32e36b04d..c561b2072e 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.cpp
@@ -39,8 +39,8 @@
**
****************************************************************************/
-#include "qeglfskmsgbmdevice.h"
-#include "qeglfskmsgbmscreen.h"
+#include "qeglfskmsgbmdevice_p.h"
+#include "qeglfskmsgbmscreen_p.h"
#include "qeglfsintegration_p.h"
@@ -131,14 +131,19 @@ void QEglFSKmsGbmDevice::destroyGlobalCursor()
}
}
-QPlatformScreen *QEglFSKmsGbmDevice::createScreen(const QKmsOutput &output)
+void QEglFSKmsGbmDevice::createGlobalCursor(QEglFSKmsGbmScreen *screen)
{
- QEglFSKmsGbmScreen *screen = new QEglFSKmsGbmScreen(this, output, false);
-
if (!m_globalCursor && screenConfig()->hwCursor()) {
qCDebug(qLcEglfsKmsDebug, "Creating new global GBM mouse cursor");
m_globalCursor = new QEglFSKmsGbmCursor(screen);
}
+}
+
+QPlatformScreen *QEglFSKmsGbmDevice::createScreen(const QKmsOutput &output)
+{
+ QEglFSKmsGbmScreen *screen = new QEglFSKmsGbmScreen(this, output, false);
+
+ createGlobalCursor(screen);
return screen;
}
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice_p.h
index 1964b30c5e..5a9cdb1565 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmdevice_p.h
@@ -42,8 +42,19 @@
#ifndef QEGLFSKMSGBMDEVICE_H
#define QEGLFSKMSGBMDEVICE_H
-#include "qeglfskmsgbmcursor.h"
-#include <qeglfskmsdevice.h>
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
+#include "qeglfskmsgbmcursor_p.h"
+#include <qeglfskmsdevice_p.h>
#include <gbm.h>
@@ -51,7 +62,7 @@ QT_BEGIN_NAMESPACE
class QEglFSKmsScreen;
-class QEglFSKmsGbmDevice: public QEglFSKmsDevice
+class Q_EGLFS_EXPORT QEglFSKmsGbmDevice: public QEglFSKmsDevice
{
public:
QEglFSKmsGbmDevice(QKmsScreenConfig *screenConfig, const QString &path);
@@ -64,6 +75,7 @@ public:
QPlatformCursor *globalCursor() const;
void destroyGlobalCursor();
+ void createGlobalCursor(QEglFSKmsGbmScreen *screen);
QPlatformScreen *createScreen(const QKmsOutput &output) override;
QPlatformScreen *createHeadlessScreen() override;
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp
index caa1187b40..791512237e 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.cpp
@@ -39,11 +39,11 @@
**
****************************************************************************/
-#include "qeglfskmsgbmintegration.h"
-#include "qeglfskmsgbmdevice.h"
-#include "qeglfskmsgbmscreen.h"
-#include "qeglfskmsgbmcursor.h"
-#include "qeglfskmsgbmwindow.h"
+#include "qeglfskmsgbmintegration_p.h"
+#include "qeglfskmsgbmdevice_p.h"
+#include "qeglfskmsgbmscreen_p.h"
+#include "qeglfskmsgbmcursor_p.h"
+#include "qeglfskmsgbmwindow_p.h"
#include "private/qeglfscursor_p.h"
#include <QtCore/QLoggingCategory>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration_p.h
index 71f232abf9..823e5f2c09 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmintegration_p.h
@@ -42,7 +42,18 @@
#ifndef QEGLFSKMSGBMINTEGRATION_H
#define QEGLFSKMSGBMINTEGRATION_H
-#include "qeglfskmsintegration.h"
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
+#include <private/qeglfskmsintegration_p.h>
#include <QtCore/QMap>
#include <QtCore/QVariant>
@@ -50,7 +61,7 @@ QT_BEGIN_NAMESPACE
class QEglFSKmsDevice;
-class QEglFSKmsGbmIntegration : public QEglFSKmsIntegration
+class Q_EGLFS_EXPORT QEglFSKmsGbmIntegration : public QEglFSKmsIntegration
{
public:
QEglFSKmsGbmIntegration();
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmmain.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmmain.cpp
index 945c8b4255..65203d93c7 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmmain.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmmain.cpp
@@ -39,7 +39,7 @@
****************************************************************************/
#include "private/qeglfsdeviceintegration_p.h"
-#include "qeglfskmsgbmintegration.h"
+#include "qeglfskmsgbmintegration_p.h"
QT_BEGIN_NAMESPACE
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.cpp
index 8330a97f94..69a8aede56 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.cpp
@@ -39,9 +39,9 @@
**
****************************************************************************/
-#include "qeglfskmsgbmscreen.h"
-#include "qeglfskmsgbmdevice.h"
-#include "qeglfskmsgbmcursor.h"
+#include "qeglfskmsgbmscreen_p.h"
+#include "qeglfskmsgbmdevice_p.h"
+#include "qeglfskmsgbmcursor_p.h"
#include "qeglfsintegration_p.h"
#include <QtCore/QLoggingCategory>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen_p.h
index 2be1630e19..72986b45c8 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen_p.h
@@ -42,7 +42,18 @@
#ifndef QEGLFSKMSGBMSCREEN_H
#define QEGLFSKMSGBMSCREEN_H
-#include "qeglfskmsscreen.h"
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
+#include "qeglfskmsscreen_p.h"
#include <QMutex>
#include <QWaitCondition>
@@ -52,7 +63,7 @@ QT_BEGIN_NAMESPACE
class QEglFSKmsGbmCursor;
-class QEglFSKmsGbmScreen : public QEglFSKmsScreen
+class Q_EGLFS_EXPORT QEglFSKmsGbmScreen : public QEglFSKmsScreen
{
public:
QEglFSKmsGbmScreen(QEglFSKmsDevice *device, const QKmsOutput &output, bool headless);
@@ -68,13 +79,13 @@ public:
void waitForFlip() override;
- void flip();
+ virtual void flip();
+ virtual void updateFlipStatus();
-private:
+protected:
void flipFinished();
void ensureModeSet(uint32_t fb);
void cloneDestFlipFinished(QEglFSKmsGbmScreen *cloneDestScreen);
- void updateFlipStatus();
gbm_surface *m_gbm_surface;
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp
index b5f34ae200..426fb8f4e9 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp
@@ -37,9 +37,9 @@
**
****************************************************************************/
-#include "qeglfskmsgbmwindow.h"
-#include "qeglfskmsgbmintegration.h"
-#include "qeglfskmsgbmscreen.h"
+#include "qeglfskmsgbmwindow_p.h"
+#include "qeglfskmsgbmintegration_p.h"
+#include "qeglfskmsgbmscreen_p.h"
#include <QtGui/private/qeglconvenience_p.h>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow_p.h
index ee4b7978f1..103361b60b 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow_p.h
@@ -42,13 +42,24 @@
#ifndef QEGLFSKMSGBMWINDOW_H
#define QEGLFSKMSGBMWINDOW_H
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
#include "private/qeglfswindow_p.h"
QT_BEGIN_NAMESPACE
class QEglFSKmsGbmIntegration;
-class QEglFSKmsGbmWindow : public QEglFSWindow
+class Q_EGLFS_EXPORT QEglFSKmsGbmWindow : public QEglFSWindow
{
public:
QEglFSKmsGbmWindow(QWindow *w, const QEglFSKmsGbmIntegration *integration)
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevice.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevice.h
index 8d469879ab..aa321e0982 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevice.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevice.h
@@ -40,7 +40,7 @@
#ifndef QEGLFSKMSEGLDEVICE_H
#define QEGLFSKMSEGLDEVICE_H
-#include <qeglfskmsdevice.h>
+#include <qeglfskmsdevice_p.h>
QT_BEGIN_NAMESPACE
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.h
index 8fbbe56412..6299c3259a 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.h
@@ -41,7 +41,7 @@
#ifndef QEGLFSKMSEGLDEVICEINTEGRATION_H
#define QEGLFSKMSEGLDEVICEINTEGRATION_H
-#include <qeglfskmsintegration.h>
+#include <qeglfskmsintegration_p.h>
#include <xf86drm.h>
#include <xf86drmMode.h>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevicescreen.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevicescreen.h
index 961398ba3e..7cede5afbe 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevicescreen.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevicescreen.h
@@ -40,7 +40,7 @@
#ifndef QEGLFSKMSEGLDEVICESCREEN_H
#define QEGLFSKMSEGLDEVICESCREEN_H
-#include <qeglfskmsscreen.h>
+#include <qeglfskmsscreen_p.h>
QT_BEGIN_NAMESPACE
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/.prev_CMakeLists.txt b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/.prev_CMakeLists.txt
index 3d600c52f1..a46d1675c2 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/.prev_CMakeLists.txt
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/.prev_CMakeLists.txt
@@ -6,13 +6,12 @@
qt_internal_add_module(EglFsKmsSupport
INTERNAL_MODULE
- NO_MODULE_HEADERS
SOURCES
- qeglfskmsdevice.cpp qeglfskmsdevice.h
- qeglfskmseventreader.cpp qeglfskmseventreader.h
- qeglfskmshelpers.h
- qeglfskmsintegration.cpp qeglfskmsintegration.h
- qeglfskmsscreen.cpp qeglfskmsscreen.h
+ qeglfskmsdevice.cpp qeglfskmsdevice_p.h
+ qeglfskmseventreader.cpp qeglfskmseventreader_p.h
+ qeglfskmshelpers_p.h
+ qeglfskmsintegration.cpp qeglfskmsintegration_p.h
+ qeglfskmsscreen.cpp qeglfskmsscreen_p.h
DEFINES
QT_EGL_NO_X11
INCLUDE_DIRECTORIES
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/CMakeLists.txt b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/CMakeLists.txt
index d71f1407f8..641ef48612 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/CMakeLists.txt
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/CMakeLists.txt
@@ -6,13 +6,12 @@
qt_internal_add_module(EglFsKmsSupport
INTERNAL_MODULE
- NO_MODULE_HEADERS
SOURCES
- qeglfskmsdevice.cpp qeglfskmsdevice.h
- qeglfskmseventreader.cpp qeglfskmseventreader.h
- qeglfskmshelpers.h
- qeglfskmsintegration.cpp qeglfskmsintegration.h
- qeglfskmsscreen.cpp qeglfskmsscreen.h
+ qeglfskmsdevice.cpp qeglfskmsdevice_p.h
+ qeglfskmseventreader.cpp qeglfskmseventreader_p.h
+ qeglfskmshelpers_p.h
+ qeglfskmsintegration.cpp qeglfskmsintegration_p.h
+ qeglfskmsscreen.cpp qeglfskmsscreen_p.h
DEFINES
QT_EGL_NO_X11
INCLUDE_DIRECTORIES
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/eglfs_kms_support.pro b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/eglfs_kms_support.pro
index 42807b8862..cdc2e24f33 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/eglfs_kms_support.pro
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/eglfs_kms_support.pro
@@ -1,5 +1,5 @@
TARGET = QtEglFsKmsSupport
-CONFIG += no_module_headers internal_module
+CONFIG += internal_module
load(qt_module)
QT += core-private gui-private eglfsdeviceintegration-private kms_support-private
@@ -17,8 +17,8 @@ SOURCES += $$PWD/qeglfskmsintegration.cpp \
$$PWD/qeglfskmsscreen.cpp \
$$PWD/qeglfskmseventreader.cpp
-HEADERS += $$PWD/qeglfskmsintegration.h \
- $$PWD/qeglfskmsdevice.h \
- $$PWD/qeglfskmsscreen.h \
- $$PWD/qeglfskmshelpers.h \
- $$PWD/qeglfskmseventreader.h
+HEADERS += $$PWD/qeglfskmsintegration_p.h \
+ $$PWD/qeglfskmsdevice_p.h \
+ $$PWD/qeglfskmsscreen_p.h \
+ $$PWD/qeglfskmshelpers_p.h \
+ $$PWD/qeglfskmseventreader_p.h
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice.cpp
index 4f0b0d7725..7316bd4d5b 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice.cpp
@@ -38,8 +38,8 @@
**
****************************************************************************/
-#include "qeglfskmsdevice.h"
-#include "qeglfskmsscreen.h"
+#include "qeglfskmsdevice_p.h"
+#include "qeglfskmsscreen_p.h"
#include "private/qeglfsintegration_p.h"
#include <QtGui/private/qguiapplication_p.h>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice_p.h
index 34908aa60f..006f4a656e 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice_p.h
@@ -41,8 +41,19 @@
#ifndef QEGLFSKMSDEVICE_H
#define QEGLFSKMSDEVICE_H
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
#include "private/qeglfsglobal_p.h"
-#include "qeglfskmseventreader.h"
+#include "qeglfskmseventreader_p.h"
#include <QtKmsSupport/private/qkmsdevice_p.h>
QT_BEGIN_NAMESPACE
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmseventreader.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmseventreader.cpp
index 645a0ae2e9..67606f895f 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmseventreader.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmseventreader.cpp
@@ -37,8 +37,8 @@
**
****************************************************************************/
-#include "qeglfskmseventreader.h"
-#include "qeglfskmsdevice.h"
+#include "qeglfskmseventreader_p.h"
+#include "qeglfskmsdevice_p.h"
#include <QSocketNotifier>
#include <QCoreApplication>
#include <QLoggingCategory>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmseventreader.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmseventreader_p.h
index 4aa285b0fe..d5738e71cb 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmseventreader.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmseventreader_p.h
@@ -40,6 +40,17 @@
#ifndef QEGLFSKKMSEVENTREADER_H
#define QEGLFSKKMSEVENTREADER_H
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
#include "private/qeglfsglobal_p.h"
#include <QObject>
#include <QThread>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmshelpers.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmshelpers_p.h
index c9e5f04a7b..89607c687b 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmshelpers.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmshelpers_p.h
@@ -40,6 +40,17 @@
#ifndef QEGLFSKMSHELPERS_H
#define QEGLFSKMSHELPERS_H
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
#include <QString>
QT_BEGIN_NAMESPACE
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.cpp
index 28b6b7df63..8d15449679 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.cpp
@@ -39,8 +39,8 @@
**
****************************************************************************/
-#include "qeglfskmsintegration.h"
-#include "qeglfskmsscreen.h"
+#include "qeglfskmsintegration_p.h"
+#include "qeglfskmsscreen_p.h"
#include <QtKmsSupport/private/qkmsdevice_p.h>
@@ -55,18 +55,19 @@ QT_BEGIN_NAMESPACE
Q_LOGGING_CATEGORY(qLcEglfsKmsDebug, "qt.qpa.eglfs.kms")
QEglFSKmsIntegration::QEglFSKmsIntegration()
- : m_device(nullptr),
- m_screenConfig(new QKmsScreenConfig)
+ : m_device(nullptr)
{
}
QEglFSKmsIntegration::~QEglFSKmsIntegration()
{
- delete m_screenConfig;
}
void QEglFSKmsIntegration::platformInit()
{
+ qCDebug(qLcEglfsKmsDebug, "platformInit: Load Screen Config");
+ m_screenConfig = createScreenConfig();
+
qCDebug(qLcEglfsKmsDebug, "platformInit: Opening DRM device");
m_device = createDevice();
if (Q_UNLIKELY(!m_device->open()))
@@ -79,6 +80,8 @@ void QEglFSKmsIntegration::platformDestroy()
m_device->close();
delete m_device;
m_device = nullptr;
+ delete m_screenConfig;
+ m_screenConfig = nullptr;
}
EGLNativeDisplayType QEglFSKmsIntegration::platformDisplay() const
@@ -167,4 +170,12 @@ QKmsScreenConfig *QEglFSKmsIntegration::screenConfig() const
return m_screenConfig;
}
+QKmsScreenConfig *QEglFSKmsIntegration::createScreenConfig()
+{
+ QKmsScreenConfig *screenConfig = new QKmsScreenConfig;
+ screenConfig->loadConfig();
+
+ return screenConfig;
+}
+
QT_END_NAMESPACE
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration_p.h
index e2c37f60fc..8f7b0e3cb6 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsintegration_p.h
@@ -42,6 +42,17 @@
#ifndef QEGLFSKMSINTEGRATION_H
#define QEGLFSKMSINTEGRATION_H
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
#include "private/qeglfsdeviceintegration_p.h"
#include <QtCore/QMap>
#include <QtCore/QVariant>
@@ -77,9 +88,10 @@ public:
protected:
virtual QKmsDevice *createDevice() = 0;
+ virtual QKmsScreenConfig *createScreenConfig();
QKmsDevice *m_device;
- QKmsScreenConfig *m_screenConfig;
+ QKmsScreenConfig *m_screenConfig = nullptr;
};
QT_END_NAMESPACE
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen.cpp
index ad8479d9ad..189dacb3a1 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen.cpp
@@ -39,8 +39,8 @@
**
****************************************************************************/
-#include "qeglfskmsscreen.h"
-#include "qeglfskmsdevice.h"
+#include "qeglfskmsscreen_p.h"
+#include "qeglfskmsdevice_p.h"
#include "qeglfsintegration_p.h"
#include <QtCore/QLoggingCategory>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen_p.h
index 9f21a9e54b..db0aca0bd2 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen_p.h
@@ -42,6 +42,17 @@
#ifndef QEGLFSKMSSCREEN_H
#define QEGLFSKMSSCREEN_H
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists purely as an
+// implementation detail. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
#include "private/qeglfsscreen_p.h"
#include <QtCore/QList>
#include <QtCore/QMutex>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2device.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2device.h
index 3926f809c4..3fd024917b 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2device.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2device.h
@@ -42,7 +42,7 @@
#ifndef QEGLFSKMSVSP2DEVICE_H
#define QEGLFSKMSVSP2DEVICE_H
-#include <qeglfskmsdevice.h>
+#include <qeglfskmsdevice_p.h>
#include <gbm.h>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2integration.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2integration.h
index a67d05488c..709c1812e7 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2integration.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2integration.h
@@ -42,7 +42,7 @@
#ifndef QEGLFSKMSVSP2INTEGRATION_H
#define QEGLFSKMSVSP2INTEGRATION_H
-#include "qeglfskmsintegration.h"
+#include "qeglfskmsintegration_p.h"
#include <QtCore/QMap>
#include <QtCore/QVariant>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2screen.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2screen.cpp
index c255bc84b7..981adbd510 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2screen.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2screen.cpp
@@ -41,7 +41,7 @@
#include "qeglfskmsvsp2screen.h"
#include "qeglfskmsvsp2device.h"
-#include <qeglfskmshelpers.h>
+#include <qeglfskmshelpers_p.h>
#include <QtCore/QLoggingCategory>
#include <QtGui/private/qguiapplication_p.h>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2screen.h b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2screen.h
index b3dfa77e1b..a74942d185 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2screen.h
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qeglfskmsvsp2screen.h
@@ -42,7 +42,7 @@
#ifndef QEGLFSKMSVSP2SCREEN_H
#define QEGLFSKMSVSP2SCREEN_H
-#include "qeglfskmsscreen.h"
+#include "qeglfskmsscreen_p.h"
#include "qvsp2blendingdevice.h"
#include <QtCore/QMutex>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qlinuxmediadevice.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qlinuxmediadevice.cpp
index f77430d7a0..241afdcc31 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qlinuxmediadevice.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qlinuxmediadevice.cpp
@@ -39,7 +39,7 @@
#include "qeglfsintegration_p.h"
#include "qlinuxmediadevice.h"
-#include <qeglfskmshelpers.h>
+#include <qeglfskmshelpers_p.h>
#include <QtCore/QLoggingCategory>
#include <QtCore/QSize>
diff --git a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.cpp b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.cpp
index 132806a2e3..2f00f679b0 100644
--- a/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.cpp
+++ b/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_vsp2/qvsp2blendingdevice.cpp
@@ -38,7 +38,7 @@
****************************************************************************/
#include "qvsp2blendingdevice.h"
-#include <qeglfskmshelpers.h>
+#include <qeglfskmshelpers_p.h>
#include <QDebug>
#include <QtCore/QLoggingCategory>
diff --git a/src/plugins/platforms/linuxfb/qlinuxfbdrmscreen.cpp b/src/plugins/platforms/linuxfb/qlinuxfbdrmscreen.cpp
index 1c99ac8cb1..417ca331f9 100644
--- a/src/plugins/platforms/linuxfb/qlinuxfbdrmscreen.cpp
+++ b/src/plugins/platforms/linuxfb/qlinuxfbdrmscreen.cpp
@@ -399,6 +399,7 @@ QLinuxFbDrmScreen::~QLinuxFbDrmScreen()
bool QLinuxFbDrmScreen::initialize()
{
m_screenConfig = new QKmsScreenConfig;
+ m_screenConfig->loadConfig();
m_device = new QLinuxFbDevice(m_screenConfig);
if (!m_device->open())
return false;
diff --git a/sync.profile b/sync.profile
index 7c0d17365e..7b502958e7 100644
--- a/sync.profile
+++ b/sync.profile
@@ -17,6 +17,8 @@
"QtKmsSupport" => "$basedir/src/platformsupport/kmsconvenience",
"QtZlib" => "!>$basedir/src/corelib;$basedir/src/3rdparty/zlib",
"QtEglFSDeviceIntegration" => "$basedir/src/plugins/platforms/eglfs",
+ "QtEglFsKmsSupport" => "$basedir/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support",
+ "QtEglFsKmsGbmSupport" => "$basedir/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms",
"QtMockPlugins1" => "$basedir/tests/auto/cmake/mockplugins/mockplugins1",
"QtMockPlugins2" => "$basedir/tests/auto/cmake/mockplugins/mockplugins2",
"QtMockPlugins3" => "$basedir/tests/auto/cmake/mockplugins/mockplugins3",