Topic: Binary 3D drivers

As the open source Vivante 3D drivers don't seem to be ready yet for daily usage, I'd like to use the binary vivante drivers for a smooth desktop operation.

Did anybody try this yet?
I just finished my Gentoo setup on the Novena and I'm really stuck now, since I have no idea what to do to install the binary drivers.

2 (edited by picmaster 2015-04-08 00:31:14)

Re: Binary 3D drivers

Well, you can start digging into Yocto (branches dizzy & master), understand how the Vivante components are working there and port them to your Linux distro. Or wait for someone else to do it.

I've used the GPU & VPU with Yocto on custom imx6 board, and they seem to work.

Re: Binary 3D drivers

Anything special you did for the Gentoo install? Maybe do a quick writeup of what you did and your experiences?

I'm a Gentoo user on my other boxes, and obviously thought about it on the Novena. Not sure about the build times or problems getting set up, though. All the stage 3 tarballs I've seen are pretty old for ARM.

Anyway, it would be awesome to hear what you did and how it works. Binary drivers, too.


I'm too busy working on my case to have done much looking at the software yet.

Re: Binary 3D drivers

The open-source 2D drivers are surprisingly stable.  Moreso, I'd say, than their closed-source counterpart.  You already have this on your board right now.

The problem is that the kernel drivers are not stable.  The irony is that these drivers are straight from Vivante themselves.  Have a look at them at https://github.com/xobs/novena-linux/tr … pu/galcore and feel your sanity leave you.

This is being worked on.  Community-authored drivers are being written.  But for now, one solution might be to try something like the Solidrun port of 3.14, at https://github.com/SolidRun/linux-imx6-3.14

Re: Binary 3D drivers

Just to be clear on that:
The libetnaviv, libdrm-armada and xorg-xserver-armada do have 2D acceleration? And do they need the galcore or is it only needed for the 3D acceleration?

Re: Binary 3D drivers

They are capable of performing 2D acceleration, but it's disabled due to the galcore kernel module having a bug where it will sometimes draw over RAM rather than where you want it to go.

galcore is responsible for managing IRQs, memory, and command streams for both the 2D and 3D cores.  Therefore, galcore is required to use both the 2D and 3D engines.  At least until the community driver is functional.

Re: Binary 3D drivers

Where is the FOSS driver being developed? I've tried poking around Jon Nettleton's github repos, and didn't see anything obvious.

Re: Binary 3D drivers

There's a big chunk of patches that was posted to the DRI mailing list last week:

http://article.gmane.org/gmane.comp.vid … vel/126903

It started out as the etnadrm driver on the etnaviv github page, but has since morphed somewhat.  Since it's posted to the mailing list, it is being targeted for upstreaming.

9 (edited by Andy 2015-04-13 23:47:07)

Re: Binary 3D drivers

dbtayl wrote:

Anything special you did for the Gentoo install? Maybe do a quick writeup of what you did and your experiences?

I'm a Gentoo user on my other boxes, and obviously thought about it on the Novena. Not sure about the build times or problems getting set up, though. All the stage 3 tarballs I've seen are pretty old for ARM.

Slightly off-topic, but I'll just answer here.

No, nothing special, but I ditched it again in favor of the regular Debian. It was just too painful to compile Webkit for >12 hours on the Novena and things like gnuradio failed with obscure X11-errors. I was fed up in the end wink
If you _really_ want to use Gentoo, you absolutely need to distribute the load with distcc.

For the setup itself, getting the boot environment right was the hardest part. Especially because I wanted an encrypted root partition. I mostly did it like the novena-image.sh with encryption support here: https://github.com/jogi91/novena-image.git
The u-boot environment, the disk signature and the sata-boot flag in the eeprom are the things to be aware of. In the end I grepped through the novena-u-boot sources to understand the disk-signature thing (see: hxxps://github.com/xobs/u-boot-novena/blob/novena-r2/board/kosagi/novena/novena.c#L369).

I still have a lengthy (>200 lines) textfile with all my notes, but it was mostly following the manuals and adding things here and there to make it boot on the Novena.

Re: Binary 3D drivers

What's the current status on the video drivers?  It seems to me that 2D acceleration is still disabled by default?