⚠️ Automated build from Mesa
main: checked by CI, not tested on a device.
| Mesa | |
|---|---|
| Commit | 2648b20
|
| Commit title | freedreno/a5xx: program the guard band and ignore the viewport clip codes |
| Vulkan version | Vulkan 1.4.367 |
| Date | 2026-11-07 |
Downloads
| Driver | GPUs | X11 / AdrenoTools | Bannerlator Wayland | Linux runtime |
|---|---|---|---|---|
| Standard | Adreno 6xx / 7xx (8 Gen 3 and older) | Turnip-v27.0.0-20261107-r3.zip
| Turnip-v27.0.0-20261107-r3-Wayland.zip
| Turnip-v27.0.0-20261107-r3-Linux.zip
|
| A8xx (experimental) | Adreno 810 / 812 / 825 / 829 / 830 / 840 (8 Elite) | Turnip-v27.0.0-20261107-r3-A8xx.zip
| Turnip-v27.0.0-20261107-r3-A8xx-Wayland.zip
| Turnip-v27.0.0-20261107-r3-A8xx-Linux.zip
|
| A710 / A720 / A722 (experimental, untested on hardware) | Adreno 710 / 720 / 722 | Turnip-v27.0.0-20261107-r3-710-720-Test.zip
| Turnip-v27.0.0-20261107-r3-710-720-Test-Wayland.zip
| Turnip-v27.0.0-20261107-r3-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-20261107-r3-8G2-OneUI.zip
| Turnip-v27.0.0-20261107-r3-8G2-OneUI-Wayland.zip
| Turnip-v27.0.0-20261107-r3-8G2-OneUI-Linux.zip
|
| Banners-AIO (all SoC) | Every Adreno: 6xx, 7xx, 710 / 720 / 722, 8xx | Turnip-v27.0.0-20261107-r3-Banners-AIO.zip
| Turnip-v27.0.0-20261107-r3-Banners-AIO-Wayland.zip
| Turnip-v27.0.0-20261107-r3-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 2648b20 (2026-11-07), 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-20261107-r3.zip
da624c061497021548d84e0c2fc7a0bea340fc8c1bb2386c33701db6fc03c77c
Turnip-v27.0.0-20261107-r3-Wayland.zip
4714e0342c18bfd47feb6301a2628121e8cdfcb2904f747ce9db6bd4ac36bc60
Turnip-v27.0.0-20261107-r3-Linux.zip
cd54c99a23a9d5b9bed351bf25ad5f87a0ef8bffe599b3cd4b1b093dd383c79b
Turnip-v27.0.0-20261107-r3-A8xx.zip
6a64d89b80e6f61a948d7b13e2f8f86445fe51f246dc16f5193f6a315bf150dc
Turnip-v27.0.0-20261107-r3-A8xx-Wayland.zip
4be3942576668fc222bebf371f9d8b261eee01a98f8308e8ab8c9f53e5b3c8a8
Turnip-v27.0.0-20261107-r3-A8xx-Linux.zip
f7939d227a53324b1faddb546066367a720331436b6bdc361c653cd5fa0b6841
Turnip-v27.0.0-20261107-r3-710-720-Test.zip
6c2e8d44e02a8feb08806f5df5d7374bf9e4882daeb5e7d7b2f25adf5ccd4afc
Turnip-v27.0.0-20261107-r3-710-720-Test-Wayland.zip
5786099221346783da8bfc829ee1d8bf0a21402482d4b2bb035c595fa3491a10
Turnip-v27.0.0-20261107-r3-710-720-Test-Linux.zip
4d235a5f4b58d6d375e31cf6800794a7465e28e0e54b19c18828c18c472041df
Turnip-v27.0.0-20261107-r3-8G2-OneUI.zip
5980501390820121d0384b12f5598e7daae2ed0c9613a3a5e784550345ceb170
Turnip-v27.0.0-20261107-r3-8G2-OneUI-Wayland.zip
f28d1440c9d7a3aea0388ab502de33594cc64c74ff0e04e9019e986d3939a13e
Turnip-v27.0.0-20261107-r3-8G2-OneUI-Linux.zip
9e5b06b0d367a14650b5e3b235f297ea4784242c08bed2d5ddc19998addcf4e9
Turnip-v27.0.0-20261107-r3-Banners-AIO.zip
ccb13f79ecef3803f055d351feca7f4d0a5d59a3bd6ae15098793e469cbfb0e7
Turnip-v27.0.0-20261107-r3-Banners-AIO-Wayland.zip
2ffbf2f06df9239337259821b4f93cb5142c6e791e8da42fe7ba45da49df3e40
Turnip-v27.0.0-20261107-r3-Banners-AIO-Linux.zip
9680c0440b789cabd9b1a1555371203941094f2c8312b0c463f4e8c45e858b33
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.