i.MX8MP NXP BSP 6.6.3 with QtWebEngine 6.9.1 and Chromium 130.0.6723.192
-
I successfully build and can run an image for i.MX8mp, based on NXP's Yocto Linux Guide with BSP 6.6.3 and with QtWebEngine 6.9.1, Chromium 130.0.6723.192.
However when starting the QT Webapplication with Debug flags:
export QT_LOGGING_RULES="qt.webenginecontext.debug=true" export QT_DEBUG_PLUGINS=1I get the following output:
qt.core.library: "/usr/lib/qml/QtWebEngine/libqtwebenginequickplugin.so" loaded library Unable to detect GPU vendor. Only --use-gl=angle is supported on this platform. qt.webenginecontext: Chromium GL Backend: egl Chromium ANGLE Backend: disabled Chromium Vulkan Backend: disabled QSG RHI Backend: OpenGL QSG RHI Backend Supported: yes QSG RHI Device: Vivante Corporation Vivante GC7000UL OpenGL ES 3.1 V6.4.11.p2.745085 QSG RHI GPU Vendor: Unknown Using GLX: no Using EGL: yes Using Shared GL: no Init Parameters: * application-name felawebbrowserd * browser-subprocess-path /usr/libexec/QtWebEngineProcess * disable-blink-features WebOTP * disable-composited-antialiasing * disable-features EyeDropper,BackgroundFetch,InstalledApp,WebOTP,WebPayments,WebUSB,StandardCompliantNonSpecialSchemeURLParsing * disable-infobars * disable-session-crashed-bubble * disable-setuid-sandbox * disable-software-rasterizer * disable-speech-api * enable-features NetworkServiceInProcess2,TracingServiceInProcess,OverlayScrollbar * enable-gpu * enable-viewport * gpu-device-id 0x7100 * gpu-vendor-id 0x1d17 * ignore-certificate-errors * ignore-gpu-blacklist * in-process-gpu * no-first-run * no-sandbox * touch-events auto * use-gl egl * user-data-dir /home/root/.chromium/ * validate-input-event-stream [1155:1181:0905/062047.763467:ERROR:gl_factory.cc(103)] Requested GL implementation (gl=egl-gles2,angle=none) not found in allowed implementations: [(gl=egl-angle,angle=default),(gl=disabled,angle=none)].I tried several qtwebengine configure options through
qtwebengine_git.bbappend, but for some reasons, qtwebengine Chromium 130.0.6723.192 always expects/allows: [(gl=egl-angle,angle=default),(gl=disabled,angle=none)].Latest
qtwebengine_git.bbappendFILESEXTRAPATHS:prepend := "${THISDIR}/qtwebengine:" # configure QtWebEngine for i.MX8 (Vivante GPU): # - no ANGLE (we want native GLES/EGL) # - use EGL and Vivante's GLES # - use system freetype + ICU # - keep bundled harfbuzz/ffmpeg (avoid conflicts with Yocto versions) EXTRA_OECMAKE:append = " \ -DFEATURE_webengine_angle=OFF \ -DFEATURE_webengine_egl=ON \ -DFEATURE_webengine_vulkan=OFF \ -DFEATURE_webengine_system_harfbuzz=OFF \ -DFEATURE_webengine_system_ffmpeg=OFF \ -DFEATURE_webengine_system_freetype=ON \ -DFEATURE_webengine_system_icu=ON \ -DQT_FEATURE_webengine_system_opus=ON \ -DQT_FEATURE_webengine_system_libvpx=ON \ -DQTWEBENGINE_CHROMIUM_FLAGS_USE_EGL_GLES2=ON \ " # force GN args (Chromium build system) WEBENGINE_CONFIG_ARGS:append = " \ use_ozone=true \ use_x11=false \ ozone_platform_egl=true \ ozone_platform_headless=false \ use_egl=true \ use_gl=egl \ enable_native_gpu_memory_buffers=true \ enable_vulkan=false \ " # dependencies for native GLES/EGL path # for i.MX platforms, the libraries have different names # - libGLESv2.so is provided by imx-gpu-viv # - libEGL.so is provided by imx-gpu-viv DEPENDS:append = " \ imx-gpu-viv \ freetype \ icu \ " # remove bundled deps that we explicitly control DEPENDS:remove = "ffmpeg" DEPENDS:remove = "harfbuzz"Does anybody can help in finding out Chromium 130.0.6723.192 to recognize (gl=egl-gles2,angle=none) to fully support i.MX8 GPU with HW-accelleration.
Previous Release with QTWebEngine 6.5.0, Chromium 108.0.5359.181 and applied patches works but the reason we have to upgrade to QtWebEngine 6.9.1 with Chromium 130.0.6723.192 is to support Angular Applications > Version 16.