3D Acceleration
GPU | Used in | Driver | Issues |
---|---|---|---|
Adreno | Qualcomm | freedreno | |
Vivante | HiSilicon, Marvell, NXP i.MX, Rockchip | etnaviv | |
Mali | Allwinner, Exynos, HiSilicon, Intel, MediaTek, Rockchip, Spreadtrum, ST-Ericsson, WonderMedia | lima | |
Mali T/G | Allwinner, Exynos, HiSilicon, Intel, MediaTek, Rockchip, Spreadtrum | panfrost | |
PowerVR | Allwinner, Apple, Exynos, Intel, MediaTek, Rockchip, Spreadtrum, TI OMAP | sgx-ddk, openpvrsgx | |
Tegra 2/3/4 | Nvidia | grate | |
Tegra K1/X1 | Nvidia | nouveau | |
VideoCore IV | Broadcom | vc4 | |
VideoCore V/VI | Broadcom | v3d |
Adreno
Vivante
Mali
There are two projects for open source Mali drivers.
The lima driver is for the Mali Utgard GPUs, specifically the Mali 400 (2008) and the Mali 450 (2012)
The panfrost drivers is for the Mali Midgard and Bifrost GPUs, except T604, T628 and G71.
Mali T720 and older are limited to OpenGL 2.1 and OpenGL ES 2.0.
Mali T628
We have patched linux-postmarketos-exynos5 kernel, but it also needs mesa patched with this:
diff --git a/src/panfrost/lib/pan_props.c b/src/panfrost/lib/pan_props.c
index 5884a826..22d610a8 100644
--- a/src/panfrost/lib/pan_props.c
+++ b/src/panfrost/lib/pan_props.c
@@ -53,6 +53,7 @@
/* Table of supported Mali GPUs */
const struct panfrost_model panfrost_model_list[] = {
+ MODEL(0x620, "T620", "T62x", NO_ANISO, {}),
MODEL(0x720, "T720", "T72x", NO_ANISO, { .no_hierarchical_tiling = true }),
MODEL(0x750, "T760", "T76x", NO_ANISO, {}),
MODEL(0x820, "T820", "T82x", NO_ANISO, { .no_hierarchical_tiling = true }),
PowerVR
The required blobs and a patched Mesa are packaged in pmaports.
Tegra
The opensource reverse-engineered driver for Tegra GPUs is Grate (anagram of "tegra"). It seems to work with Tegra 2, 3 and 4 GPUs
The newer Tegra K1 and X1 use an 3D core that can be used with Nouveau instead with a seperate tegra display driver to handle the I/O
VideoCore
There are two projects for open source VideoCore drivers.
The vc4 driver is for Broadcom VideoCore IV GPUs.
The v3d driver is for Broadcom VideoCore V and VideoCore VI GPUs.