AW: running etnaviv driver on i.mx6

Wagner Andre andre.wagner at richard-wolf.com
Wed Aug 6 15:49:22 UTC 2025


Hi Fabio,

I got it working! I didn't port everything to the mainline kernel but I ensured that drivers/gpu/drm/etnaviv and drivers/gpu/drm/imx match the mainline kernel and I ported the devicetree to mainline style for the gpu node and the ldb node (LVDS device bridge). Then i realized that i need to compile mesa different:

I used:
meson setup <build dir> \
  -Dplatforms=wayland \
  -Degl-native-platform=drm \
  -Dgallium-drivers=etnaviv,kmsro \
  -Ddri3=enabled \
  -Dvulkan-drivers= \
  -Dllvm=disabled \
  -Dshared-llvm=disabled \
  -Dshared-glapi=enabled \
  -Dgles1=enabled \
  -Dgles2=enabled \
  -Dopengl=false \
  -Degl=enabled \
  -Dgbm=enabled \
  -Dglx=disabled \
  -Dglvnd=true \
  -Dbuild-tests=true \
  -Dtools= \
  -Db_ndebug=true \
  -Ddri-drivers-path=/usr/lib/$(DEB_HOST_MULTIARCH)/dri \
  -Ddri-search-path='/usr/lib/$(DEB_HOST_MULTIARCH)/dri:\$$$${ORIGIN}/dri:/usr/lib/dri'

On my first run I didn't set egl's native platform to drm and compared to your old article (i tested the buildroot you meantioned there) i used dri3 and disabled dri2 completly.

So my running setup is now:

 *
Linux 5.15.148, NXP branch with mainline /driver/gpu/drm/{etnaviv,imx} of mainline branch
 *
Custom devicetree for NXP branch with adapted gpu- and lbd-node to mainline branch
 *
Mesa 23.2.1 with dri3, egl on drm using gbm
 *
Qt Application 5.15 with eglfs platform

Greetings,
André
[https://www.richard-wolf.com/mam/data/Typo3/banner/e-mail-banner-DGU25.png]<https://www.richard-wolf.com/de/unternehmen/kongresse/messe-detail/77-kongress-der-deutschen-gesellschaft-fuer-urologie-dgu><https://www.richard-wolf.com/de/academy-prima-vista/masterclass-workshops/masterclass-workshop-minimally-invasive-upper-gi-surgery-2><https://www.richard-wolf.com/en/company/congresses/congress-detail/arab-health-2025>

Richard Wolf GmbH, Pforzheimer Strasse 32, 75438 Knittlingen
Managing Directors: Juergen Pfab, Juergen Steinbeck. Trade Register: Mannheim HRB 510031

Richard Wolf GmbH routinely monitors the content of e-mail sent and received via its network for the purposes of ensuring compliance with its policies and procedures. Richard Wolf GmbH is not responsible for any changes made to the message after it has been sent. Where opinions are expressed, they are not necessarily those of Richard Wolf GmbH. This e-mail and any files transmitted with it are confidential and intended solely for the use of the individual or entity to which they are addressed. If you are not the intended addressee, or the person responsible for delivering it to them, you may not copy, forward, disclose, or otherwise use it or any part of it in any way. To do so may be unlawful. If you receive this e-mail by mistake, please advise the sender immediately.

Data Protection Policy<https://www.richard-wolf.com/en/data-protection-policy>  |  Legal Information<https://www.richard-wolf.com/en/legal-information/>  |  Terms & Conditions<https://www.richard-wolf.com/en/terms-conditions/>

________________________________
Von: etnaviv <etnaviv-bounces at lists.freedesktop.org> im Auftrag von Fabio Estevam <festevam at gmail.com>
Gesendet: Montag, 4. August 2025 21:50
An: Wagner Andre <andre.wagner at richard-wolf.com>
Cc: etnaviv at lists.freedesktop.org <etnaviv at lists.freedesktop.org>
Betreff: Re: running etnaviv driver on i.mx6

Hi Andre,

On Mon, Aug 4, 2025 at 12:39 PM Wagner Andre
<andre.wagner at richard-wolf.com> wrote:
>
> Hi Fabio,
>
> thanks for your fast answer!
> A few hours ago, i just found an old article of you where you  described howto do it ;):
>
> https://imxdev.gitlab.io/tutorial/Running_kmscube_with_Etnaviv_on_mx6sabresd_board/
>
> I try to do the setup you described there, but i still got no plan how to port the devicetree i got for my board from the NXP kernel variant to the mainline, without causing a bunch of new problems.

The display subsystem representation in the devicetree is different
between the mainline kernel and the NXP kernel.

Try getting the i.MX6 display interface to work with the mainline kernel first.

There are many i.MX6-based boards are supported by the mainline
kernel, which you can use as a reference for adapting your devicetree.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/etnaviv/attachments/20250806/a449c021/attachment-0001.htm>


More information about the etnaviv mailing list