AnsweredAssumed Answered

i.MX6s/dl Etnaviv/Vivante drivers on Debian 9 Stretch

Question asked by Steffen Doster on Aug 31, 2018
Latest reply on Feb 7, 2020 by Gianluca Renzi

Hi everyone,


it's the same old problem on and on and perhaps someone can finally point me the way to get graphics acceleration to work.


I have a custom i.MX6s/dl Board with a little display and want to use the graphics acceleration. I built a Linux-Kernel with the Mainline Sources of Version 4.9.98.


I don't use yocto or another build-tool! I'm fine with my self-made compile-script for the Kernel.


The Graphic-Devicetree-Part is attached.

In Kernel-Config / Drivers / Graphics support the following is selected:

- IPUv3 core support

- Direct Rendering Manager

- DRM Support for Freescale i.MX

- Support for parallel displays
- Support for TV and VGA displays
- Support for LVDS displays
- Freescale i.MX DRM HDMI


(- Backlight support and Bootup logo)


The Etnaviv Module seems to be working correctly, <dmesg|grep viv> gives:

[ 1.482134] etnaviv gpu-subsystem: bound 134000.gpu (ops gpu_ops)
[ 1.488314] etnaviv gpu-subsystem: bound 130000.gpu (ops gpu_ops)
[ 1.494468] etnaviv-gpu 134000.gpu: model: GC320, revision: 5007
[ 1.546746] etnaviv-gpu 130000.gpu: model: GC880, revision: 5106
[ 8.556667] etnaviv: module is already loaded


The Root-Filesystem (Debian 9) is built with the receipe here:

Debian on the i.MX6 sabre sd platform in a few commands

except I replaced
# debootstrap --foreign --arch=armhf testing /mnt


# debootstrap --foreign --arch=armhf stable /mnt


After the basic Installation I added lightdm and xfce4. This works fine for me except the missing graphics acceleration.

And I added some mesa packages (Version 13 in Debian 9):

libegl1-mesa, libegl1-mesa-drivers, libgl1-mesa-dri, libgl1-mesa-glx, libglapi-mesa, libglu1-mesa, mesa-common-dev, mesa-va-drivers, mesa-utils, mesa-utils-extra

With the mesa-utils I testet graphics with glxgears and got a fps of about 36 


I already tried countless ways to get the graphics acceleration to work but with no success. I don't want to list them here but here are some examples: (which are mostly very old)

- install armada (libdrm-armada) (not shipped with Debian)

- compile xorg-drv-vivante

- compile and install xf86-video-imx-vivante-rel_imx_4.9.x_1.0.0_ga (Compile Errors with incorrect defines and structures. Did not compile!) also added imx-gpu-viv-5.0.11.p8.4-hfp for headers and libs


Many (all) of them ended with compile errors which I can't solve.


i.MX6 is now a rather mature Device and I can't believe I'm the first to try this. Isn't there a working way to get Graphics-Acceleration to work?

Do you need any further Information?