I’m currently using version 2.8 of the Linux BSP with an iMX6 only with a framebuffer (no X11 or Wayland). It runs a Qt application with hardware acceleration. For this, it uses the EGLFS backend from Qt (OpenGL). In order to provide the acceleration, the BSP uses a freescale kernel with the vivante kernel module:
Since I wanted to switch to the mainline kernel, and specifically to a kernel with PREEMPT_RT support, I tried to change my setup to use the
linux-toradex repo (branch
toradex_4.19.y-rt). With this setup, instead of the
imx-gpu-viv, it should use the
etnaviv driver from mesa. If I understand correctly, this is what Torizon is using as well.
However, I don’t seem to be able to change my setup to use the mesa / etnaviv driver.
This is the config for Qt (qtbase):
PACKAGECONFIG_append = " linuxfb eglfs gles2 sql-sqlite accessibility" PACKAGECONFIG_remove = "xcb xcb-xinput openssl tests examples openssl sm xml testlib printer"
I have also this line in my
local.conf, in order to activate etnaviv.
MACHINEOVERRIDES .= ":use-mainline-bsp"
However, when I try to build, then I get the following error.
ERROR: Nothing PROVIDES 'virtual/egl' imx-gpu-viv PROVIDES virtual/egl but was skipped: incompatible with machine apalis-imx6 (not in COMPATIBLE_MACHINE)
Can someone hint me at what else I need to activate etnaviv? Do I need to activate X11 or Wayland for this (which I would like to avoid)?
Note that I’m using my own distribution, based on the Torizon manifest and the 3.0 BSP from Toradex (branch thud).
Thanks for reading and for your help!