Open Source Mali Utgard GPU Kernel Drivers

Source code for Mali GPUs Kernel Device Drivers, UMP Device Drivers and DRM Device Drivers under GPLv2 licence

The Linux and Android version of the Mali GPUs DDKs include three components which run within the kernel. The most important of these, known as the Device Driver, provides the low-level access to the Mali-400 and Mali-450 GPU. An important, secondary component is the Unified Memory Provider (UMP) which can be used in a variety of ways to facilitate zero-copy operations within the driver stack. An additional component, the Mali Direct Rendering Manager (DRM), is provided to integrate the Mali GPU DDKs into the X11 environment and for enabling the Direct Rendering Interface (DRI2).

Some of these components are being made available under the GPLv2 licence. This page provides access to the source packages from which loadable kernel modules can be built.

Note that these components are not a complete driver stack. To build a functional OpenGL ES or OpenVG driver you need access to the full source code of the Mali GPU DDK, which is provided under the standard ARM commercial licence to all Mali GPU customers. For a complete integration of the Mali GPU DDK with the X11 environment refer to the Integration Guide supplied with the Mali GPU DDK.

The open source drivers provided on this page are designed to run with a version-compatible release of the Mali GPU DDK. In functional and performance terms they are identical to the implementations provided under the commercial licence. By also releasing them under the GPLv2 licence we hope to make it easier to include Mali GPU drivers in any Linux or Android platform.

Happy Hacking!

FEATURES AND BENEFITS

The Mali GPU kernel device driver handles:

  • Access to the Mali GPU hardware
  • Interrupt handling
  • Low level memory management

The UMP kernel device driver handles:

  • Access to allocated UMP memory through a secure ID. This enables memory to be shared across different applications, drivers and hardware components to facilitate zero-copy operations
  • The physical address information required to set up an MMU or MPU table
  • A method to map UMP memory into CPU address space, to enable reading and writing

Download GPU Kernel Device Drivers

By downloading the packages below you acknowledge that you accept the End User License Agreement for the Mali GPUs Kernel Device Drivers Source Code.

DX910-SW-99002-r7p0-00rel1.tgz Linux (released on 20 Jan 2017) 302 KB
DX910-SW-99002-r7p0-00rel0.tgz Linux (Released 13 Sep 2016) 303 KB
DX910-SW-99002-r6p2-01rel0.tgz Linux (Released 14 Jul 2016) 306 KB
DX910-SW-99002-r6p1-01rel0.tgz Linux (Released 2 Mar 2016) 301 KB
DX910-SW-99002-r6p0-01rel1.tgz Linux (Released 13 Jan 2016) 290 KB
DX910-SW-99002-r6p0-01rel0.tgz Linux (Released 10 Nov 2015) 290 KB
DX910-SW-99002-r5p2-00rel0.tgz Linux (Released 19 May 2015) 264 KB
DX910-SW-99002-r5p1-01rel0.tgz Linux (Released 17 Mar 2015) 257 KB
DX910-SW-99002-r5p0-01rel0.tgz Linux (Released 11 Nov 2014) 255 KB
DX910-SW-99002-r4p1-01rel0.tgz Linux (Released 07 Jul 2014) 245 KB
DX910-SW-99002-r4p0-00rel1.tgz Linux (Released 6 May 2014) 246 KB