• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Panfrost
2========
3
4The Panfrost driver stack includes an OpenGL ES implementation for Arm Mali
5GPUs based on the Midgard and Bifrost microarchitectures. It is **conformant**
6on `Mali-G52 <https://www.khronos.org/conformance/adopters/conformant-products/opengles#submission_949>`_,
7`Mali-G57 <https://www.khronos.org/conformance/adopters/conformant-products/opengles#submission_980>`_
8and `Mali-G610 <https://www.khronos.org/conformance/adopters/conformant-products/opengles#submission_1053>`_,
9but **non-conformant** on other GPUs.
10
11PanVK, the Vulkan implementation in the Panfrost driver stack, is currently
12**non-conformant** on all GPUs.
13
14The following hardware is currently supported:
15
16+--------------------+---------------+-----------+--------+--------+
17| Models             | Architecture  | OpenGL ES | OpenGL | Vulkan |
18+====================+===============+===========+========+========+
19| T600, T620, T720   | Midgard (v4)  | 2.0       | 2.1    |        |
20+--------------------+---------------+-----------+--------+--------+
21| T760, T820, T830   | Midgard (v5)  | 3.1       | 3.1    |        |
22| T860, T880         |               |           |        |        |
23+--------------------+---------------+-----------+--------+--------+
24| G72                | Bifrost (v6)  | 3.1       | 3.1    | 1.0    |
25+--------------------+---------------+-----------+--------+--------+
26| G31, G51, G52, G76 | Bifrost (v7)  | 3.1       | 3.1    | 1.0    |
27+--------------------+---------------+-----------+--------+--------+
28| G57                | Valhall (v9)  | 3.1       | 3.1    |        |
29+--------------------+---------------+-----------+--------+--------+
30| G310, G610         | Valhall (v10) | 3.1       | 3.1    | 1.0    |
31+--------------------+---------------+-----------+--------+--------+
32
33Other Midgard and Bifrost chips (e.g. G71) are not yet supported.
34
35Older Mali chips based on the Utgard architecture (Mali-400, Mali-450) are
36supported in the :doc:`Lima <lima>` driver, not Panfrost. Lima is also
37available in Mesa.
38
39Other graphics APIs (OpenCL) are not supported at this time.
40
41Building
42--------
43
44Panfrost's OpenGL support is a Gallium driver. Since Mali GPUs are 3D-only and
45do not include a display controller, Mesa uses kmsro to support display
46controllers paired with Mali GPUs. If your board with a Panfrost supported GPU
47has a display controller with mainline Linux support not supported by kmsro,
48it's easy to add support, see the commit ``cff7de4bb597e9`` as an example.
49
50LLVM is *not* required by Panfrost's compilers. LLVM support in Mesa can
51safely be disabled for most OpenGL ES users with Panfrost.
52
53Build like ``meson . build/ -Dvulkan-drivers=panfrost
54-Dgallium-drivers=panfrost -Dllvm=disabled`` for a build directory
55``build``.
56
57For general information on building Mesa, read :doc:`the install documentation
58<../install>`.
59
60Chat
61----
62
63Panfrost developers and users hang out on IRC at ``#panfrost`` on OFTC. Note
64that registering and authenticating with ``NickServ`` is required to prevent
65spam. `Join the chat. <https://webchat.oftc.net/?channels=panfrost>`_
66
67Technical details
68-----------------
69
70You can read more technical details about Panfrost here:
71
72.. toctree::
73   :glob:
74
75   panfrost/*
76