⚠️ Automated build from Mesa
main: checked by CI, not tested on a device.
| Mesa | |
|---|---|
| Commit | 6384fd6
|
| Commit title | Revert "rusticl: support cl_khr_icd_unloadable" |
| Vulkan version | Vulkan 1.4.367 |
| Date | 2026-11-08 |
Downloads
| Driver | GPUs | X11 / AdrenoTools | Bannerlator Wayland | Linux runtime |
|---|---|---|---|---|
| Standard | Adreno 6xx / 7xx (8 Gen 3 and older) | Turnip-v27.0.0-20261108-r2.zip
| Turnip-v27.0.0-20261108-r2-Wayland.zip
| Turnip-v27.0.0-20261108-r2-Linux.zip
|
| A8xx (experimental) | Adreno 810 / 812 / 825 / 829 / 830 / 840 (8 Elite) | Turnip-v27.0.0-20261108-r2-A8xx.zip
| Turnip-v27.0.0-20261108-r2-A8xx-Wayland.zip
| Turnip-v27.0.0-20261108-r2-A8xx-Linux.zip
|
| A710 / A720 / A722 (experimental, untested on hardware) | Adreno 710 / 720 / 722 | Turnip-v27.0.0-20261108-r2-710-720-Test.zip
| Turnip-v27.0.0-20261108-r2-710-720-Test-Wayland.zip
| Turnip-v27.0.0-20261108-r2-710-720-Test-Linux.zip
|
| 8 Gen 2 One UI | Adreno 740 (8 Gen 2) with UI flicker, e.g. Samsung One UI | Turnip-v27.0.0-20261108-r2-8G2-OneUI.zip
| Turnip-v27.0.0-20261108-r2-8G2-OneUI-Wayland.zip
| Turnip-v27.0.0-20261108-r2-8G2-OneUI-Linux.zip
|
| Banners-AIO (all SoC) | Every Adreno: 6xx, 7xx, 710 / 720 / 722, 8xx | Turnip-v27.0.0-20261108-r2-Banners-AIO.zip
| Turnip-v27.0.0-20261108-r2-Banners-AIO-Wayland.zip
| Turnip-v27.0.0-20261108-r2-Banners-AIO-Linux.zip
|
Which one?
- X11 (Bannerlator, Winlator, BannerHub, any AdrenoTools app): import the normal zip as a GPU driver. Not sure which driver? Use Standard.
- Banners-AIO: one zip for every Adreno. Each GPU family keeps its own changes: the A8xx recipe only on A8xx chips, the A722 registers only on the A722. Its recipe was tested on an Adreno 830, 750 and 722 before it joined these builds; each hourly build is still only checked by CI.
- Bannerlator Wayland containers: Import Wayland game driver (.zip), then pick the
-Waylandzip. - Bannerlator Linux runtime (gamescope + the native ARM64 Steam client): the
-Linuxzip. It is a glibc Vulkan ICD and it is what draws the client and every game the client launches (needs glibc 2.38 or newer). It is not an AdrenoTools driver and it does not load in a Wine container; the Android zip still puts the finished frame on the screen.
Tips: A8xx: TU_DEBUG=sysmem if an A830 looks glitchy, TU_DEBUG=deck_emu if a game won't start. A710 / A720 / A722: TU_DEBUG=sysmem (in Winlator also WRAPPER_BLIT=1). 8 Gen 2 One UI: only if the Standard driver makes the phone's UI glitch or flicker; on other 8 Gen 2 devices it causes that glitch. The same switch without changing driver: FD_DEV_FEATURES=enable_tp_ubwc_flag_hint=1.
What's in each driver
Tap a driver to see which GPUs it is for, what it changes on top of Mesa, where each change came from and who wrote it.
Every driver: what all five share
main at 6384fd6 (2026-11-08), built for KGSL.
1da50a1b, MR 44838). See SOURCE.
apply_common.sh, not in Mesa yet): MIO: Memories in Orbit and UNCHARTED: Legacy of Thieves Collection turn on tu_enable_ssbo_emulation on Adreno 7xx, so their large storage buffers work (MIO report). The option itself is Mesa's, by Job Noorman. With other Turnip builds from after 2026-06-10, set tu_enable_ssbo_emulation=true yourself.
Standard: Adreno 6xx / 7xx (8 Gen 3 and older)
main plus Every driver above. No GPU-specific patches, no mesh shaders, no wave32.
A8xx: Adreno 8xx (Snapdragon 8 Elite)
a8xx_gen8.patch: whitebelyash's turnip/gen8 stack (mesa-unified): A8xx GPU entries, UBWC gralloc detection, the disable_gmem property, the Steam Deck spoof (TU_DEBUG=deck_emu), A810 / A812 fixes. Commits and authors:
a8xx_shared_mem.py: compute shared memory 32 → 64 KiB on every entry (whitebelyash, dcbb41b2). Known: Vulkan conformance tests above 32 KiB fail on an Adreno 830; Banners-AIO keeps 32 KiB.
a8xx_no_double_threadsize.py: keeps Mesa's supports_double_threadsize = False for A8xx. DVD's "update a8xx family configs" commit above turns it on, and then subgroup math in compute shaders (subgroupAdd, shuffle, ballot, …) returns wrong results on an Adreno 830; with Mesa's value the same tests pass and speed is unchanged (Banners-Turnip, 2026-11-05).
0001-tu-Emulate-VK_EXT_mesh_shader-with-compute.patch mesh shaders emulated with compute and 0002-tu-ir3-Support-a-required-subgroup-size-of-half-a-wa.patch wave32 (DirectX 12 Ultimate games such as FINAL FANTASY VII REBIRTH and Alan Wake 2); 0003-ir3-Sanitize-cube-map-directions-on-A8XX.patch, 0004-tu-Invalidate-bindless-descriptors-through-the-A8XX-.patch, 0005-tu-kgsl-Fetch-A8XX-command-streams-through-a-virtual.patch three GPU hang fixes. His IB cache (0006) is left out: it broke the Linux driver on some Adreno 840s.
TU_DEBUG=sysmem if an A830 looks glitchy, TU_DEBUG=deck_emu if a game won't start.
A710 / A720 / A722: Adreno 710 / 720 / 722
main itself (upstream since September 2026).
a710-720.py: swaps Mesa's A730-based A722 entry for Vauzi-17/710's registers captured on real A722 hardware (num_ccu = 2). Credit: Vauzi-17.
01-u_gralloc-always-use-ubwc-detection.patch: UBWC gralloc fix (whitebelyash), as shipped in Vauzi-17/710's releases.
TU_DEBUG=sysmem; in Winlator also WRAPPER_BLIT=1.
8 Gen 2 One UI: Adreno 740 on newer firmware
8g2_oneui.py (Banners-Turnip): turns on enable_tp_ubwc_flag_hint for the Adreno 740, to match newer system drivers such as Samsung One UI. Mesa leaves it off to match the older system driver.
FD_DEV_FEATURES=enable_tp_ubwc_flag_hint=1.
Banners-AIO: every Adreno, one driver
libvulkan_freedreno.so for every Adreno; Turnip picks each GPU's settings by chip ID. one_gpu_gates.py (Banners-Turnip) keeps the A8xx-wide changes on A8xx chips, so every other GPU behaves as in its own driver here. Compute shared memory is 32 KiB on every GPU.
turnip/gen8 stack and Max's WinNative 0001-0005 as in the A8xx driver (without the 64 KiB script, with a8xx_no_double_threadsize.py); LRZ controls reset after the end-of-pass flush (Gustash); buffer descriptors of 1 GiB and more keep their size (airidosas252, now also in Mesa); RB_RESOLVE_CR_CNTL and LRZ color mask as the Qualcomm driver (adapted from Vauzi-17/710); extra chip IDs for the A829, A845 and A850, and no category-4 repeat on the A845 / A850 (misakayuuki); GMEM off on the A810 and A829.
one_fixes.py and SOURCE.md. Its recipe was tested on an Adreno 830, 750 and 722 before it joined these builds.
Build details and checksums
kgsl-drm-node.patch and kgsl-no-calibrated-timestamps.patch. They ship the ICD and its manifest only: the libraries are the runtime's own. CI checks each one.
File
SHA-256
Turnip-v27.0.0-20261108-r2.zip
0b557c839f90ab467736cef79b01112290bba28fcfc6cf7926c6e84782b52f68
Turnip-v27.0.0-20261108-r2-Wayland.zip
55dcf9f88282028a1b56625f88a3bfaa9eb0f9a26ad6f5e08a1ef2915cd4ea8f
Turnip-v27.0.0-20261108-r2-Linux.zip
1ca31b2cea2a5b71221824ef04ba3d2ffa72a234351f2b707ede7e073601b107
Turnip-v27.0.0-20261108-r2-A8xx.zip
ba8937b9a1bf8c272f79f8c931026466cd75e3d5eb4aec58853ac4c1236bf12e
Turnip-v27.0.0-20261108-r2-A8xx-Wayland.zip
474e9e0be056f8923ae3ae8ced80deef6aa06f9eed76b817f03a296349987ae7
Turnip-v27.0.0-20261108-r2-A8xx-Linux.zip
67554d968b9de38fd3ed1f89fd39d6ec1675b459dc6965bed1a00de2180c2db6
Turnip-v27.0.0-20261108-r2-710-720-Test.zip
871c73dd1ebfde08e84f08e2a45edd060a0ade310f2f81ac0a78c84c1b50a802
Turnip-v27.0.0-20261108-r2-710-720-Test-Wayland.zip
7ba2cabce845ed55a6490a7277cfbd1ea495ba6a7da8cbf8cc7b7185856cfb28
Turnip-v27.0.0-20261108-r2-710-720-Test-Linux.zip
dbb2e8b4b742e6ace7c8db5a96ee70ef029faedac06856e4b3e6a6241c5bac80
Turnip-v27.0.0-20261108-r2-8G2-OneUI.zip
29e704dcfca7d2e978ca8420c5479a2f5bdac115824f4f710c019314c8eab8ab
Turnip-v27.0.0-20261108-r2-8G2-OneUI-Wayland.zip
a73f08f1bbae2517975199c9d938cbc0deb886f94cd8cc253f1fef3eb8287186
Turnip-v27.0.0-20261108-r2-8G2-OneUI-Linux.zip
1cf8763575f1896a001143ab1e7679eb36ca2875d5c028e4ec153b113c6418ff
Turnip-v27.0.0-20261108-r2-Banners-AIO.zip
469f400030b9c9c77f37e6f556df0b806411b8d4b554f0feeac9e96f5dd1d9d5
Turnip-v27.0.0-20261108-r2-Banners-AIO-Wayland.zip
dc2fe0106e0952dbcc2b4310d263f34dd55075024df68e8c524ee0160e96773d
Turnip-v27.0.0-20261108-r2-Banners-AIO-Linux.zip
7d89fb1dfb046107670ded0ce7d91a184ddb89e83594a95360ad7ec140c39344
Names files
symbols-<build ID>.tsv.gz: function names and Mesa source lines of the Android drivers above, for the source-code view in DriverLab. Not needed to use the drivers.