From 02ae522f54e93af46fb7cae5fcbc630a804cab50 Mon Sep 17 00:00:00 2001 From: Laszlo Agocs Date: Tue, 9 Apr 2019 14:58:29 +0200 Subject: eglfs: Drop annoying warnings without drm atomic No point in warning on every application startup that framebuffer size setting is not available. Just ignore it then. Change-Id: Id36ff0ab9560b99cc3f2d56a4ee51455cfa43cb7 Reviewed-by: Johan Helsing --- src/platformsupport/kmsconvenience/qkmsdevice.cpp | 29 +++++++++++++---------- 1 file changed, 16 insertions(+), 13 deletions(-) (limited to 'src/platformsupport') diff --git a/src/platformsupport/kmsconvenience/qkmsdevice.cpp b/src/platformsupport/kmsconvenience/qkmsdevice.cpp index 1ba32895f8..07ef60c5ff 100644 --- a/src/platformsupport/kmsconvenience/qkmsdevice.cpp +++ b/src/platformsupport/kmsconvenience/qkmsdevice.cpp @@ -387,23 +387,26 @@ QPlatformScreen *QKmsDevice::createScreenForConnector(drmModeResPtr resources, if (!cloneSource.isEmpty()) qCDebug(qLcKmsDebug) << "Output" << connectorName << " clones output " << cloneSource; - const QByteArray fbsize = userConnectorConfig.value(QStringLiteral("size")).toByteArray().toLower(); QSize framebufferSize; - framebufferSize.setWidth(modes[selected_mode].hdisplay); - framebufferSize.setHeight(modes[selected_mode].vdisplay); - + bool framebufferSizeSet = false; + const QByteArray fbsize = userConnectorConfig.value(QStringLiteral("size")).toByteArray().toLower(); + if (!fbsize.isEmpty()) { + if (sscanf(fbsize.constData(), "%dx%d", &framebufferSize.rwidth(), &framebufferSize.rheight()) == 2) { #if QT_CONFIG(drm_atomic) - if (hasAtomicSupport()) { - if (sscanf(fbsize.constData(), "%dx%d", &framebufferSize.rwidth(), &framebufferSize.rheight()) != 2) { - qWarning("Framebuffer size format is invalid."); + if (hasAtomicSupport()) + framebufferSizeSet = true; +#endif + if (!framebufferSizeSet) + qWarning("Setting framebuffer size is only available with DRM atomic API"); + } else { + qWarning("Invalid framebuffer size '%s'", fbsize.constData()); } - } else { - qWarning("Setting framebuffer size is only available with DRM atomic API"); } -#else - if (fbsize.size()) - qWarning("Setting framebuffer size is only available with DRM atomic API"); -#endif + if (!framebufferSizeSet) { + framebufferSize.setWidth(modes[selected_mode].hdisplay); + framebufferSize.setHeight(modes[selected_mode].vdisplay); + } + qCDebug(qLcKmsDebug) << "Output" << connectorName << "framebuffer size is " << framebufferSize; QKmsOutput output; -- cgit v1.2.3