Lima: An open source graphics driver for ARM Mali GPUs
Lima is an open source graphics driver which supports Mali-200 and Mali-400 GPUs.
The aim of this driver and others such as freedreno is to finally bring all the advantages of open source software to ARM SoC graphics drivers. Currently, the sole availability of binary drivers is increasing development and maintenance overhead, while also reducing portability, compatibility and limiting choice. Anyone who has dealt with GPU support on ARM, be it for a linux with a GNU stack, or for an android, knows the pain of dealing with these binaries.
- 2015-12-20: this project looking for developers, if you'd like to try, come to our IRC #lima
- 2013-03-18: Q3A now runs with open source generated shaders! Read all about it at libvs blog
- 2013-02-06: Libv blogs about Quake 3 Arena running on top of the limare prototype driver.
- 2013-02-02: Libv talks about Open ARM GPU drivers at FOSDEM, and Connor talks about his compiler work in the Xorg DevRoom. Public goes wild for Q3A running on limare, and Connor fills the DevRoom to the brim!
- 2012-12-07: After what can only be described as an eternity, the LinuxTag demo code and tons of other changes have now been pushed to gitorious. Here is a video of our brand new spinning companion cube spinning away at 60Hz.
- 2012-05-27: Linuxtag talk slides and a separate demo of limare was posted on phoronix.
- 2012-05-26: Lima talk at Linuxtag Berlin: Textured, lighted portal cube, spins away correctly (full video)!
- 2012-04-14: Rob Clark announces the freedreno project inspired by the Lima approach
- 2012-04-12: Libv is confirmed to talk about Lima progress at LinuxTag on May 26
- 2012-04-12: Fragment (pixel) shader disassembler announced at Phoronix
- 2012-02-12: Video of the android demo is up at Phoronix
- 2012-02-09: Lima repository created and current code pushed up to our gitorious project.
- 2012-02-04: Lima driver talk at FOSDEM: Loads of fun! Video up soon!
- 2012-02-03: First public renders of smoothed triangle, smoothed strip, smoothed fan, flat quad, triangle quad, smoothed lighted rotated cube
- 2012-01-24: A new name has been chosen for the project: remali now becomes Lima! We now have a gitorious project, there is the #lima channel on freenode. A mailing list will be created soon.
- 2012-01-23: Codethink puts out a press release for the business world. This is definitely not vaporware!
- 2012-01-21: Talk appears on the FOSDEM schedule.The cat is out of the bag! Story published by phoronix, hits slashdot, golem, pro-linux and tweakers.
Documentation for the shader compiler, and the initial investigation of the instruction set is available here.
- AMLogic 8726-M (Zenithink C71)
- Allwinner A10 (Mele A1000, MK802)
- ST-Ericsson Novathor
- Samsung Exynos (Galaxy S2/S3/Tab/Note, Samsung Chromebook)
The documentation is currently kept in the wiki, pages of interest are:
Original (Falanx) datasheets:
- Mali Offline Shader Compiler
- Render State
- Texel Formats
- Compiling Q3A Shaders
The Lima driver currently only has some preliminary and highly experimental support. This experimental phase is necessary to gain a full and complete understanding of how the Mali GPUs work. Once more is known, an actual graphics driver (most likely based off of Mesa/Gallium) can be written. There is a lot of interesting work that still needs to be done!
If you would like to contribute to this project, and would like to know what Devices can be used to help develop the Lima driver, check out the requirements. Rest assured though, due to the enormous popularity of Android on cheap tablets, contributing to a free graphics driver has never been this cheap and portable at the same time!