mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2024-12-02 22:54:05 +08:00
c09c8fa34f
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8243>
61 lines
2.3 KiB
ReStructuredText
61 lines
2.3 KiB
ReStructuredText
Panfrost
|
|
========
|
|
|
|
The Panfrost driver stack includes a **non-conformant** OpenGL ES
|
|
implementation for Arm Mali GPUs based on the Midgard and Bifrost
|
|
microarchitectures. The following GPUs are currently supported:
|
|
|
|
========= ============ ============ =======
|
|
Product Architecture OpenGL ES OpenGL
|
|
========= ============ ============ =======
|
|
Mali T720 Midgard (v4) 2.0 2.1
|
|
Mali T760 Midgard (v5) 3.0 3.1
|
|
Mali T820 Midgard (v5) 3.0 3.1
|
|
Mali T860 Midgard (v5) 3.0 3.1
|
|
Mali G72 Bifrost (v6) 3.0 3.1
|
|
Mali G31 Bifrost (v7) 3.0 3.1
|
|
Mali G52 Bifrost (v7) 3.0 3.1
|
|
========= ============ ============ =======
|
|
|
|
Other Midgard and Bifrost chips (T604, T620, T830, T880, G71, G51, G76) may
|
|
work but may be buggy. End users are advised against using Panfrost on
|
|
unsupported hardware. Developers interested in porting will need to allowlist
|
|
the hardware (``src/gallium/drivers/panfrost/pan_screen.c``).
|
|
|
|
Older Mali chips based on the Utgard architecture (Mali 400, Mali 450) are
|
|
supported in the Lima driver, not Panfrost. Lima is also available in Mesa.
|
|
|
|
Work to enable OpenGL ES 3.1 and OpenGL 3.1 is on-going for architectures v5
|
|
and later (Mali T760 and newer).
|
|
|
|
Other graphics APIs (Vulkan, OpenCL) are not supported at this time.
|
|
|
|
Building
|
|
--------
|
|
|
|
Panfrost's OpenGL support is a Gallium driver. Since Mali GPUs are
|
|
3D-only and do not include a display controller, Mesa must be
|
|
additionally built with kmsro support which supports a number of display
|
|
controllers commonly paired with Mali GPUs. If your board with a Panfrost
|
|
supported GPU has a display controller with mainline Linux support not
|
|
supported by kmsro, it's easy to add support, see the commit
|
|
``cff7de4bb597e9`` as an example.
|
|
|
|
LLVM is *not* required by Panfrost's compilers. LLVM support in Mesa can
|
|
safely be disabled for most OpenGL ES users with Panfrost.
|
|
|
|
Build with meson like ``meson . build/ -Ddri-drivers= -Dvulkan-drivers=
|
|
-Dgallium-drivers=panfrost,kmsro -Dllvm=false`` for a build directory
|
|
``build``.
|
|
|
|
Building for Android via the legacy ``Android.mk`` system is not officially
|
|
supported but reportedly works. Your mileage may vary.
|
|
|
|
For general information on building Mesa, read :doc:`the install documentation
|
|
<../install>`.
|
|
|
|
Chat
|
|
----
|
|
|
|
Panfrost developers and users hang out on IRC at ``#panfrost`` on Freenode.
|