Vivante Graphics with Debian 8 Jessie on i.MX6Q

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Vivante Graphics with Debian 8 Jessie on i.MX6Q

3,646 Views
steffendoster
Contributor IV

Hi,

Good news everyone:

I GOT IT!!! (somehow).

I followed the Instructions here:

u-boot on the i.MX6 sabre sd platform in a few commands

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

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

with some modifications for my custom-board (adapting the C-File for u-boot and changing the Device-Tree for Linux.)

With this I was able to create my own SD-Card with Linux 3.19 and Debian 8 Jessie on it. And it works, well mostly. I have to get KDE working (No, I don't want to start a Desktop-War! I simply want KDE!). So I installed kdm with all following dependencies.

After that, I was able to boot to the login-screen with mouse, keyboard and even touch.

But when I enter a username and password, X seems to start, but crashes with several messages like:

vgaarb: this pci device is not a vga device

and after a while:

imx-ipuv3 2400000.ipu: Timeout waiting for DMFC FIFOs to clear

The login aborts and returns me to login-screen.

Is there some sort of graphics-driver I have to install first? Or some setting in the Kernel? Do you need further Information?

0 Kudos
6 Replies

1,326 Views
obenbelhassen
Contributor I

Hi everyone,

I am trying to install debian on my imx6 board. I followed the instructions in the documents above but i can't get the board to boot once my sd card is ready. Booting using the serial port is not an option.

Do i need a specific partition for the sd card with a specific position for the bootloader to force the system to boot ? 

0 Kudos

1,326 Views
steffendoster
Contributor IV

Noooooooooooo!

I didn't get it!

i.MX is NOT running with the vivante driver on Debian.

The X-Server still uses fbdev for the framebuffer-device. I'm running mad with this.

After I digged a lot about this problem in the Internet I still found no usable advice for dummies like me on how to set up the driver for this GPU.

Everytime I thought "this could help" I soon run into some prerequiries or setups or something that I don't have.

And the worst: I even do NOT know if my device tree is correct.

Is someone out there to provide a simple step-by-step advice on how I can get this thing working?

Here's my device tree entry for GPU:

/* Graphics Processing Unit 2D and 3D */

gpu-subsystem {

    #address-cells = <1>;

    #size-cells = <1>;

    compatible = "vivante,gccore";

    ranges;

    gpu2d@00134000 {

        compatible      = "vivante,vivante-gpu-2d";

        reg     = <0x00134000 0x4000>;

        clocks  = <&clks IMX6QDL_CLK_GPU2D_CORE>,

          <&clks IMX6QDL_CLK_GPU2D_AXI>;

        clock-names     = "core", "bus";

        interrupts      = <0 10 0x04>;

    };

    gpu3d@00130000 {

        compatible      = "vivante,vivante-gpu-3d";

        reg     = <0x00130000 0x4000>;

        clocks  = <&clks IMX6QDL_CLK_GPU3D_CORE>,

          <&clks IMX6QDL_CLK_GPU3D_SHADER>,

          <&clks IMX6QDL_CLK_GPU3D_AXI>;

        clock-names     = "core", "shader", "bus";

        interrupts      = <0 9 0x04>;

    };

};

PS: Something else I don't get:
       Why is Freescale not able to provide a newer Kernel? I mean, 4.1 is out now, and all I can (mainly) read about is 3.10!

       (Well in my case I have 3.14 but this is also a downgrade to the recent 3.19 Kernel from Debian 8.)

0 Kudos

1,326 Views
MagnusNilsson
Contributor II

I'm in the same boat as you, Steffen.

Running kernel 3.19 on a IMX6DL, and just recently got the requirement to support the GPU (GL ES, although not for X).

Several community projects are brewing (e.g. etnaviv), but as of yet none of them seems to fully support Vivante for current mainline linux.

As far as I can see, this requires us to downgrade and migrate from mainline 3.19 to Freescale's 3.10.17 to get GPU support - correct?

0 Kudos

1,326 Views
steffendoster
Contributor IV

I think this is correct, yes. But downgrade is really no option. The customers want a kernel which has a long term support. OK 3.10 is a LTS-Kernel, but this version is two years old and the support will end this year!!!

This is no longer a long term support, this is really really really short term!

Plus there is an other issue: I already had problems implementing some newer Hardware (for example touch screen) to the kernel. I'm afraid, a further downgrade (I already had to downgrade from Debians 3.19 Kernel) will bring up even more problems than it solves.

This proprietary drivers for linux are really a pain in the ass! Once they are written (for a rather specific kernel), no one cares about newer linux kernels.

I already ran into the exactly same promlem with Intels GMA500.

PS: You got 3.19 working (somehow)? Would you share devicetree/patches?

0 Kudos

1,326 Views
MagnusNilsson
Contributor II

We don't have a Sabre, but a custom board quite similar to Wandboard.

Our work is based on Robert Nelson's Linux on ARM. I notice there are sections for Sabre as well:

Home - Linux on ARM - eewiki

0 Kudos

1,326 Views
jamesbone
NXP TechSupport
NXP TechSupport

Hello Steffen,

The error that you are seeing it is because of the Vivante Driver it is not for the version of  Linux Kernel that you are using,

you can check below for available vivante drivers:

L3.10.17_1.0.0_LINUX_DOCS

L3.0.35_4.1.0_LINUX_DOCS

L3.10.17_1.0.0_IMX6QDLS_BUNDLE : Source Code

L3.0.35_4.1.0_ER_SOURCE_BSP :

If you will not find necessary drivers please post

this to meta-fsl-arm mailing list, so that someone familiar with this board

s/w distribution could try to assist you.

https://lists.yoctoproject.org/listinfo/meta-freescale

0 Kudos